fujimoto 0.10.0__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.
Files changed (45) hide show
  1. fujimoto-0.10.0/.github/workflows/pre-commit.yml +16 -0
  2. fujimoto-0.10.0/.github/workflows/release.yml +53 -0
  3. fujimoto-0.10.0/.github/workflows/tests.yml +51 -0
  4. fujimoto-0.10.0/.gitignore +15 -0
  5. fujimoto-0.10.0/.pre-commit-config.yaml +25 -0
  6. fujimoto-0.10.0/.python-version +1 -0
  7. fujimoto-0.10.0/CLAUDE.md +623 -0
  8. fujimoto-0.10.0/CONTRIBUTING.md +306 -0
  9. fujimoto-0.10.0/LICENSE +21 -0
  10. fujimoto-0.10.0/PKG-INFO +519 -0
  11. fujimoto-0.10.0/README.md +491 -0
  12. fujimoto-0.10.0/noxfile.py +50 -0
  13. fujimoto-0.10.0/pyproject.toml +79 -0
  14. fujimoto-0.10.0/src/fujimoto/__init__.py +0 -0
  15. fujimoto-0.10.0/src/fujimoto/claude/__init__.py +53 -0
  16. fujimoto-0.10.0/src/fujimoto/claude/log_parser.py +549 -0
  17. fujimoto-0.10.0/src/fujimoto/claude/search.py +421 -0
  18. fujimoto-0.10.0/src/fujimoto/cli.py +4008 -0
  19. fujimoto-0.10.0/src/fujimoto/config.py +192 -0
  20. fujimoto-0.10.0/src/fujimoto/git.py +160 -0
  21. fujimoto-0.10.0/src/fujimoto/project_config.py +287 -0
  22. fujimoto-0.10.0/src/fujimoto/session_state.py +159 -0
  23. fujimoto-0.10.0/src/fujimoto/settings.py +38 -0
  24. fujimoto-0.10.0/src/fujimoto/templates/__init__.py +0 -0
  25. fujimoto-0.10.0/src/fujimoto/templates/fujimoto.yaml.template +83 -0
  26. fujimoto-0.10.0/src/fujimoto/terminal.py +128 -0
  27. fujimoto-0.10.0/src/fujimoto/tmux.py +540 -0
  28. fujimoto-0.10.0/src/fujimoto/version.py +9 -0
  29. fujimoto-0.10.0/src/fujimoto/version_check.py +131 -0
  30. fujimoto-0.10.0/src/fujimoto/vscode.py +29 -0
  31. fujimoto-0.10.0/tests/__init__.py +0 -0
  32. fujimoto-0.10.0/tests/test_claude_log.py +902 -0
  33. fujimoto-0.10.0/tests/test_claude_search.py +511 -0
  34. fujimoto-0.10.0/tests/test_cli.py +6697 -0
  35. fujimoto-0.10.0/tests/test_config.py +365 -0
  36. fujimoto-0.10.0/tests/test_git.py +383 -0
  37. fujimoto-0.10.0/tests/test_project_config.py +501 -0
  38. fujimoto-0.10.0/tests/test_session_state.py +216 -0
  39. fujimoto-0.10.0/tests/test_settings.py +57 -0
  40. fujimoto-0.10.0/tests/test_terminal.py +169 -0
  41. fujimoto-0.10.0/tests/test_tmux.py +840 -0
  42. fujimoto-0.10.0/tests/test_version.py +17 -0
  43. fujimoto-0.10.0/tests/test_version_check.py +157 -0
  44. fujimoto-0.10.0/tests/test_vscode.py +35 -0
  45. fujimoto-0.10.0/uv.lock +722 -0
@@ -0,0 +1,16 @@
1
+ name: pre-commit
2
+
3
+ on:
4
+ pull_request:
5
+ branches: [main]
6
+
7
+ jobs:
8
+ pre-commit:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+
13
+ - uses: astral-sh/setup-uv@v5
14
+
15
+ - name: Run pre-commit
16
+ uses: j178/prek-action@v1
@@ -0,0 +1,53 @@
1
+ name: release
2
+
3
+ on:
4
+ push:
5
+ tags: ["v*"]
6
+
7
+ jobs:
8
+ build:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ with:
13
+ fetch-depth: 0 # hatch-vcs needs tags to derive the version
14
+
15
+ - uses: astral-sh/setup-uv@v5
16
+
17
+ - name: Build sdist and wheel
18
+ run: uv build
19
+
20
+ - uses: actions/upload-artifact@v4
21
+ with:
22
+ name: dist
23
+ path: dist/
24
+
25
+ publish-testpypi:
26
+ needs: build
27
+ runs-on: ubuntu-latest
28
+ environment: testpypi
29
+ permissions:
30
+ id-token: write
31
+ steps:
32
+ - uses: actions/download-artifact@v4
33
+ with:
34
+ name: dist
35
+ path: dist/
36
+
37
+ - uses: pypa/gh-action-pypi-publish@release/v1
38
+ with:
39
+ repository-url: https://test.pypi.org/legacy/
40
+
41
+ publish-pypi:
42
+ needs: publish-testpypi
43
+ runs-on: ubuntu-latest
44
+ environment: pypi
45
+ permissions:
46
+ id-token: write
47
+ steps:
48
+ - uses: actions/download-artifact@v4
49
+ with:
50
+ name: dist
51
+ path: dist/
52
+
53
+ - uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,51 @@
1
+ name: tests
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+ permissions:
13
+ contents: write
14
+ strategy:
15
+ fail-fast: false
16
+ matrix:
17
+ python-version: ["3.11", "3.12", "3.13", "3.14"]
18
+ steps:
19
+ - uses: actions/checkout@v4
20
+ with:
21
+ fetch-depth: 0 # hatch-vcs needs tags to derive the version
22
+
23
+ - uses: astral-sh/setup-uv@v5
24
+
25
+ - name: Install Python ${{ matrix.python-version }}
26
+ run: uv python install ${{ matrix.python-version }}
27
+
28
+ - name: Install dependencies
29
+ run: uv sync --python ${{ matrix.python-version }}
30
+
31
+ - name: Run tests
32
+ run: uv run --python ${{ matrix.python-version }} nox -s tests-${{ matrix.python-version }} -- --cov-report=json:coverage.json
33
+
34
+ - name: Generate coverage badge
35
+ if: github.ref == 'refs/heads/main' && matrix.python-version == '3.13'
36
+ run: |
37
+ COVERAGE=$(uv run python -c "import json; print(int(json.load(open('coverage.json'))['totals']['percent_covered_display']))")
38
+ uvx anybadge --value="$COVERAGE" --suffix="%" --file=coverage.svg --label=coverage \
39
+ --overwrite 50=red 60=orange 70=yellow 80=green 90=brightgreen
40
+
41
+ - name: Publish badge
42
+ if: github.ref == 'refs/heads/main' && matrix.python-version == '3.13'
43
+ run: |
44
+ cp coverage.svg /tmp/coverage.svg
45
+ git config user.name "github-actions[bot]"
46
+ git config user.email "github-actions[bot]@users.noreply.github.com"
47
+ git fetch origin badges:badges 2>/dev/null && git checkout badges || { git checkout --orphan badges && git rm -rf . ; }
48
+ cp /tmp/coverage.svg coverage.svg
49
+ git add coverage.svg
50
+ git commit -m "Update coverage badge" || true
51
+ git push origin badges --force
@@ -0,0 +1,15 @@
1
+ # Python-generated files
2
+ __pycache__/
3
+ *.py[oc]
4
+ build/
5
+ dist/
6
+ wheels/
7
+ *.egg-info
8
+
9
+ # Virtual environments
10
+ .venv
11
+
12
+ # Coverage
13
+ coverage.xml
14
+ .coverage
15
+ htmlcov/
@@ -0,0 +1,25 @@
1
+ repos:
2
+ - repo: https://github.com/pre-commit/pre-commit-hooks
3
+ rev: v5.0.0
4
+ hooks:
5
+ - id: check-yaml
6
+ - id: trailing-whitespace
7
+ - id: end-of-file-fixer
8
+ - id: no-commit-to-branch
9
+ args: [--branch, main]
10
+
11
+ - repo: https://github.com/astral-sh/ruff-pre-commit
12
+ rev: v0.15.0
13
+ hooks:
14
+ - id: ruff
15
+ args: [--fix]
16
+ - id: ruff-format
17
+
18
+ - repo: local
19
+ hooks:
20
+ - id: ty
21
+ name: ty
22
+ entry: uv run ty check src/
23
+ language: system
24
+ pass_filenames: false
25
+ types: [python]
@@ -0,0 +1 @@
1
+ 3.11