code-aide 1.12.1__tar.gz → 1.12.3__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.
- {code_aide-1.12.1 → code_aide-1.12.3}/PKG-INFO +1 -1
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/__init__.py +1 -1
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/config.py +17 -5
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/data/tools.json +1 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/.github/workflows/ci.yml +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/.github/workflows/publish.yml +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/.gitignore +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/.gitlab-ci.yml +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/.pre-commit-config.yaml +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/AGENTS.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/CLAUDE.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/LICENSE +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/README.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/TODO.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/pyproject.toml +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/script-archive/README.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/script-archive/amp-install.sh +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/script-archive/claude-install.sh +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/script-archive/cursor-install.sh +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/specs/auto-migrate-deprecated-installs.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/specs/claude-native-installer-migration.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/specs/missing-coding-llm-cli-tools.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/specs/pre-commit-uv-setup.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/specs/remove-bundled-version-baseline.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/specs/unify-upgrade-eligibility-with-shared-evaluator.md +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/__main__.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/commands_actions.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/commands_tools.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/console.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/constants.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/detection.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/entry.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/install.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/install_types.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/operations.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/prereqs.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/status.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/src/code_aide/versions.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_commands_actions.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_commands_tools.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_config.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_console.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_constants.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_detection.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_install.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_install_types.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_operations.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_status.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/tests/test_versions.py +0 -0
- {code_aide-1.12.1 → code_aide-1.12.3}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-aide
|
|
3
|
-
Version: 1.12.
|
|
3
|
+
Version: 1.12.3
|
|
4
4
|
Summary: Manage AI coding CLI tools (Claude, Copilot, Cursor, Gemini, Amp, Codex)
|
|
5
5
|
Project-URL: Homepage, https://github.com/dajobe/code-aide
|
|
6
6
|
Project-URL: Repository, https://github.com/dajobe/code-aide
|
|
@@ -135,15 +135,27 @@ def save_updated_versions(tools: dict) -> None:
|
|
|
135
135
|
save_versions_cache(cache_data)
|
|
136
136
|
|
|
137
137
|
|
|
138
|
-
def versions_cache_is_fresh() -> bool:
|
|
139
|
-
"""Return True if the versions cache exists
|
|
138
|
+
def versions_cache_is_fresh(tools: dict) -> bool:
|
|
139
|
+
"""Return True if the versions cache exists, is recent, and complete."""
|
|
140
140
|
cache_path = get_versions_cache_path()
|
|
141
141
|
try:
|
|
142
142
|
age = time.time() - os.path.getmtime(cache_path)
|
|
143
|
-
|
|
143
|
+
if age >= CACHE_MAX_AGE_SECONDS:
|
|
144
|
+
return False
|
|
144
145
|
except OSError:
|
|
145
146
|
return False
|
|
146
147
|
|
|
148
|
+
# Check that every versionable tool has latest_version populated.
|
|
149
|
+
for tool_config in tools.values():
|
|
150
|
+
install_type = parse_install_type(tool_config.get("install_type"))
|
|
151
|
+
if install_type == InstallType.NPM:
|
|
152
|
+
if not tool_config.get("latest_version"):
|
|
153
|
+
return False
|
|
154
|
+
elif install_type in (InstallType.SCRIPT, InstallType.DIRECT_DOWNLOAD):
|
|
155
|
+
if tool_config.get("version_url") and not tool_config.get("latest_version"):
|
|
156
|
+
return False
|
|
157
|
+
return True
|
|
158
|
+
|
|
147
159
|
|
|
148
160
|
def refresh_versions_cache(tools: dict) -> None:
|
|
149
161
|
"""Fetch latest versions from upstream and update tools dict in-place.
|
|
@@ -187,6 +199,6 @@ def refresh_versions_cache(tools: dict) -> None:
|
|
|
187
199
|
|
|
188
200
|
|
|
189
201
|
def ensure_versions_cache(tools: dict) -> None:
|
|
190
|
-
"""Refresh versions cache if missing
|
|
191
|
-
if not versions_cache_is_fresh():
|
|
202
|
+
"""Refresh versions cache if missing, stale, or incomplete."""
|
|
203
|
+
if not versions_cache_is_fresh(tools):
|
|
192
204
|
refresh_versions_cache(tools)
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
"install_type": "script",
|
|
30
30
|
"install_url": "https://claude.ai/install.sh",
|
|
31
31
|
"install_sha256": "431889ac7d056f636aaf5b71524666d04c89c45560f80329940846479d484778",
|
|
32
|
+
"version_url": "https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/latest",
|
|
32
33
|
"prerequisites": [],
|
|
33
34
|
"min_node_version": null,
|
|
34
35
|
"next_steps": "Run 'claude' and then use '/login' to authenticate",
|
|
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
|
{code_aide-1.12.1 → code_aide-1.12.3}/specs/unify-upgrade-eligibility-with-shared-evaluator.md
RENAMED
|
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
|
|
File without changes
|
|
File without changes
|