aider-vision-core 0.90.8.dev0__tar.gz → 0.90.9.dev1__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.
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/PKG-INFO +1 -1
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/_version.py +3 -3
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/event_io.py +24 -3
- aider_vision_core-0.90.9.dev1/aider_vision_core/gui_progress.py +94 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/http_api.py +2 -2
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/repomap.py +32 -25
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/session.py +7 -0
- aider_vision_core-0.90.9.dev1/aider_vision_core/vision_runtime.py +127 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/vision_serve.py +3 -3
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/waiting.py +8 -1
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/PKG-INFO +1 -1
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/SOURCES.txt +4 -0
- aider_vision_core-0.90.9.dev1/scripts/audit_rename_compat.py +89 -0
- aider_vision_core-0.90.9.dev1/tests/basic/test_vision_runtime.py +43 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.dockerignore +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.flake8 +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/check_pypi_version.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/docker-build-test.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/docker-release.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/issues.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/pages.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/pre-commit.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/release.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/ubuntu-tests.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/windows-tests.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.github/workflows/windows_check_pypi_version.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.gitignore +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/.pre-commit-config.yaml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/CNAME +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/CONTRIBUTING.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/HISTORY.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/LICENSE.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/MANIFEST.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/README.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/__main__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/analytics.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/args.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/args_formatter.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/cli_serve.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/architect_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/architect_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/ask_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/ask_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/base_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/base_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/chat_chunks.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/context_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/context_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editblock_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editblock_fenced_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editblock_fenced_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editblock_func_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editblock_func_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editblock_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editor_diff_fenced_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editor_diff_fenced_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editor_editblock_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editor_editblock_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editor_whole_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/editor_whole_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/help_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/help_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/patch_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/patch_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/search_replace.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/shell.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/single_wholefile_func_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/single_wholefile_func_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/udiff_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/udiff_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/udiff_simple.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/udiff_simple_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/wholefile_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/wholefile_func_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/wholefile_func_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/coders/wholefile_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/commands.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/copypaste.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/deprecated.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/diffs.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/dump.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/editor.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/exceptions.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/format_settings.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/git_undo.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/git_workspace.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/gui.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/headless_stdio.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/help.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/help_pats.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/history.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/http_auth.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/io.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/linter.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/llm.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/main.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/mdstream.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/models.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/onboarding.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/openrouter.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/README.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/bash-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/c-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/d-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/go-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/java-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/python-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/r-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/README.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/bash-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/c-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/cpp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/dart-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/elisp-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/elixir-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/elm-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/fortran-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/go-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/haskell-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/hcl-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/java-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/javascript-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/julia-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/matlab-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/php-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/python-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/ql-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/ruby-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/rust-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/scala-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/typescript-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/queries/tree-sitter-languages/zig-tags.scm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/reasoning_tags.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/repo.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/report.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/resources/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/resources/model-metadata.json +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/resources/model-settings.yml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/run_cmd.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/scrape.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/sendchat.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/special.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/urls.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/utils.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/versioncheck.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/voice.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/watch.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/watch_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/Gemfile +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/blame.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/get-started.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/help-tip.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/help.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/install.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/keys.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/model-warnings.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/multi-line.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/python-m-aider.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/recording.css +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/recording.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/replit-pipx.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_includes/works-best.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/_sass/custom/custom.scss +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/adv-model-settings.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/aider_conf.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/api-keys.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/dotenv.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/editor.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/model-aliases.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/options.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config/reasoning.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/config.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/faq.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/git.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/index.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/install/codespaces.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/install/docker.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/install/optional.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/install/replit.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/install.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/languages.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/legal/contributor-agreement.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/legal/privacy.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/anthropic.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/azure.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/bedrock.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/cohere.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/deepseek.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/gemini.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/github.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/groq.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/lm-studio.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/ollama.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/openai-compat.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/openai.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/openrouter.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/other.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/vertex.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/warnings.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms/xai.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/llms.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/more/analytics.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/more/edit-formats.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/more/infinite-output.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/more-info.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/recordings/auto-accept-architect.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/recordings/dont-drop-original-read-files.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/recordings/index.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/recordings/model-accepts-settings.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/recordings/tree-sitter-language-pack.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/repomap.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/scripting.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/aider-not-found.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/edit-errors.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/imports.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/models-and-keys.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/support.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/token-limits.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting/warnings.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/troubleshooting.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/browser.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/caching.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/commands.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/conventions.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/copypaste.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/images-urls.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/lint-test.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/modes.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/not-code.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/notifications.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/tips.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/tutorials.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/voice.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage/watch.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/docs/usage.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/website/share/index.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/dependency_links.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/entry_points.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/requires.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/top_level.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/Dockerfile +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/README.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/benchmark.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/clone-exercism.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/cpp-test.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/docker.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/docker_build.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/install-docker-ubuntu.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/npm-test.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/over_time.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/plot.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/plots.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/problem_stats.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/refactor_tools.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/rsync.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/rungrid.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/swe-bench-lite.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/swe-bench.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/swe_bench.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/benchmark/test_benchmark.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/docker/Dockerfile +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/pyproject.toml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/pytest.ini +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/common-constraints.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/pydub.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/python-compat.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-browser.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-browser.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-dev.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-dev.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-help.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-help.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-playwright.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements-playwright.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/requirements.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements/tree-sitter.in +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/requirements.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/30k-image.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/Dockerfile.jekyll +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/blame.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/clean_metadata.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/dl_icons.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/history_prompts.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/homepage.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/issues.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/jekyll_build.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/jekyll_run.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/logo_svg.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/my_models.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/pip-compile.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/recording_audio.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/redact-cast.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/tmux_record.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/tsl_pack_langs.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/update-blame.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/update-docs.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/update-history.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/versionbump.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/vision_jsonl.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/vision_serve.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/scripts/yank-old-versions.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/setup.cfg +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/__init__.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_analytics.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_aws_credentials.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_coder.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_commands.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_deprecated.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_editblock.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_editor.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_exceptions.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_find_or_blocks.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_git_workspace.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_history.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_http_api.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_io.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_linter.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_main.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_model_info_manager.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_models.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_onboarding.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_openrouter.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_reasoning.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_repo.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_repomap.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_run_cmd.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_sanity_check_repo.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_scripting.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_sendchat.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_special.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_ssl_verification.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_udiff.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_urls.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_utils.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_voice.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_watch.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/basic/test_wholefile.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/browser/test_browser.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/chat-history.md +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/arduino/test.ino +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/bash/test.sh +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/c/test.c +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/chatito/test.chatito +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/clojure/test.clj +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/cpp/test.cpp +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/csharp/test.cs +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/d/test.d +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/dart/test.dart +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/elisp/test.el +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/elixir/test.ex +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/elm/test.elm +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/gleam/test.gleam +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/go/test.go +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/haskell/test.hs +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/hcl/test.tf +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/java/test.java +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/javascript/test.js +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/kotlin/test.kt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/lua/test.lua +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/matlab/test.m +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/ocaml/test.ml +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/php/test.php +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/pony/test.pony +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/properties/test.properties +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/python/test.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/ql/test.ql +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/r/test.r +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/racket/test.rkt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/ruby/test.rb +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/rust/test.rs +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/scala/test.scala +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/solidity/test.sol +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/swift/test.swift +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/tsx/test.tsx +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/typescript/test.ts +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/udev/test.rules +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/languages/zig/test.zig +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/sample-code-base/sample.js +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/sample-code-base/sample.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/watch.js +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/watch.lisp +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/watch.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/fixtures/watch_question.js +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/help/test_help.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/scrape/test_playwright_disable.py +0 -0
- {aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/tests/scrape/test_scrape.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aider-vision-core
|
|
3
|
-
Version: 0.90.
|
|
3
|
+
Version: 0.90.9.dev1
|
|
4
4
|
Summary: aider-vision-core: Aider fork with headless API, submodule git, and web integration
|
|
5
5
|
Project-URL: Homepage, https://github.com/Digital-Defiance/aider-vision-core
|
|
6
6
|
Classifier: Development Status :: 4 - Beta
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/_version.py
RENAMED
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.90.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 90,
|
|
21
|
+
__version__ = version = '0.90.9.dev1'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 90, 9, 'dev1')
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'g9eda8d7c6'
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/event_io.py
RENAMED
|
@@ -29,6 +29,9 @@ class EventIO(InputOutput):
|
|
|
29
29
|
):
|
|
30
30
|
kwargs.setdefault("fancy_input", False)
|
|
31
31
|
kwargs.setdefault("pretty", False)
|
|
32
|
+
self.on_event = on_event
|
|
33
|
+
self.echo_to_console = echo_to_console
|
|
34
|
+
self.events: list[dict[str, Any]] = []
|
|
32
35
|
self._null_sink: TextIO | None = None
|
|
33
36
|
if not echo_to_console and kwargs.get("output") is None:
|
|
34
37
|
self._null_sink = open(os.devnull, "w", encoding="utf-8")
|
|
@@ -42,9 +45,6 @@ class EventIO(InputOutput):
|
|
|
42
45
|
# InputOutput attaches Console to stdout; when the desktop app spawns core with
|
|
43
46
|
# stdout closed, Rich writes raise BrokenPipeError.
|
|
44
47
|
self.console = Console(file=sink, force_terminal=False, no_color=True)
|
|
45
|
-
self.on_event = on_event
|
|
46
|
-
self.echo_to_console = echo_to_console
|
|
47
|
-
self.events: list[dict[str, Any]] = []
|
|
48
48
|
|
|
49
49
|
def emit(self, event_type: str, **payload: Any) -> dict[str, Any]:
|
|
50
50
|
event = {"type": event_type, **payload}
|
|
@@ -53,6 +53,27 @@ class EventIO(InputOutput):
|
|
|
53
53
|
self.on_event(event)
|
|
54
54
|
return event
|
|
55
55
|
|
|
56
|
+
def emit_progress(
|
|
57
|
+
self,
|
|
58
|
+
*,
|
|
59
|
+
label: str,
|
|
60
|
+
current: int | None = None,
|
|
61
|
+
total: int | None = None,
|
|
62
|
+
message: str | None = None,
|
|
63
|
+
fraction: float | None = None,
|
|
64
|
+
) -> dict[str, Any]:
|
|
65
|
+
from aider_vision_core.gui_progress import emit_progress
|
|
66
|
+
|
|
67
|
+
emit_progress(
|
|
68
|
+
self,
|
|
69
|
+
label=label,
|
|
70
|
+
current=current,
|
|
71
|
+
total=total,
|
|
72
|
+
message=message,
|
|
73
|
+
fraction=fraction,
|
|
74
|
+
)
|
|
75
|
+
return self.events[-1] if self.events else {"type": "progress", "label": label}
|
|
76
|
+
|
|
56
77
|
def drain_events(self) -> list[dict[str, Any]]:
|
|
57
78
|
events = self.events
|
|
58
79
|
self.events = []
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Progress reporting for Aider Vision (headless / GUI).
|
|
3
|
+
|
|
4
|
+
Replaces terminal tqdm bars with structured ``progress`` events on EventIO.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from __future__ import annotations
|
|
8
|
+
|
|
9
|
+
import os
|
|
10
|
+
from typing import Any, Callable, Iterable, Iterator, TypeVar
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def headless_enabled() -> bool:
|
|
16
|
+
from aider_vision_core.headless_stdio import headless_enabled as _headless_enabled
|
|
17
|
+
|
|
18
|
+
return _headless_enabled()
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def emit_progress(
|
|
22
|
+
io: Any,
|
|
23
|
+
*,
|
|
24
|
+
label: str,
|
|
25
|
+
current: int | None = None,
|
|
26
|
+
total: int | None = None,
|
|
27
|
+
message: str | None = None,
|
|
28
|
+
fraction: float | None = None,
|
|
29
|
+
) -> None:
|
|
30
|
+
if io is None:
|
|
31
|
+
return
|
|
32
|
+
emit = getattr(io, "emit", None)
|
|
33
|
+
if not callable(emit):
|
|
34
|
+
return
|
|
35
|
+
if fraction is None and current is not None and total:
|
|
36
|
+
fraction = max(0.0, min(1.0, current / total))
|
|
37
|
+
payload: dict[str, Any] = {"label": label}
|
|
38
|
+
if current is not None:
|
|
39
|
+
payload["current"] = current
|
|
40
|
+
if total is not None:
|
|
41
|
+
payload["total"] = total
|
|
42
|
+
if fraction is not None:
|
|
43
|
+
payload["fraction"] = fraction
|
|
44
|
+
if message is not None:
|
|
45
|
+
payload["message"] = message
|
|
46
|
+
elif current is not None and total is not None:
|
|
47
|
+
payload["message"] = f"{current}/{total}"
|
|
48
|
+
emit("progress", **payload)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def should_use_gui_progress(io: Any) -> bool:
|
|
52
|
+
if io is None:
|
|
53
|
+
return headless_enabled()
|
|
54
|
+
if headless_enabled():
|
|
55
|
+
return True
|
|
56
|
+
return callable(getattr(io, "emit", None))
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def progress_iter(
|
|
60
|
+
iterable: Iterable[T],
|
|
61
|
+
*,
|
|
62
|
+
desc: str = "Working",
|
|
63
|
+
io: Any = None,
|
|
64
|
+
total: int | None = None,
|
|
65
|
+
min_items_for_bar: int = 100,
|
|
66
|
+
) -> Iterator[T]:
|
|
67
|
+
"""
|
|
68
|
+
Iterate with tqdm in the CLI, or ``progress`` events for Vision / EventIO.
|
|
69
|
+
"""
|
|
70
|
+
if total is None:
|
|
71
|
+
try:
|
|
72
|
+
total = len(iterable) # type: ignore[arg-type]
|
|
73
|
+
except TypeError:
|
|
74
|
+
total = None
|
|
75
|
+
|
|
76
|
+
use_gui = should_use_gui_progress(io)
|
|
77
|
+
|
|
78
|
+
if use_gui and io is not None:
|
|
79
|
+
throttle = max(1, (total or 1) // 80)
|
|
80
|
+
for i, item in enumerate(iterable, start=1):
|
|
81
|
+
if total is None or i == 1 or i >= total or i % throttle == 0:
|
|
82
|
+
emit_progress(io, label=desc, current=i, total=total)
|
|
83
|
+
yield item
|
|
84
|
+
if total is not None:
|
|
85
|
+
emit_progress(io, label=desc, current=total, total=total)
|
|
86
|
+
return
|
|
87
|
+
|
|
88
|
+
if not use_gui and total is not None and total > min_items_for_bar:
|
|
89
|
+
from tqdm import tqdm
|
|
90
|
+
|
|
91
|
+
yield from tqdm(iterable, desc=desc, total=total)
|
|
92
|
+
return
|
|
93
|
+
|
|
94
|
+
yield from iterable
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/http_api.py
RENAMED
|
@@ -25,9 +25,9 @@ from pydantic import BaseModel, Field
|
|
|
25
25
|
from starlette.middleware.base import BaseHTTPMiddleware
|
|
26
26
|
from starlette.requests import Request
|
|
27
27
|
|
|
28
|
-
from aider_vision_core.
|
|
28
|
+
from aider_vision_core.vision_runtime import configure_vision_runtime
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
configure_vision_runtime()
|
|
31
31
|
|
|
32
32
|
from aider_vision_core.git_undo import undo_last_aider_commit_for_coder
|
|
33
33
|
from aider_vision_core.http_auth import auth_enabled, configure_auth, get_token_from_env, verify_bearer
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/repomap.py
RENAMED
|
@@ -15,11 +15,18 @@ from diskcache import Cache
|
|
|
15
15
|
from grep_ast import TreeContext, filename_to_lang
|
|
16
16
|
from pygments.lexers import guess_lexer_for_filename
|
|
17
17
|
from pygments.token import Token
|
|
18
|
-
from tqdm import tqdm
|
|
19
18
|
from tree_sitter import Query
|
|
20
19
|
|
|
21
20
|
from aider_vision_core.dump import dump
|
|
21
|
+
from aider_vision_core.gui_progress import progress_iter
|
|
22
22
|
from aider_vision_core.special import filter_important_files
|
|
23
|
+
from aider_vision_core.vision_runtime import (
|
|
24
|
+
CACHE_LOAD_ERRORS,
|
|
25
|
+
REPO_MAP_CACHE_DIRNAME,
|
|
26
|
+
REPO_MAP_CACHE_VERSION,
|
|
27
|
+
purge_legacy_tag_caches,
|
|
28
|
+
safe_cache_len,
|
|
29
|
+
)
|
|
23
30
|
from aider_vision_core.waiting import Spinner
|
|
24
31
|
|
|
25
32
|
# tree_sitter is throwing a FutureWarning
|
|
@@ -30,17 +37,14 @@ Tag = namedtuple("Tag", "rel_fname fname line name kind".split())
|
|
|
30
37
|
|
|
31
38
|
|
|
32
39
|
SQLITE_ERRORS = (sqlite3.OperationalError, sqlite3.DatabaseError, OSError)
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
CACHE_VERSION = 3
|
|
36
|
-
if USING_TSL_PACK:
|
|
37
|
-
CACHE_VERSION = 4
|
|
40
|
+
# Re-export for tests / callers
|
|
41
|
+
CACHE_VERSION = REPO_MAP_CACHE_VERSION
|
|
38
42
|
|
|
39
43
|
UPDATING_REPO_MAP_MESSAGE = "Updating repo map"
|
|
40
44
|
|
|
41
45
|
|
|
42
46
|
class RepoMap:
|
|
43
|
-
TAGS_CACHE_DIR =
|
|
47
|
+
TAGS_CACHE_DIR = REPO_MAP_CACHE_DIRNAME
|
|
44
48
|
|
|
45
49
|
warned_files = set()
|
|
46
50
|
|
|
@@ -215,6 +219,7 @@ class RepoMap:
|
|
|
215
219
|
self.TAGS_CACHE = dict()
|
|
216
220
|
|
|
217
221
|
def load_tags_cache(self):
|
|
222
|
+
purge_legacy_tag_caches(self.root)
|
|
218
223
|
path = Path(self.root) / self.TAGS_CACHE_DIR
|
|
219
224
|
try:
|
|
220
225
|
self.TAGS_CACHE = Cache(path)
|
|
@@ -239,14 +244,14 @@ class RepoMap:
|
|
|
239
244
|
cache_key = fname
|
|
240
245
|
try:
|
|
241
246
|
val = self.TAGS_CACHE.get(cache_key) # Issue #1308
|
|
242
|
-
except
|
|
247
|
+
except CACHE_LOAD_ERRORS as e:
|
|
243
248
|
self.tags_cache_error(e)
|
|
244
249
|
val = self.TAGS_CACHE.get(cache_key)
|
|
245
250
|
|
|
246
251
|
if val is not None and val.get("mtime") == file_mtime:
|
|
247
252
|
try:
|
|
248
253
|
return self.TAGS_CACHE[cache_key]["data"]
|
|
249
|
-
except
|
|
254
|
+
except CACHE_LOAD_ERRORS as e:
|
|
250
255
|
self.tags_cache_error(e)
|
|
251
256
|
return self.TAGS_CACHE[cache_key]["data"]
|
|
252
257
|
|
|
@@ -289,7 +294,7 @@ class RepoMap:
|
|
|
289
294
|
return
|
|
290
295
|
|
|
291
296
|
query_scm = get_scm_fname(lang)
|
|
292
|
-
if not query_scm.exists():
|
|
297
|
+
if not query_scm or not query_scm.exists():
|
|
293
298
|
return
|
|
294
299
|
query_scm = query_scm.read_text()
|
|
295
300
|
|
|
@@ -382,22 +387,24 @@ class RepoMap:
|
|
|
382
387
|
# https://networkx.org/documentation/stable/_modules/networkx/algorithms/link_analysis/pagerank_alg.html#pagerank
|
|
383
388
|
personalize = 100 / len(fnames)
|
|
384
389
|
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
self.
|
|
389
|
-
cache_size = len(self.TAGS_CACHE)
|
|
390
|
+
cache_size = safe_cache_len(self.TAGS_CACHE)
|
|
391
|
+
if cache_size < 0:
|
|
392
|
+
self.tags_cache_error()
|
|
393
|
+
cache_size = safe_cache_len(self.TAGS_CACHE)
|
|
390
394
|
|
|
391
395
|
if len(fnames) - cache_size > 100:
|
|
392
396
|
self.io.tool_output(
|
|
393
397
|
"Initial repo scan can be slow in larger repos, but only happens once."
|
|
394
398
|
)
|
|
395
|
-
|
|
399
|
+
fname_source = progress_iter(
|
|
400
|
+
fnames, desc="Scanning repo", io=self.io, total=len(fnames)
|
|
401
|
+
)
|
|
396
402
|
showing_bar = True
|
|
397
403
|
else:
|
|
404
|
+
fname_source = fnames
|
|
398
405
|
showing_bar = False
|
|
399
406
|
|
|
400
|
-
for fname in
|
|
407
|
+
for fname in fname_source:
|
|
401
408
|
if self.verbose:
|
|
402
409
|
self.io.tool_output(f"Processing {fname}")
|
|
403
410
|
if progress and not showing_bar:
|
|
@@ -643,7 +650,7 @@ class RepoMap:
|
|
|
643
650
|
if not mentioned_idents:
|
|
644
651
|
mentioned_idents = set()
|
|
645
652
|
|
|
646
|
-
spin = Spinner(UPDATING_REPO_MAP_MESSAGE)
|
|
653
|
+
spin = Spinner(UPDATING_REPO_MAP_MESSAGE, io=self.io)
|
|
647
654
|
|
|
648
655
|
ranked_tags = self.get_ranked_tags(
|
|
649
656
|
chat_fnames,
|
|
@@ -803,30 +810,30 @@ def get_random_color():
|
|
|
803
810
|
|
|
804
811
|
|
|
805
812
|
def get_scm_fname(lang):
|
|
806
|
-
# Load the
|
|
813
|
+
# Load tags queries from the aider_vision_core package root (not this submodule).
|
|
814
|
+
pkg = __package__.split(".")[0] if __package__ else "aider_vision_core"
|
|
807
815
|
if USING_TSL_PACK:
|
|
808
816
|
subdir = "tree-sitter-language-pack"
|
|
809
817
|
try:
|
|
810
|
-
path = resources.files(
|
|
818
|
+
path = resources.files(pkg).joinpath(
|
|
811
819
|
"queries",
|
|
812
820
|
subdir,
|
|
813
821
|
f"{lang}-tags.scm",
|
|
814
822
|
)
|
|
815
823
|
if path.exists():
|
|
816
824
|
return path
|
|
817
|
-
except KeyError:
|
|
825
|
+
except (KeyError, ModuleNotFoundError, TypeError):
|
|
818
826
|
pass
|
|
819
827
|
|
|
820
|
-
# Fall back to tree-sitter-languages
|
|
821
828
|
subdir = "tree-sitter-languages"
|
|
822
829
|
try:
|
|
823
|
-
return resources.files(
|
|
830
|
+
return resources.files(pkg).joinpath(
|
|
824
831
|
"queries",
|
|
825
832
|
subdir,
|
|
826
833
|
f"{lang}-tags.scm",
|
|
827
834
|
)
|
|
828
|
-
except KeyError:
|
|
829
|
-
return
|
|
835
|
+
except (KeyError, ModuleNotFoundError, TypeError):
|
|
836
|
+
return None
|
|
830
837
|
|
|
831
838
|
|
|
832
839
|
def get_supported_languages_md():
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/session.py
RENAMED
|
@@ -52,6 +52,11 @@ class Session:
|
|
|
52
52
|
if not workspace.is_dir():
|
|
53
53
|
raise FileNotFoundError(f"Workspace not found: {workspace}")
|
|
54
54
|
|
|
55
|
+
from aider_vision_core.vision_runtime import configure_vision_runtime, purge_legacy_tag_caches
|
|
56
|
+
|
|
57
|
+
configure_vision_runtime()
|
|
58
|
+
purge_legacy_tag_caches(workspace)
|
|
59
|
+
|
|
55
60
|
prev_cwd = os.getcwd()
|
|
56
61
|
os.chdir(workspace)
|
|
57
62
|
try:
|
|
@@ -119,6 +124,8 @@ class Session:
|
|
|
119
124
|
return
|
|
120
125
|
|
|
121
126
|
for chunk in self.coder.send_message(user_msg):
|
|
127
|
+
for event in self.io.drain_events():
|
|
128
|
+
yield event
|
|
122
129
|
if chunk:
|
|
123
130
|
assistant_text.append(chunk)
|
|
124
131
|
event = self.io.emit("token", text=chunk)
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Vision / headless runtime setup and guards against legacy ``aider`` rename issues.
|
|
3
|
+
|
|
4
|
+
Call :func:`configure_vision_runtime` when starting the HTTP API or any headless
|
|
5
|
+
session so TUI output and stale on-disk caches do not leak into the desktop GUI.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from __future__ import annotations
|
|
9
|
+
|
|
10
|
+
import os
|
|
11
|
+
import pickle
|
|
12
|
+
import re
|
|
13
|
+
import shutil
|
|
14
|
+
import sqlite3
|
|
15
|
+
from pathlib import Path
|
|
16
|
+
from typing import Any
|
|
17
|
+
|
|
18
|
+
# Bump when repo-map tag cache schema or Python package name changes.
|
|
19
|
+
REPO_MAP_CACHE_VERSION = 5
|
|
20
|
+
REPO_MAP_CACHE_DIRNAME = f".aider.tags.cache.v{REPO_MAP_CACHE_VERSION}"
|
|
21
|
+
LEGACY_PYTHON_PACKAGE = "aider"
|
|
22
|
+
LEGACY_TAG_CACHE_PATTERN = re.compile(r"^\.aider\.tags\.cache\.v(\d+)$")
|
|
23
|
+
|
|
24
|
+
SQLITE_ERRORS = (sqlite3.OperationalError, sqlite3.DatabaseError, OSError)
|
|
25
|
+
CACHE_LOAD_ERRORS = SQLITE_ERRORS + (
|
|
26
|
+
ModuleNotFoundError,
|
|
27
|
+
AttributeError,
|
|
28
|
+
pickle.UnpicklingError,
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
_tqdm_patched = False
|
|
32
|
+
_runtime_configured = False
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def headless_enabled() -> bool:
|
|
36
|
+
from aider_vision_core.headless_stdio import headless_enabled as _he
|
|
37
|
+
|
|
38
|
+
return _he()
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def purge_legacy_tag_caches(root: str | Path) -> list[str]:
|
|
42
|
+
"""
|
|
43
|
+
Remove repo-map cache dirs from older package names / cache versions.
|
|
44
|
+
|
|
45
|
+
Pickled entries may reference the pre-rename ``aider`` module and raise
|
|
46
|
+
``ModuleNotFoundError`` when loaded under ``aider_vision_core``.
|
|
47
|
+
"""
|
|
48
|
+
root = Path(root)
|
|
49
|
+
removed: list[str] = []
|
|
50
|
+
if not root.is_dir():
|
|
51
|
+
return removed
|
|
52
|
+
for path in sorted(root.iterdir()):
|
|
53
|
+
if not path.is_dir():
|
|
54
|
+
continue
|
|
55
|
+
m = LEGACY_TAG_CACHE_PATTERN.match(path.name)
|
|
56
|
+
if not m:
|
|
57
|
+
continue
|
|
58
|
+
if path.name == REPO_MAP_CACHE_DIRNAME:
|
|
59
|
+
continue
|
|
60
|
+
try:
|
|
61
|
+
shutil.rmtree(path)
|
|
62
|
+
removed.append(str(path))
|
|
63
|
+
except OSError:
|
|
64
|
+
pass
|
|
65
|
+
return removed
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def safe_cache_len(cache: Any) -> int:
|
|
69
|
+
"""``len(diskcache.Cache)`` can unpickle entries; treat failures as empty."""
|
|
70
|
+
try:
|
|
71
|
+
return len(cache)
|
|
72
|
+
except CACHE_LOAD_ERRORS:
|
|
73
|
+
return -1
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
def configure_vision_runtime(*, force: bool = False) -> None:
|
|
77
|
+
"""
|
|
78
|
+
One-time setup for Aider Vision desktop / API child processes.
|
|
79
|
+
|
|
80
|
+
- Redirect stdio (headless)
|
|
81
|
+
- Disable tqdm terminal bars
|
|
82
|
+
- Patch tqdm → GUI progress when still invoked from legacy call sites
|
|
83
|
+
"""
|
|
84
|
+
global _runtime_configured, _tqdm_patched
|
|
85
|
+
if _runtime_configured and not force:
|
|
86
|
+
return
|
|
87
|
+
_runtime_configured = True
|
|
88
|
+
|
|
89
|
+
if not headless_enabled():
|
|
90
|
+
return
|
|
91
|
+
|
|
92
|
+
os.environ.setdefault("TQDM_DISABLE", "1")
|
|
93
|
+
|
|
94
|
+
from aider_vision_core.headless_stdio import install_headless_stdio
|
|
95
|
+
|
|
96
|
+
install_headless_stdio()
|
|
97
|
+
_patch_tqdm_for_headless()
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
def _patch_tqdm_for_headless() -> None:
|
|
101
|
+
global _tqdm_patched
|
|
102
|
+
if _tqdm_patched:
|
|
103
|
+
return
|
|
104
|
+
try:
|
|
105
|
+
import tqdm as tqdm_mod
|
|
106
|
+
except ImportError:
|
|
107
|
+
return
|
|
108
|
+
|
|
109
|
+
_orig = tqdm_mod.tqdm
|
|
110
|
+
|
|
111
|
+
def _vision_tqdm(iterable=None, *args, **kwargs):
|
|
112
|
+
if iterable is None:
|
|
113
|
+
return _orig(*args, **kwargs)
|
|
114
|
+
from aider_vision_core.gui_progress import progress_iter
|
|
115
|
+
|
|
116
|
+
desc = kwargs.get("desc")
|
|
117
|
+
if desc is None and args and isinstance(args[0], str):
|
|
118
|
+
desc = args[0]
|
|
119
|
+
return progress_iter(
|
|
120
|
+
iterable,
|
|
121
|
+
desc=str(desc or "Working"),
|
|
122
|
+
io=kwargs.get("io"),
|
|
123
|
+
total=kwargs.get("total"),
|
|
124
|
+
)
|
|
125
|
+
|
|
126
|
+
tqdm_mod.tqdm = _vision_tqdm
|
|
127
|
+
_tqdm_patched = True
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/vision_serve.py
RENAMED
|
@@ -33,10 +33,10 @@ def run(argv: list[str] | None = None) -> None:
|
|
|
33
33
|
validate_listen_address(args.host)
|
|
34
34
|
configure_auth(args.host)
|
|
35
35
|
|
|
36
|
-
|
|
37
|
-
from aider_vision_core.headless_stdio import install_headless_stdio
|
|
36
|
+
from aider_vision_core.vision_runtime import configure_vision_runtime
|
|
38
37
|
|
|
39
|
-
|
|
38
|
+
if os.environ.get("AIDER_VISION_HEADLESS") == "1":
|
|
39
|
+
configure_vision_runtime()
|
|
40
40
|
else:
|
|
41
41
|
print(startup_message(args.host))
|
|
42
42
|
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core/waiting.py
RENAMED
|
@@ -35,8 +35,9 @@ class Spinner:
|
|
|
35
35
|
|
|
36
36
|
last_frame_idx = 0 # Class variable to store the last frame index
|
|
37
37
|
|
|
38
|
-
def __init__(self, text: str, width: int = 7):
|
|
38
|
+
def __init__(self, text: str, width: int = 7, io=None):
|
|
39
39
|
self.text = text
|
|
40
|
+
self.io = io
|
|
40
41
|
self.start_time = time.time()
|
|
41
42
|
self.last_update = 0.0
|
|
42
43
|
self.visible = False
|
|
@@ -111,6 +112,12 @@ class Spinner:
|
|
|
111
112
|
if text is not None:
|
|
112
113
|
self.text = text
|
|
113
114
|
|
|
115
|
+
if _headless() and self.io is not None:
|
|
116
|
+
from aider_vision_core.gui_progress import emit_progress
|
|
117
|
+
|
|
118
|
+
emit_progress(self.io, label=self.text, message=text or self.text, fraction=None)
|
|
119
|
+
return
|
|
120
|
+
|
|
114
121
|
if not self.is_tty:
|
|
115
122
|
return
|
|
116
123
|
|
{aider_vision_core-0.90.8.dev0 → aider_vision_core-0.90.9.dev1}/aider_vision_core.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aider-vision-core
|
|
3
|
-
Version: 0.90.
|
|
3
|
+
Version: 0.90.9.dev1
|
|
4
4
|
Summary: aider-vision-core: Aider fork with headless API, submodule git, and web integration
|
|
5
5
|
Project-URL: Homepage, https://github.com/Digital-Defiance/aider-vision-core
|
|
6
6
|
Classifier: Development Status :: 4 - Beta
|
|
@@ -41,6 +41,7 @@ aider_vision_core/format_settings.py
|
|
|
41
41
|
aider_vision_core/git_undo.py
|
|
42
42
|
aider_vision_core/git_workspace.py
|
|
43
43
|
aider_vision_core/gui.py
|
|
44
|
+
aider_vision_core/gui_progress.py
|
|
44
45
|
aider_vision_core/headless_stdio.py
|
|
45
46
|
aider_vision_core/help.py
|
|
46
47
|
aider_vision_core/help_pats.py
|
|
@@ -68,6 +69,7 @@ aider_vision_core/special.py
|
|
|
68
69
|
aider_vision_core/urls.py
|
|
69
70
|
aider_vision_core/utils.py
|
|
70
71
|
aider_vision_core/versioncheck.py
|
|
72
|
+
aider_vision_core/vision_runtime.py
|
|
71
73
|
aider_vision_core/vision_serve.py
|
|
72
74
|
aider_vision_core/voice.py
|
|
73
75
|
aider_vision_core/waiting.py
|
|
@@ -307,6 +309,7 @@ requirements/tree-sitter.in
|
|
|
307
309
|
scripts/30k-image.py
|
|
308
310
|
scripts/Dockerfile.jekyll
|
|
309
311
|
scripts/__init__.py
|
|
312
|
+
scripts/audit_rename_compat.py
|
|
310
313
|
scripts/blame.py
|
|
311
314
|
scripts/clean_metadata.py
|
|
312
315
|
scripts/dl_icons.py
|
|
@@ -362,6 +365,7 @@ tests/basic/test_ssl_verification.py
|
|
|
362
365
|
tests/basic/test_udiff.py
|
|
363
366
|
tests/basic/test_urls.py
|
|
364
367
|
tests/basic/test_utils.py
|
|
368
|
+
tests/basic/test_vision_runtime.py
|
|
365
369
|
tests/basic/test_voice.py
|
|
366
370
|
tests/basic/test_watch.py
|
|
367
371
|
tests/basic/test_wholefile.py
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
CI / dev audit: catch regressions from the aider → aider_vision_core rename.
|
|
4
|
+
|
|
5
|
+
Usage:
|
|
6
|
+
python scripts/audit_rename_compat.py
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
import re
|
|
12
|
+
import sys
|
|
13
|
+
from pathlib import Path
|
|
14
|
+
|
|
15
|
+
ROOT = Path(__file__).resolve().parents[1]
|
|
16
|
+
PKG = ROOT / "aider_vision_core"
|
|
17
|
+
SKIP_DIRS = {
|
|
18
|
+
"website",
|
|
19
|
+
"__pycache__",
|
|
20
|
+
".git",
|
|
21
|
+
}
|
|
22
|
+
SKIP_FILES = {
|
|
23
|
+
"audit_rename_compat.py",
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
# `from aider.` / `import aider` but not aider_vision_core / aiderignore / …
|
|
27
|
+
BAD_IMPORT = re.compile(
|
|
28
|
+
r"^\s*(?:from|import)\s+aider(?!_vision_core|ignore|_edited|_commit|@)",
|
|
29
|
+
)
|
|
30
|
+
# tqdm( in production code — allow gui_progress + search_replace __main__
|
|
31
|
+
BAD_TQDM = re.compile(r"\btqdm\s*\(")
|
|
32
|
+
ALLOW_TQDM = {
|
|
33
|
+
PKG / "gui_progress.py",
|
|
34
|
+
PKG / "coders" / "search_replace.py",
|
|
35
|
+
}
|
|
36
|
+
# resources.files(__package__) under repomap breaks query paths
|
|
37
|
+
BAD_RESOURCES = re.compile(r"resources\.files\(\s*__package__\s*\)")
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def iter_py_files() -> list[Path]:
|
|
41
|
+
out: list[Path] = []
|
|
42
|
+
for path in PKG.rglob("*.py"):
|
|
43
|
+
if any(part in SKIP_DIRS for part in path.parts):
|
|
44
|
+
continue
|
|
45
|
+
if path.name in SKIP_FILES:
|
|
46
|
+
continue
|
|
47
|
+
out.append(path)
|
|
48
|
+
return sorted(out)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def audit() -> list[str]:
|
|
52
|
+
errors: list[str] = []
|
|
53
|
+
for path in iter_py_files():
|
|
54
|
+
rel = path.relative_to(ROOT)
|
|
55
|
+
text = path.read_text(encoding="utf-8", errors="replace")
|
|
56
|
+
for i, line in enumerate(text.splitlines(), start=1):
|
|
57
|
+
if BAD_IMPORT.search(line):
|
|
58
|
+
errors.append(f"{rel}:{i}: legacy import of package 'aider': {line.strip()}")
|
|
59
|
+
if BAD_RESOURCES.search(line):
|
|
60
|
+
errors.append(f"{rel}:{i}: use resources.files('aider_vision_core'), not __package__")
|
|
61
|
+
if path in ALLOW_TQDM:
|
|
62
|
+
continue
|
|
63
|
+
if path.name == "repomap.py":
|
|
64
|
+
continue # uses progress_iter
|
|
65
|
+
for i, line in enumerate(text.splitlines(), start=1):
|
|
66
|
+
if BAD_TQDM.search(line) and "progress_iter" not in line:
|
|
67
|
+
errors.append(f"{rel}:{i}: use progress_iter() or gui_progress in headless paths: {line.strip()}")
|
|
68
|
+
|
|
69
|
+
repomap = PKG / "repomap.py"
|
|
70
|
+
body = repomap.read_text(encoding="utf-8")
|
|
71
|
+
if "vision_runtime" not in body or "REPO_MAP_CACHE_VERSION" not in body:
|
|
72
|
+
errors.append("repomap.py: must use vision_runtime.REPO_MAP_CACHE_VERSION and purge_legacy_tag_caches")
|
|
73
|
+
|
|
74
|
+
return errors
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
def main() -> int:
|
|
78
|
+
errors = audit()
|
|
79
|
+
if errors:
|
|
80
|
+
print("audit_rename_compat FAILED:\n", file=sys.stderr)
|
|
81
|
+
for err in errors:
|
|
82
|
+
print(f" - {err}", file=sys.stderr)
|
|
83
|
+
return 1
|
|
84
|
+
print("audit_rename_compat OK")
|
|
85
|
+
return 0
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
if __name__ == "__main__":
|
|
89
|
+
raise SystemExit(main())
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import pickle
|
|
2
|
+
import shutil
|
|
3
|
+
import tempfile
|
|
4
|
+
import unittest
|
|
5
|
+
from pathlib import Path
|
|
6
|
+
|
|
7
|
+
from aider_vision_core.vision_runtime import (
|
|
8
|
+
CACHE_LOAD_ERRORS,
|
|
9
|
+
LEGACY_PYTHON_PACKAGE,
|
|
10
|
+
REPO_MAP_CACHE_DIRNAME,
|
|
11
|
+
purge_legacy_tag_caches,
|
|
12
|
+
safe_cache_len,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class TestVisionRuntime(unittest.TestCase):
|
|
17
|
+
def test_purge_legacy_tag_caches(self):
|
|
18
|
+
root = Path(tempfile.mkdtemp())
|
|
19
|
+
try:
|
|
20
|
+
(root / ".aider.tags.cache.v3").mkdir()
|
|
21
|
+
(root / ".aider.tags.cache.v4").mkdir()
|
|
22
|
+
(root / REPO_MAP_CACHE_DIRNAME).mkdir()
|
|
23
|
+
(root / "src").mkdir()
|
|
24
|
+
removed = purge_legacy_tag_caches(root)
|
|
25
|
+
self.assertEqual(len(removed), 2)
|
|
26
|
+
self.assertFalse((root / ".aider.tags.cache.v3").exists())
|
|
27
|
+
self.assertTrue((root / REPO_MAP_CACHE_DIRNAME).exists())
|
|
28
|
+
finally:
|
|
29
|
+
shutil.rmtree(root, ignore_errors=True)
|
|
30
|
+
|
|
31
|
+
def test_safe_cache_len_on_bad_pickle(self):
|
|
32
|
+
class BadCache:
|
|
33
|
+
def __len__(self):
|
|
34
|
+
raise ModuleNotFoundError(f"No module named '{LEGACY_PYTHON_PACKAGE}'")
|
|
35
|
+
|
|
36
|
+
self.assertEqual(safe_cache_len(BadCache()), -1)
|
|
37
|
+
|
|
38
|
+
def test_cache_load_errors_includes_unpickle(self):
|
|
39
|
+
self.assertIn(pickle.UnpicklingError, CACHE_LOAD_ERRORS)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
if __name__ == "__main__":
|
|
43
|
+
unittest.main()
|