rostree 0.1.0__tar.gz → 0.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rostree-0.1.0 → rostree-0.2.1}/PKG-INFO +16 -2
- {rostree-0.1.0 → rostree-0.2.1}/README.md +12 -1
- {rostree-0.1.0 → rostree-0.2.1}/pyproject.toml +5 -1
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/__init__.py +8 -1
- rostree-0.2.1/src/rostree/cli.py +805 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/tui/app.py +224 -68
- rostree-0.1.0/src/rostree/cli.py +0 -288
- {rostree-0.1.0 → rostree-0.2.1}/.gitignore +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/LICENSE +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/api.py +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/core/__init__.py +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/core/finder.py +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/core/parser.py +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/core/tree.py +0 -0
- {rostree-0.1.0 → rostree-0.2.1}/src/rostree/tui/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rostree
|
|
3
|
-
Version: 0.1
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Explore ROS 2 package dependencies from the command line (CLI, TUI, library)
|
|
5
5
|
Author: rostree contributors
|
|
6
6
|
License: MIT
|
|
@@ -21,9 +21,19 @@ Requires-Dist: black==25.1.0; extra == 'dev'
|
|
|
21
21
|
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
|
|
22
22
|
Requires-Dist: pytest>=7.0; extra == 'dev'
|
|
23
23
|
Requires-Dist: ruff>=0.1.0; extra == 'dev'
|
|
24
|
+
Provides-Extra: viz
|
|
25
|
+
Requires-Dist: matplotlib>=3.7; extra == 'viz'
|
|
26
|
+
Requires-Dist: networkx>=3.0; extra == 'viz'
|
|
24
27
|
Description-Content-Type: text/markdown
|
|
25
28
|
|
|
26
|
-
|
|
29
|
+
```
|
|
30
|
+
██████╗ ██████╗ ███████╗████████╗██████╗ ███████╗███████╗
|
|
31
|
+
██╔══██╗██╔═══██╗██╔════╝╚══██╔══╝██╔══██╗██╔════╝██╔════╝
|
|
32
|
+
██████╔╝██║ ██║███████╗ ██║ ██████╔╝█████╗ █████╗
|
|
33
|
+
██╔══██╗██║ ██║╚════██║ ██║ ██╔══██╗██╔══╝ ██╔══╝
|
|
34
|
+
██║ ██║╚██████╔╝███████║ ██║ ██║ ██║███████╗███████╗
|
|
35
|
+
╚═╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝
|
|
36
|
+
```
|
|
27
37
|
|
|
28
38
|
[](https://github.com/guilyx/rostree/actions/workflows/ci.yml)
|
|
29
39
|
[](https://codecov.io/gh/guilyx/rostree)
|
|
@@ -54,6 +64,10 @@ rostree list --by-source # List packages grouped by source
|
|
|
54
64
|
rostree tree rclpy # Show dependency tree for a package
|
|
55
65
|
rostree tree rclpy --depth 3 # Limit tree depth
|
|
56
66
|
rostree tree rclpy --json # Output as JSON
|
|
67
|
+
rostree graph rclpy --render png # Generate PNG image (requires graphviz)
|
|
68
|
+
rostree graph rclpy --render svg --open # Create SVG and open it
|
|
69
|
+
rostree graph -w ~/ros2_ws --render png # Graph entire workspace to image
|
|
70
|
+
rostree graph rclpy -f mermaid # Mermaid format (text)
|
|
57
71
|
```
|
|
58
72
|
|
|
59
73
|
### TUI mode
|
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
```
|
|
2
|
+
██████╗ ██████╗ ███████╗████████╗██████╗ ███████╗███████╗
|
|
3
|
+
██╔══██╗██╔═══██╗██╔════╝╚══██╔══╝██╔══██╗██╔════╝██╔════╝
|
|
4
|
+
██████╔╝██║ ██║███████╗ ██║ ██████╔╝█████╗ █████╗
|
|
5
|
+
██╔══██╗██║ ██║╚════██║ ██║ ██╔══██╗██╔══╝ ██╔══╝
|
|
6
|
+
██║ ██║╚██████╔╝███████║ ██║ ██║ ██║███████╗███████╗
|
|
7
|
+
╚═╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝
|
|
8
|
+
```
|
|
2
9
|
|
|
3
10
|
[](https://github.com/guilyx/rostree/actions/workflows/ci.yml)
|
|
4
11
|
[](https://codecov.io/gh/guilyx/rostree)
|
|
@@ -29,6 +36,10 @@ rostree list --by-source # List packages grouped by source
|
|
|
29
36
|
rostree tree rclpy # Show dependency tree for a package
|
|
30
37
|
rostree tree rclpy --depth 3 # Limit tree depth
|
|
31
38
|
rostree tree rclpy --json # Output as JSON
|
|
39
|
+
rostree graph rclpy --render png # Generate PNG image (requires graphviz)
|
|
40
|
+
rostree graph rclpy --render svg --open # Create SVG and open it
|
|
41
|
+
rostree graph -w ~/ros2_ws --render png # Graph entire workspace to image
|
|
42
|
+
rostree graph rclpy -f mermaid # Mermaid format (text)
|
|
32
43
|
```
|
|
33
44
|
|
|
34
45
|
### TUI mode
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "rostree"
|
|
3
|
-
version = "0.1
|
|
3
|
+
version = "0.2.1"
|
|
4
4
|
description = "Explore ROS 2 package dependencies from the command line (CLI, TUI, library)"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
@@ -22,6 +22,10 @@ dependencies = [
|
|
|
22
22
|
]
|
|
23
23
|
|
|
24
24
|
[project.optional-dependencies]
|
|
25
|
+
viz = [
|
|
26
|
+
"networkx>=3.0",
|
|
27
|
+
"matplotlib>=3.7",
|
|
28
|
+
]
|
|
25
29
|
dev = [
|
|
26
30
|
"black==25.1.0",
|
|
27
31
|
"pytest>=7.0",
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"""rostree: visualize ROS 2 package dependencies as a tree (library, TUI, CLI)."""
|
|
2
2
|
|
|
3
|
+
from importlib.metadata import version, PackageNotFoundError
|
|
4
|
+
|
|
3
5
|
from rostree.api import (
|
|
4
6
|
build_tree,
|
|
5
7
|
get_package_info,
|
|
@@ -16,5 +18,10 @@ __all__ = [
|
|
|
16
18
|
"list_known_packages_by_source",
|
|
17
19
|
"scan_workspaces",
|
|
18
20
|
"WorkspaceInfo",
|
|
21
|
+
"__version__",
|
|
19
22
|
]
|
|
20
|
-
|
|
23
|
+
|
|
24
|
+
try:
|
|
25
|
+
__version__ = version("rostree")
|
|
26
|
+
except PackageNotFoundError:
|
|
27
|
+
__version__ = "0.0.0+unknown" # Not installed as package
|