dug-cli 0.1.0__tar.gz → 0.1.2__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 (30) hide show
  1. {dug_cli-0.1.0 → dug_cli-0.1.2}/.github/homebrew/dug-cli.rb +3 -9
  2. {dug_cli-0.1.0 → dug_cli-0.1.2}/.github/workflows/release.yml +47 -8
  3. {dug_cli-0.1.0 → dug_cli-0.1.2}/.github/workflows/update-homebrew.yml +0 -6
  4. {dug_cli-0.1.0 → dug_cli-0.1.2}/PKG-INFO +1 -1
  5. dug_cli-0.1.2/main.py +4 -0
  6. {dug_cli-0.1.0 → dug_cli-0.1.2}/pyproject.toml +1 -1
  7. {dug_cli-0.1.0 → dug_cli-0.1.2}/.github/scoop/dug-cli.json +0 -0
  8. {dug_cli-0.1.0 → dug_cli-0.1.2}/.gitignore +0 -0
  9. {dug_cli-0.1.0 → dug_cli-0.1.2}/.python-version +0 -0
  10. {dug_cli-0.1.0 → dug_cli-0.1.2}/LICENSE +0 -0
  11. {dug_cli-0.1.0 → dug_cli-0.1.2}/README.md +0 -0
  12. {dug_cli-0.1.0 → dug_cli-0.1.2}/RELEASING.md +0 -0
  13. {dug_cli-0.1.0 → dug_cli-0.1.2}/TODO.md +0 -0
  14. {dug_cli-0.1.0 → dug_cli-0.1.2}/install.sh +0 -0
  15. {dug_cli-0.1.0 → dug_cli-0.1.2}/plan.md +0 -0
  16. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/__init__.py +0 -0
  17. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/__main__.py +0 -0
  18. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/chunker.py +0 -0
  19. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/config.py +0 -0
  20. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/embeddings.py +0 -0
  21. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/git_context.py +0 -0
  22. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/graph.py +0 -0
  23. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/history.py +0 -0
  24. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/hooks.py +0 -0
  25. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/indexer.py +0 -0
  26. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/prompt_builder.py +0 -0
  27. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/retriever.py +0 -0
  28. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/vector_store.py +0 -0
  29. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/verifier.py +0 -0
  30. {dug_cli-0.1.0 → dug_cli-0.1.2}/src/dug/watcher.py +0 -0
@@ -10,15 +10,9 @@ class DugCli < Formula
10
10
  homepage "https://github.com/ratishjain12/dug"
11
11
  version "0.1.0"
12
12
 
13
- on_macos do
14
- on_arm do
15
- url "https://github.com/ratishjain12/dug/releases/download/v#{version}/dug-macos-arm64"
16
- sha256 "REPLACE_WITH_ARM64_SHA256"
17
- end
18
- on_intel do
19
- url "https://github.com/ratishjain12/dug/releases/download/v#{version}/dug-macos-amd64"
20
- sha256 "REPLACE_WITH_AMD64_SHA256"
21
- end
13
+ on_arm do
14
+ url "https://github.com/ratishjain12/dug/releases/download/v#{version}/dug-macos-arm64"
15
+ sha256 "REPLACE_WITH_ARM64_SHA256"
22
16
  end
23
17
 
24
18
  def install
@@ -15,6 +15,7 @@ jobs:
15
15
  pypi:
16
16
  name: Publish to PyPI
17
17
  runs-on: ubuntu-latest
18
+ continue-on-error: true # version already on PyPI shouldn't block the GitHub Release
18
19
  steps:
19
20
  - uses: actions/checkout@v4
20
21
 
@@ -44,10 +45,6 @@ jobs:
44
45
  target: macos-arm64
45
46
  bin: dug
46
47
 
47
- - os: macos-13 # Intel (amd64)
48
- target: macos-amd64
49
- bin: dug
50
-
51
48
  - os: ubuntu-latest
52
49
  target: linux-amd64
53
50
  bin: dug
@@ -65,12 +62,14 @@ jobs:
65
62
 
66
63
  - name: Install dependencies + PyInstaller
67
64
  # Install base deps only (no sentence-transformers/openai/torch)
68
- run: uv pip install --system -e "." pyinstaller
65
+ run: |
66
+ uv venv
67
+ uv pip install -e "." pyinstaller
69
68
 
70
69
  - name: Build binary
71
70
  # Exclude heavy ML packages — they auto-install on first use instead
72
71
  run: >
73
- pyinstaller
72
+ uv run pyinstaller
74
73
  --onefile
75
74
  --name dug
76
75
  --collect-submodules dug
@@ -82,7 +81,7 @@ jobs:
82
81
  --exclude-module scipy
83
82
  --exclude-module sklearn
84
83
  --exclude-module openai
85
- src/dug/__main__.py
84
+ main.py
86
85
 
87
86
  - name: Rename binary with target suffix
88
87
  shell: bash
@@ -101,7 +100,7 @@ jobs:
101
100
  # -----------------------------------------------------------------------
102
101
  release:
103
102
  name: Create GitHub Release
104
- needs: [pypi, binaries]
103
+ needs: [binaries]
105
104
  runs-on: ubuntu-latest
106
105
  steps:
107
106
  - uses: actions/checkout@v4
@@ -130,3 +129,43 @@ jobs:
130
129
  dist/*.whl
131
130
  dist/*.tar.gz
132
131
  release/*
132
+
133
+ # -----------------------------------------------------------------------
134
+ # 4. Update Homebrew tap formula
135
+ # -----------------------------------------------------------------------
136
+ update-homebrew:
137
+ name: Update Homebrew Formula
138
+ needs: [release]
139
+ runs-on: ubuntu-latest
140
+ steps:
141
+ - name: Compute SHA256 of macOS arm64 binary
142
+ id: hashes
143
+ run: |
144
+ TAG="${{ github.ref_name }}"
145
+ VERSION="${TAG#v}"
146
+ ARM64_URL="https://github.com/ratishjain12/dug/releases/download/${TAG}/dug-macos-arm64"
147
+ ARM64_SHA=$(curl -fsSL "$ARM64_URL" | sha256sum | cut -d' ' -f1)
148
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
149
+ echo "arm64_sha=$ARM64_SHA" >> $GITHUB_OUTPUT
150
+
151
+ - name: Checkout homebrew-dug repo
152
+ uses: actions/checkout@v4
153
+ with:
154
+ repository: ratishjain12/homebrew-dug
155
+ token: ${{ secrets.HOMEBREW_TAP_TOKEN }}
156
+ path: homebrew-dug
157
+
158
+ - name: Update formula
159
+ run: |
160
+ cd homebrew-dug
161
+ sed -i "s/version \".*\"/version \"${{ steps.hashes.outputs.version }}\"/" Formula/dug-cli.rb
162
+ sed -i "/on_arm/,/end/{s/sha256 \".*\"/sha256 \"${{ steps.hashes.outputs.arm64_sha }}\"/}" Formula/dug-cli.rb
163
+
164
+ - name: Commit and push
165
+ run: |
166
+ cd homebrew-dug
167
+ git config user.name "ratishjain12"
168
+ git config user.email "ratishjain6@gmail.com"
169
+ git add Formula/dug-cli.rb
170
+ git diff --staged --quiet || git commit -m "Update dug-cli to ${{ github.ref_name }}"
171
+ git push
@@ -15,14 +15,11 @@ jobs:
15
15
  VERSION="${TAG#v}"
16
16
 
17
17
  ARM64_URL="https://github.com/ratishjain12/dug/releases/download/${TAG}/dug-macos-arm64"
18
- AMD64_URL="https://github.com/ratishjain12/dug/releases/download/${TAG}/dug-macos-amd64"
19
18
 
20
19
  ARM64_SHA=$(curl -fsSL "$ARM64_URL" | sha256sum | cut -d' ' -f1)
21
- AMD64_SHA=$(curl -fsSL "$AMD64_URL" | sha256sum | cut -d' ' -f1)
22
20
 
23
21
  echo "version=$VERSION" >> $GITHUB_OUTPUT
24
22
  echo "arm64_sha=$ARM64_SHA" >> $GITHUB_OUTPUT
25
- echo "amd64_sha=$AMD64_SHA" >> $GITHUB_OUTPUT
26
23
 
27
24
  - name: Checkout homebrew-dug repo
28
25
  uses: actions/checkout@v4
@@ -36,10 +33,7 @@ jobs:
36
33
  cd homebrew-dug
37
34
  sed -i "s/version \".*\"/version \"${{ steps.hashes.outputs.version }}\"/" Formula/dug-cli.rb
38
35
  sed -i "s/REPLACE_WITH_ARM64_SHA256/${{ steps.hashes.outputs.arm64_sha }}/" Formula/dug-cli.rb
39
- sed -i "s/REPLACE_WITH_AMD64_SHA256/${{ steps.hashes.outputs.amd64_sha }}/" Formula/dug-cli.rb
40
- # Also update existing sha256 lines
41
36
  sed -i "/on_arm/,/end/{s/sha256 \".*\"/sha256 \"${{ steps.hashes.outputs.arm64_sha }}\"/}" Formula/dug-cli.rb
42
- sed -i "/on_intel/,/end/{s/sha256 \".*\"/sha256 \"${{ steps.hashes.outputs.amd64_sha }}\"/}" Formula/dug-cli.rb
43
37
 
44
38
  - name: Commit and push
45
39
  run: |
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dug-cli
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: Dig into any bug with full codebase context — zero LLM calls
5
5
  Project-URL: Homepage, https://github.com/ratishjain12/dug
6
6
  Project-URL: Repository, https://github.com/ratishjain12/dug
dug_cli-0.1.2/main.py ADDED
@@ -0,0 +1,4 @@
1
+ from dug.__main__ import cli
2
+
3
+ if __name__ == "__main__":
4
+ cli()
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "dug-cli"
3
- version = "0.1.0"
3
+ version = "0.1.2"
4
4
  description = "Dig into any bug with full codebase context — zero LLM calls"
5
5
  readme = "README.md"
6
6
  license = { text = "MIT" }
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