forestui 0.9.0__tar.gz → 0.9.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.
- {forestui-0.9.0 → forestui-0.9.1}/CLAUDE.md +11 -19
- {forestui-0.9.0 → forestui-0.9.1}/PKG-INFO +22 -4
- {forestui-0.9.0 → forestui-0.9.1}/README.md +21 -3
- forestui-0.9.1/forestui/__init__.py +9 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/cli.py +3 -0
- {forestui-0.9.0 → forestui-0.9.1}/pyproject.toml +1 -1
- {forestui-0.9.0 → forestui-0.9.1}/uv.lock +1 -1
- forestui-0.9.0/forestui/__init__.py +0 -3
- {forestui-0.9.0 → forestui-0.9.1}/.github/workflows/publish.yml +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/.gitignore +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/.pre-commit-config.yaml +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/.python-version +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/Makefile +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/doc/screenshot_small.png +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/__main__.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/app.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/components/__init__.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/components/messages.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/components/modals.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/components/repository_detail.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/components/sidebar.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/components/worktree_detail.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/models.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/services/__init__.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/services/claude_session.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/services/git.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/services/github.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/services/settings.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/services/tmux.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/state.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/forestui/theme.py +0 -0
- {forestui-0.9.0 → forestui-0.9.1}/install.sh +0 -0
|
@@ -160,31 +160,23 @@ Currently no test suite. When adding tests:
|
|
|
160
160
|
|
|
161
161
|
## Versioning
|
|
162
162
|
|
|
163
|
-
Version is
|
|
164
|
-
```python
|
|
165
|
-
__version__ = "0.1.0"
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
**IMPORTANT:** The `main` branch represents the release. Every feature, fix, or change merged to `main` **must** include a version bump in both files:
|
|
169
|
-
- **Patch** (0.0.X): Bug fixes, dead code removal, minor cleanup
|
|
170
|
-
- **Minor** (0.X.0): New features, enhancements
|
|
171
|
-
- **Major** (X.0.0): Breaking changes
|
|
163
|
+
Version is `0.0.0` in source code. Actual versions are derived from git tags at release time.
|
|
172
164
|
|
|
173
|
-
|
|
165
|
+
### Development
|
|
174
166
|
|
|
175
|
-
|
|
167
|
+
1. Create a branch, make changes
|
|
168
|
+
2. Run `make check` and test locally
|
|
169
|
+
3. Open a PR and merge to `main`
|
|
176
170
|
|
|
177
|
-
|
|
171
|
+
Running from source (`uv run forestui`) shows version `0.0.0` and auto-enables dev mode.
|
|
178
172
|
|
|
179
|
-
|
|
173
|
+
### Releasing
|
|
180
174
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
4. Bump version in both `forestui/__init__.py` and `pyproject.toml`
|
|
185
|
-
5. Commit and push
|
|
175
|
+
```bash
|
|
176
|
+
gh release create v0.9.1 --generate-notes
|
|
177
|
+
```
|
|
186
178
|
|
|
187
|
-
This
|
|
179
|
+
This triggers the publish workflow which builds and publishes to PyPI.
|
|
188
180
|
|
|
189
181
|
## Git Commits
|
|
190
182
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: forestui
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.1
|
|
4
4
|
Summary: A Terminal UI for managing Git worktrees
|
|
5
5
|
Author: cadu
|
|
6
6
|
Keywords: git,terminal,textual,tui,worktree
|
|
@@ -41,13 +41,34 @@ forestui brings the power of Git worktree management to the terminal with a beau
|
|
|
41
41
|
- Python 3.14+
|
|
42
42
|
- tmux
|
|
43
43
|
- uv (for installation)
|
|
44
|
+
- [gh](https://cli.github.com/) (optional, for GitHub integration)
|
|
44
45
|
|
|
45
46
|
## Installing
|
|
46
47
|
|
|
48
|
+
### Quick Install (recommended)
|
|
49
|
+
|
|
50
|
+
Installs [uv](https://github.com/astral-sh/uv) automatically if not present. No Python installation required.
|
|
51
|
+
|
|
47
52
|
```bash
|
|
48
53
|
curl -fsSL https://raw.githubusercontent.com/flipbit03/forestui/main/install.sh | bash
|
|
49
54
|
```
|
|
50
55
|
|
|
56
|
+
### Install via uv
|
|
57
|
+
|
|
58
|
+
If you already have [uv](https://github.com/astral-sh/uv) installed:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
uv tool install forestui
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Updating
|
|
65
|
+
|
|
66
|
+
forestui auto-updates on startup. To manually update:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
uv tool upgrade forestui
|
|
70
|
+
```
|
|
71
|
+
|
|
51
72
|
## Usage
|
|
52
73
|
|
|
53
74
|
```bash
|
|
@@ -57,9 +78,6 @@ forestui
|
|
|
57
78
|
# Start with a custom forest directory
|
|
58
79
|
forestui ~/my-projects
|
|
59
80
|
|
|
60
|
-
# Update to latest version
|
|
61
|
-
forestui --self-update
|
|
62
|
-
|
|
63
81
|
# Show help
|
|
64
82
|
forestui --help
|
|
65
83
|
```
|
|
@@ -20,13 +20,34 @@ forestui brings the power of Git worktree management to the terminal with a beau
|
|
|
20
20
|
- Python 3.14+
|
|
21
21
|
- tmux
|
|
22
22
|
- uv (for installation)
|
|
23
|
+
- [gh](https://cli.github.com/) (optional, for GitHub integration)
|
|
23
24
|
|
|
24
25
|
## Installing
|
|
25
26
|
|
|
27
|
+
### Quick Install (recommended)
|
|
28
|
+
|
|
29
|
+
Installs [uv](https://github.com/astral-sh/uv) automatically if not present. No Python installation required.
|
|
30
|
+
|
|
26
31
|
```bash
|
|
27
32
|
curl -fsSL https://raw.githubusercontent.com/flipbit03/forestui/main/install.sh | bash
|
|
28
33
|
```
|
|
29
34
|
|
|
35
|
+
### Install via uv
|
|
36
|
+
|
|
37
|
+
If you already have [uv](https://github.com/astral-sh/uv) installed:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
uv tool install forestui
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Updating
|
|
44
|
+
|
|
45
|
+
forestui auto-updates on startup. To manually update:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
uv tool upgrade forestui
|
|
49
|
+
```
|
|
50
|
+
|
|
30
51
|
## Usage
|
|
31
52
|
|
|
32
53
|
```bash
|
|
@@ -36,9 +57,6 @@ forestui
|
|
|
36
57
|
# Start with a custom forest directory
|
|
37
58
|
forestui ~/my-projects
|
|
38
59
|
|
|
39
|
-
# Update to latest version
|
|
40
|
-
forestui --self-update
|
|
41
|
-
|
|
42
60
|
# Show help
|
|
43
61
|
forestui --help
|
|
44
62
|
```
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"""forestui - A Terminal UI for managing Git worktrees."""
|
|
2
|
+
|
|
3
|
+
from importlib.metadata import PackageNotFoundError, version
|
|
4
|
+
|
|
5
|
+
try:
|
|
6
|
+
__version__ = version("forestui")
|
|
7
|
+
except PackageNotFoundError:
|
|
8
|
+
# Package not installed (running from source without install)
|
|
9
|
+
__version__ = "0.0.0"
|
|
@@ -147,6 +147,9 @@ def main(
|
|
|
147
147
|
|
|
148
148
|
FOREST_PATH: Optional path to forest directory (default: ~/forest)
|
|
149
149
|
"""
|
|
150
|
+
# Auto-enable dev mode when running from source (version 0.0.0)
|
|
151
|
+
dev_mode = dev_mode or __version__ == "0.0.0"
|
|
152
|
+
|
|
150
153
|
ensure_tmux(forest_path, debug_mode, no_self_update, dev_mode)
|
|
151
154
|
|
|
152
155
|
if debug_mode:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|