Skip to content

Commit 1258068

Browse files
fix: support textual >=0.25 (#145)
* [pre-commit.ci] pre-commit autoupdate updates: - [github.com/charliermarsh/ruff-pre-commit: v0.0.267 → v0.0.272](astral-sh/ruff-pre-commit@v0.0.267...v0.0.272) - [github.com/codespell-project/codespell: v2.2.4 → v2.2.5](codespell-project/codespell@v2.2.4...v2.2.5) * fix: bug with textual 0.25+ Signed-off-by: Henry Schreiner <[email protected]> * chore: fix typing for latest textual Signed-off-by: Henry Schreiner <[email protected]> * Update ci.yml --------- Signed-off-by: Henry Schreiner <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Henry Schreiner <[email protected]>
1 parent a80297d commit 1258068

File tree

4 files changed

+18
-15
lines changed

4 files changed

+18
-15
lines changed

.github/workflows/ci.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ jobs:
2626
checks:
2727
name: Check Python ${{ matrix.python-version }} on ${{ matrix.runs-on }}
2828
runs-on: ${{ matrix.runs-on }}
29-
needs: [pre-commit]
3029
strategy:
3130
fail-fast: false
3231
matrix:

.pre-commit-config.yaml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ repos:
1919
- id: trailing-whitespace
2020

2121
- repo: https://github.com/charliermarsh/ruff-pre-commit
22-
rev: "v0.0.267"
22+
rev: "v0.0.272"
2323
hooks:
2424
- id: ruff
2525
args: ["--fix", "--show-fixes"]
@@ -29,10 +29,15 @@ repos:
2929
hooks:
3030
- id: mypy
3131
files: src
32-
additional_dependencies: [rich>=12, click>=8.1.1, hist, numpy, textual>=0.24]
32+
additional_dependencies:
33+
- rich>=12
34+
- click>=8.1.1
35+
- hist
36+
- numpy
37+
- textual>=0.27
3338

3439
- repo: https://github.com/codespell-project/codespell
35-
rev: v2.2.4
40+
rev: v2.2.5
3641
hooks:
3742
- id: codespell
3843
args: [-L, "hist,iterm"]

src/uproot_browser/tui/browser.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
)
5050

5151

52-
class Browser(textual.app.App[None]):
52+
class Browser(textual.app.App[object]):
5353
"""A basic implementation of the uproot-browser TUI"""
5454

5555
CSS_PATH = "browser.css"

src/uproot_browser/tui/left_panel.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -57,15 +57,14 @@ def render_label(
5757

5858
def on_mount(self) -> None:
5959
self.load_directory(self.root)
60+
self.root.expand()
6061

6162
def load_directory(self, node: textual.widgets.tree.TreeNode[UprootEntry]) -> None:
6263
assert node.data
6364
if not node.children:
6465
children = node.data.children
6566
for child in children:
6667
node.add(child.path, child)
67-
node.expand()
68-
self.refresh(layout=True)
6968

7069
def on_tree_node_selected(
7170
self, event: textual.widgets.Tree.NodeSelected[UprootEntry]
@@ -89,19 +88,19 @@ def _node_expanded(
8988
self, node: textual.widgets.tree.TreeNode[UprootEntry]
9089
) -> textual.widgets.Tree.NodeExpanded[UprootEntry]:
9190
try:
92-
return self.NodeExpanded(self, node)
93-
except TypeError: # textual < 0.24
94-
# pylint: disable-next=(no-value-for-parameter)
95-
return self.NodeExpanded(node) # type:ignore[call-arg,arg-type]
91+
return self.NodeExpanded(node)
92+
except TypeError: # textual 0.24-0.26
93+
# pylint: disable-next=too-many-function-args
94+
return self.NodeExpanded(self, node) # type:ignore[call-arg,arg-type]
9695

9796
def _node_collapsed(
9897
self, node: textual.widgets.tree.TreeNode[UprootEntry]
9998
) -> textual.widgets.Tree.NodeCollapsed[UprootEntry]:
10099
try:
101-
return self.NodeCollapsed(self, node)
102-
except TypeError: # textual < 0.24
103-
# pylint: disable-next=(no-value-for-parameter)
104-
return self.NodeCollapsed(node) # type:ignore[call-arg,arg-type]
100+
return self.NodeCollapsed(node)
101+
except TypeError: # textual 0.24-0.26
102+
# pylint: disable-next=too-many-function-args
103+
return self.NodeCollapsed(self, node) # type:ignore[call-arg,arg-type]
105104

106105
def action_cursor_in(self) -> None:
107106
node = self.cursor_node

0 commit comments

Comments
 (0)