mycli 2.29.4__tar.gz → 2.29.6__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.
- {mycli-2.29.4 → mycli-2.29.6}/.github/actions/typecheck/action.yml +1 -1
- {mycli-2.29.4 → mycli-2.29.6}/.github/workflows/ci.yml +12 -12
- {mycli-2.29.4 → mycli-2.29.6}/.github/workflows/publish.yml +14 -14
- {mycli-2.29.4 → mycli-2.29.6}/AGENTS.md +1 -1
- {mycli-2.29.4/mycli.egg-info → mycli-2.29.6}/PKG-INFO +11 -12
- {mycli-2.29.4 → mycli-2.29.6}/changelog.md +29 -0
- {mycli-2.29.4 → mycli-2.29.6}/docker/Dockerfile +2 -1
- {mycli-2.29.4 → mycli-2.29.6}/docker/resources/test_db-1.0.7.tar.gz +1 -1
- {mycli-2.29.4 → mycli-2.29.6}/mycli/cli_runner.py +2 -4
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main.py +2 -6
- {mycli-2.29.4 → mycli-2.29.6/mycli.egg-info}/PKG-INFO +11 -12
- {mycli-2.29.4 → mycli-2.29.6}/mycli.egg-info/requires.txt +10 -11
- mycli-2.29.6/mycli.egg-info/scm_version.json +8 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_db_commands.py +3 -3
- {mycli-2.29.4 → mycli-2.29.6}/pyproject.toml +12 -13
- mycli-2.29.4/mycli.egg-info/scm_version.json +0 -8
- {mycli-2.29.4 → mycli-2.29.6}/.git-blame-ignore-revs +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/actions/lint/action.yml +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/dependabot.yml +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/workflows/lint.yml +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.github/workflows/typecheck.yml +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/.gitignore +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/AUTHORS.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/CONTRIBUTING.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/LICENSE.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/MANIFEST.in +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/README.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/SPONSORS.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/cookbook.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/key_bindings.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/known_bugs.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/llm.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/screenshots/main.gif +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/screenshots/polars_describe.png +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/screenshots/polars_group_by.png +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/screenshots/polars_histogram.png +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/screenshots/polars_pivot.png +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/screenshots/tables.png +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/doc/transforms.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/docker/resources/test_db_license.md +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/AUTHORS.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/SPONSORS.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/TIPS.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/app_state.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/client.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/client_commands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/client_connection.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/client_query.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/compat.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/config.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/constants.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main_modes/batch.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main_modes/checkup.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main_modes/completions.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main_modes/execute.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main_modes/list_dsn.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/main_modes/repl.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/myclirc +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/output.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/completion/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/completion/completion_engine.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/completion/completion_refresher.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/completion/schema_prefetcher.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/completion/sql_completer.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/credentials/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/credentials/password_sources.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/dataframes/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/dataframes/completion.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/dataframes/transform.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/execution/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/execution/background_runner.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/execution/sql_execute.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/boundary/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/boundary/boundary_tunnel.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/fzf/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/fzf/fzf.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/kubernetes/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/kubernetes/kubectl_tunnel.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/macos/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/macos/macos_keychain.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/openssh/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/openssh/ssh_tunnel.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/vault/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/integrations/vault/vault_credentials.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/fzf_history.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/history.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/key_bindings.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/multiline.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/style.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/toolbar.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/prompt_toolkit/utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/pygments/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/pygments/mycli_lexer.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/redirection/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/redirection/hybrid_redirection.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/db_commands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/delimiter_command.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/dsn_aliases.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/favorite_queries.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/io_commands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/llm.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/main.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/source.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/special_commands/special_command_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/sql_result/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/sql_result/sql_result.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/tabular_output/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/tabular_output/sql_format.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/batch_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/cli_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/interactive_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/key_binding_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/keyring_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/path_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/sql_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/packages/utils/string_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/resources/completions/bash/mycli +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/resources/completions/fish/mycli.fish +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/resources/completions/zsh/_mycli +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli/types.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli.egg-info/SOURCES.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli.egg-info/dependency_links.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli.egg-info/entry_points.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli.egg-info/scm_file_list.json +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli.egg-info/top_level.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/auto_vertical.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/basic_commands.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/connection.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/crud_database.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/crud_table.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/db_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/environment.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/fixture_data/help_commands.txt +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/fixture_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/iocommands.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/named_queries.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/specials.feature +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/__init__.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/auto_vertical.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/basic_commands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/connection.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/crud_database.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/crud_table.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/iocommands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/named_queries.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/specials.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/steps/wrappers.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/features/wrappager.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/myclirc +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/mylogin.cnf +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/conftest.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_app_state.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_background_runner.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_bash_completion.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_batch_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_boundary_tunnel.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_checkup.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_cli_runner.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_cli_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_clibuffer.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_client.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_client_commands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_client_connection.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_client_query.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_completer_use_switch.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_completion_engine.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_completion_refresher.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_config.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_delimitercommand.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_dsn_aliases.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_favoritequeries.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_fish_completion.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_fzf.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_hybrid_redirection.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_interactive_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_key_binding_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_key_bindings.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_keyring_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_kubectl_tunnel.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_macos_keychain.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_main.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_main_modes_batch.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_main_modes_execute.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_main_modes_list_dsn.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_main_modes_repl.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_naive_completion.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_output.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_password_sources.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_path_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_polars_completion.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_polars_transform.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_prompt_toolkit_fzf_history.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_prompt_toolkit_history.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_prompt_toolkit_style.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_prompt_toolkit_toolbar.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_prompt_toolkit_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_schema_prefetcher.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_smart_completion_public_schema_only.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_commands_init.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_io_commands.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_llm.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_main.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_source.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_special_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_sql_execute.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_sql_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_sqlcompleter.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_sqlresult.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_ssh_tunnel.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_string_utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_tabular_output.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_vault.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/pytests/test_zsh_completion.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/mycli_test/utils.py +0 -0
- {mycli-2.29.4 → mycli-2.29.6}/setup.cfg +0 -0
|
@@ -19,7 +19,7 @@ jobs:
|
|
|
19
19
|
strategy:
|
|
20
20
|
fail-fast: false
|
|
21
21
|
matrix:
|
|
22
|
-
python-version: ["3.11", "3.12", "3.13", "3.14"]
|
|
22
|
+
python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
|
|
23
23
|
|
|
24
24
|
steps:
|
|
25
25
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
@@ -61,7 +61,7 @@ jobs:
|
|
|
61
61
|
strategy:
|
|
62
62
|
fail-fast: false
|
|
63
63
|
matrix:
|
|
64
|
-
python-version: ["3.
|
|
64
|
+
python-version: ["3.15"]
|
|
65
65
|
|
|
66
66
|
steps:
|
|
67
67
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
@@ -111,7 +111,7 @@ jobs:
|
|
|
111
111
|
strategy:
|
|
112
112
|
fail-fast: false
|
|
113
113
|
matrix:
|
|
114
|
-
python-version: ['3.
|
|
114
|
+
python-version: ['3.15']
|
|
115
115
|
|
|
116
116
|
steps:
|
|
117
117
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
@@ -144,7 +144,7 @@ jobs:
|
|
|
144
144
|
uv run -- coverage report -m --sort=Miss --skip-covered --skip-empty
|
|
145
145
|
|
|
146
146
|
tests-wsl:
|
|
147
|
-
name: Tests WSL (3.
|
|
147
|
+
name: Tests WSL (3.15)
|
|
148
148
|
runs-on: windows-latest
|
|
149
149
|
|
|
150
150
|
steps:
|
|
@@ -175,14 +175,14 @@ jobs:
|
|
|
175
175
|
shell: wsl-bash {0}
|
|
176
176
|
run: |
|
|
177
177
|
export PATH="$HOME/.local/bin:$PATH"
|
|
178
|
-
env PYTHONPATH=/usr/local/lib/python3.
|
|
178
|
+
env PYTHONPATH=/usr/local/lib/python3.15/site-packages pip install --upgrade --break-system-packages --prefix=/usr uv
|
|
179
179
|
|
|
180
180
|
- name: Install dependencies
|
|
181
181
|
shell: wsl-bash {0}
|
|
182
182
|
run: |
|
|
183
183
|
export PATH="$HOME/.local/bin:$PATH"
|
|
184
184
|
cd /root/mycli
|
|
185
|
-
uv sync --extra dev,llm,dataframe --python 3.
|
|
185
|
+
uv sync --extra dev,llm,dataframe --python 3.15
|
|
186
186
|
|
|
187
187
|
- name: Start MySQL in WSL
|
|
188
188
|
shell: wsl-bash {0}
|
|
@@ -210,11 +210,11 @@ jobs:
|
|
|
210
210
|
run: |
|
|
211
211
|
export PATH="$HOME/.local/bin:$PATH"
|
|
212
212
|
cd /root/mycli
|
|
213
|
-
uv run --python 3.
|
|
214
|
-
uv run --python 3.
|
|
213
|
+
uv run --python 3.15 -- coverage run -m pytest
|
|
214
|
+
uv run --python 3.15 -- coverage report -m --sort=Miss --skip-covered --skip-empty
|
|
215
215
|
|
|
216
216
|
test-no-extras:
|
|
217
|
-
name: Tests Without Extras (3.
|
|
217
|
+
name: Tests Without Extras (3.15)
|
|
218
218
|
runs-on: ubuntu-26.04
|
|
219
219
|
|
|
220
220
|
steps:
|
|
@@ -227,14 +227,14 @@ jobs:
|
|
|
227
227
|
- name: Set up Python ${{ matrix.python-version }}
|
|
228
228
|
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
229
229
|
with:
|
|
230
|
-
python-version: '3.
|
|
230
|
+
python-version: '3.15'
|
|
231
231
|
|
|
232
232
|
- name: Start MySQL
|
|
233
233
|
run: |
|
|
234
234
|
sudo systemctl start mysql
|
|
235
235
|
|
|
236
236
|
- name: Install dependencies
|
|
237
|
-
run: uv sync --extra dev
|
|
237
|
+
run: uv sync --extra dev --python python3.15
|
|
238
238
|
|
|
239
239
|
- name: Wait for MySQL connection
|
|
240
240
|
run: |
|
|
@@ -248,7 +248,7 @@ jobs:
|
|
|
248
248
|
PYTEST_HOST: 127.0.0.1
|
|
249
249
|
TERM: xterm
|
|
250
250
|
run: |
|
|
251
|
-
./.venv/bin/tox -e py3.
|
|
251
|
+
./.venv/bin/tox -e py3.15
|
|
252
252
|
|
|
253
253
|
docker-x86-build:
|
|
254
254
|
name: Build x86 Docker Image
|
|
@@ -47,7 +47,7 @@ jobs:
|
|
|
47
47
|
needs: [typecheck]
|
|
48
48
|
strategy:
|
|
49
49
|
matrix:
|
|
50
|
-
python-version: ["3.11", "3.12", "3.13", "3.14"]
|
|
50
|
+
python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
|
|
51
51
|
|
|
52
52
|
steps:
|
|
53
53
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
@@ -65,7 +65,7 @@ jobs:
|
|
|
65
65
|
sudo systemctl start mysql
|
|
66
66
|
|
|
67
67
|
- name: Install dependencies
|
|
68
|
-
run: uv sync --extra dev,llm,dataframe
|
|
68
|
+
run: uv sync --extra dev,llm,dataframe --python ${{ matrix.python-version }}
|
|
69
69
|
|
|
70
70
|
- name: Wait for MySQL connection
|
|
71
71
|
run: |
|
|
@@ -88,7 +88,7 @@ jobs:
|
|
|
88
88
|
strategy:
|
|
89
89
|
fail-fast: false
|
|
90
90
|
matrix:
|
|
91
|
-
python-version: ["3.
|
|
91
|
+
python-version: ["3.15"]
|
|
92
92
|
|
|
93
93
|
steps:
|
|
94
94
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
@@ -111,7 +111,7 @@ jobs:
|
|
|
111
111
|
brew services start mysql
|
|
112
112
|
|
|
113
113
|
- name: Install dependencies
|
|
114
|
-
run: uv sync --extra dev,llm,dataframe
|
|
114
|
+
run: uv sync --extra dev,llm,dataframe --python ${{ matrix.python-version }}
|
|
115
115
|
|
|
116
116
|
- name: Wait for MySQL connection
|
|
117
117
|
run: |
|
|
@@ -139,7 +139,7 @@ jobs:
|
|
|
139
139
|
strategy:
|
|
140
140
|
fail-fast: false
|
|
141
141
|
matrix:
|
|
142
|
-
python-version: ['3.
|
|
142
|
+
python-version: ['3.15']
|
|
143
143
|
|
|
144
144
|
steps:
|
|
145
145
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
@@ -155,7 +155,7 @@ jobs:
|
|
|
155
155
|
|
|
156
156
|
- name: Install dependencies
|
|
157
157
|
shell: cmd
|
|
158
|
-
run: uv sync --extra dev,llm,dataframe
|
|
158
|
+
run: uv sync --extra dev,llm,dataframe --python ${{ matrix.python-version }}
|
|
159
159
|
|
|
160
160
|
- name: Set up MySQL
|
|
161
161
|
uses: shogo82148/actions-setup-mysql@1d4ebc60ba1227dd13fc7e6ba845bd3997928d75 # v1.54.2
|
|
@@ -204,14 +204,14 @@ jobs:
|
|
|
204
204
|
shell: wsl-bash {0}
|
|
205
205
|
run: |
|
|
206
206
|
export PATH="$HOME/.local/bin:$PATH"
|
|
207
|
-
env PYTHONPATH=/usr/local/lib/python3.
|
|
207
|
+
env PYTHONPATH=/usr/local/lib/python3.15/site-packages pip install --upgrade --break-system-packages --prefix=/usr uv
|
|
208
208
|
|
|
209
209
|
- name: Install dependencies
|
|
210
210
|
shell: wsl-bash {0}
|
|
211
211
|
run: |
|
|
212
212
|
export PATH="$HOME/.local/bin:$PATH"
|
|
213
213
|
cd /root/mycli
|
|
214
|
-
uv sync --extra dev,llm,dataframe --python 3.
|
|
214
|
+
uv sync --extra dev,llm,dataframe --python 3.15
|
|
215
215
|
|
|
216
216
|
- name: Start MySQL in WSL
|
|
217
217
|
shell: wsl-bash {0}
|
|
@@ -239,8 +239,8 @@ jobs:
|
|
|
239
239
|
run: |
|
|
240
240
|
export PATH="$HOME/.local/bin:$PATH"
|
|
241
241
|
cd /root/mycli
|
|
242
|
-
uv run --python 3.
|
|
243
|
-
uv run --python 3.
|
|
242
|
+
uv run --python 3.15 -- coverage run -m pytest
|
|
243
|
+
uv run --python 3.15 -- coverage report -m --sort=Miss --skip-covered --skip-empty
|
|
244
244
|
|
|
245
245
|
build:
|
|
246
246
|
runs-on: ubuntu-26.04
|
|
@@ -255,16 +255,16 @@ jobs:
|
|
|
255
255
|
- name: Set up Python
|
|
256
256
|
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
257
257
|
with:
|
|
258
|
-
python-version: '3.
|
|
258
|
+
python-version: '3.15'
|
|
259
259
|
|
|
260
260
|
- name: Install dependencies
|
|
261
|
-
run: uv sync --extra llm,dataframe
|
|
261
|
+
run: uv sync --extra llm,dataframe --python 3.15
|
|
262
262
|
|
|
263
263
|
- name: Build
|
|
264
264
|
run: uv build
|
|
265
265
|
|
|
266
266
|
- name: Store the distribution packages
|
|
267
|
-
uses: actions/upload-artifact@
|
|
267
|
+
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
|
|
268
268
|
with:
|
|
269
269
|
name: python-packages
|
|
270
270
|
path: dist/
|
|
@@ -279,7 +279,7 @@ jobs:
|
|
|
279
279
|
id-token: write
|
|
280
280
|
steps:
|
|
281
281
|
- name: Download distribution packages
|
|
282
|
-
uses: actions/download-artifact@
|
|
282
|
+
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
|
|
283
283
|
with:
|
|
284
284
|
name: python-packages
|
|
285
285
|
path: dist/
|
|
@@ -105,7 +105,7 @@ To run the full test suite, execute `env -u PYTHONPATH uv run -- tox`.
|
|
|
105
105
|
|
|
106
106
|
#### Python Compatibility
|
|
107
107
|
|
|
108
|
-
Use Python features available from Python 3.11 through Python 3.
|
|
108
|
+
Use Python features available from Python 3.11 through Python 3.15.
|
|
109
109
|
Compatibility with Python 3.9 is not needed. Compatibility with Python
|
|
110
110
|
3.10 is not needed.
|
|
111
111
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mycli
|
|
3
|
-
Version: 2.29.
|
|
3
|
+
Version: 2.29.6
|
|
4
4
|
Summary: Rich MySQL terminal client with autocompletion, syntax highlighting, and dataframes
|
|
5
5
|
Author: Mycli Core Team
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -30,27 +30,27 @@ License-File: LICENSE.txt
|
|
|
30
30
|
License-File: AUTHORS.md
|
|
31
31
|
Requires-Dist: click~=8.5.0
|
|
32
32
|
Requires-Dist: clickdc~=0.1.1
|
|
33
|
-
Requires-Dist: cryptography~=50.0.
|
|
33
|
+
Requires-Dist: cryptography~=50.0.2
|
|
34
34
|
Requires-Dist: Pygments~=2.21.0
|
|
35
35
|
Requires-Dist: prompt_toolkit~=3.0.53
|
|
36
36
|
Requires-Dist: PyMySQL~=1.2.3
|
|
37
37
|
Requires-Dist: sqlparse~=0.6.0
|
|
38
|
-
Requires-Dist: sqlglot~=30.
|
|
39
|
-
Requires-Dist: sqlglotc~=30.
|
|
38
|
+
Requires-Dist: sqlglot~=30.23.0
|
|
39
|
+
Requires-Dist: sqlglotc~=30.23.0
|
|
40
40
|
Requires-Dist: configobj~=5.0.9
|
|
41
41
|
Requires-Dist: cli_helpers[styles]~=2.15.1
|
|
42
|
-
Requires-Dist: wcwidth~=0.9.
|
|
42
|
+
Requires-Dist: wcwidth~=0.9.2
|
|
43
43
|
Requires-Dist: pyperclip~=1.11.0
|
|
44
|
-
Requires-Dist: pycryptodomex~=3.
|
|
44
|
+
Requires-Dist: pycryptodomex~=3.24.0
|
|
45
45
|
Requires-Dist: rapidfuzz~=3.14.6
|
|
46
46
|
Requires-Dist: keyring~=25.7.0
|
|
47
47
|
Requires-Dist: jinja2~=3.1.6
|
|
48
|
+
Requires-Dist: markupsafe~=3.0.4
|
|
48
49
|
Requires-Dist: yaspin~=3.5.1
|
|
49
50
|
Provides-Extra: llm
|
|
50
51
|
Requires-Dist: llm~=0.36; extra == "llm"
|
|
51
52
|
Requires-Dist: setuptools==84.*; extra == "llm"
|
|
52
53
|
Requires-Dist: pip~=26.2.1; extra == "llm"
|
|
53
|
-
Requires-Dist: httpx2~=2.13.1; extra == "llm"
|
|
54
54
|
Provides-Extra: dataframe
|
|
55
55
|
Requires-Dist: polars~=2.0.0; extra == "dataframe"
|
|
56
56
|
Requires-Dist: altair~=6.3.0; extra == "dataframe"
|
|
@@ -59,16 +59,15 @@ Provides-Extra: all
|
|
|
59
59
|
Requires-Dist: mycli[dataframe,llm]; extra == "all"
|
|
60
60
|
Provides-Extra: dev
|
|
61
61
|
Requires-Dist: behave~=1.3.3; extra == "dev"
|
|
62
|
-
Requires-Dist: coverage~=7.
|
|
63
|
-
Requires-Dist: mypy~=2.
|
|
62
|
+
Requires-Dist: coverage~=7.16.2; extra == "dev"
|
|
63
|
+
Requires-Dist: mypy~=2.4.0; extra == "dev"
|
|
64
64
|
Requires-Dist: pexpect~=4.9.0; extra == "dev"
|
|
65
65
|
Requires-Dist: pytest~=9.1.1; extra == "dev"
|
|
66
66
|
Requires-Dist: pytest-cov~=7.1.0; extra == "dev"
|
|
67
67
|
Requires-Dist: pytest-random-order~=1.2.0; extra == "dev"
|
|
68
|
-
Requires-Dist: tox~=4.
|
|
69
|
-
Requires-Dist: pdbpp~=0.
|
|
68
|
+
Requires-Dist: tox~=4.64.9; extra == "dev"
|
|
69
|
+
Requires-Dist: pdbpp~=0.12.1; extra == "dev"
|
|
70
70
|
Requires-Dist: ruff~=0.16.5; extra == "dev"
|
|
71
|
-
Requires-Dist: virtualenv~=21.7.12; extra == "dev"
|
|
72
71
|
Dynamic: license-file
|
|
73
72
|
|
|
74
73
|
# mycli
|
|
@@ -1,3 +1,32 @@
|
|
|
1
|
+
v2.29.6 (2026/10/15)
|
|
2
|
+
==============
|
|
3
|
+
|
|
4
|
+
Bug Fixes
|
|
5
|
+
--------
|
|
6
|
+
* Add `less` to Docker image.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
v2.29.5 (2026/10/15)
|
|
10
|
+
==============
|
|
11
|
+
|
|
12
|
+
Internal
|
|
13
|
+
--------
|
|
14
|
+
* Lazy import compatibility with `ruff` v0.17.0.
|
|
15
|
+
* Upgrade `pycryptodomex` to v3.24.0.
|
|
16
|
+
* Upgrade `cryptography` to v50.0.2.
|
|
17
|
+
* Pin `markupsafe` to v3.0.4.
|
|
18
|
+
* Upgrade `wcwidth` to v0.9.2.
|
|
19
|
+
* Remove temporary dependency settings in `pyproject.toml`.
|
|
20
|
+
* Upgrade `sqlglot` to v30.23.0.
|
|
21
|
+
* Add Python 3.15 to CI.
|
|
22
|
+
* Switch to Python 3.15 by default in CI.
|
|
23
|
+
* Switch to Python 3.15 in Dockerfile.
|
|
24
|
+
* Upgrade `mypy` to v2.4.0.
|
|
25
|
+
* Upgrade `tox` to v4.64.9.
|
|
26
|
+
* Upgrade `coverage` to v7.16.2.
|
|
27
|
+
* Upgrade `pdbpp` to v0.12.1.
|
|
28
|
+
|
|
29
|
+
|
|
1
30
|
v2.29.4 (2026/10/11)
|
|
2
31
|
==============
|
|
3
32
|
|
|
@@ -2,9 +2,7 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
__lazy_modules__ = [
|
|
4
4
|
'io',
|
|
5
|
-
're',
|
|
6
5
|
'sys',
|
|
7
|
-
'typing',
|
|
8
6
|
'urllib.parse',
|
|
9
7
|
'click',
|
|
10
8
|
'mycli.config',
|
|
@@ -14,10 +12,10 @@ __lazy_modules__ = [
|
|
|
14
12
|
'mycli.main_modes.completions',
|
|
15
13
|
'mycli.main_modes.execute',
|
|
16
14
|
'mycli.main_modes.list_dsn',
|
|
17
|
-
'mycli.packages.special_commands.dsn_aliases',
|
|
18
|
-
'mycli.packages.utils.cli_utils',
|
|
19
15
|
'mycli.packages.credentials.password_sources',
|
|
20
16
|
'mycli.packages.integrations.vault.vault_credentials',
|
|
17
|
+
'mycli.packages.special_commands.dsn_aliases',
|
|
18
|
+
'mycli.packages.utils.cli_utils',
|
|
21
19
|
]
|
|
22
20
|
|
|
23
21
|
import os
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
3
|
__lazy_modules__ = [
|
|
4
|
-
'dataclasses',
|
|
5
4
|
'io',
|
|
5
|
+
'os',
|
|
6
6
|
'sys',
|
|
7
|
-
'textwrap',
|
|
8
7
|
'typing',
|
|
9
|
-
'
|
|
10
|
-
'clickdc',
|
|
11
|
-
'mycli',
|
|
8
|
+
# 'mycli', # todo: needed eagerly only for __version__
|
|
12
9
|
'mycli.cli_runner',
|
|
13
10
|
'mycli.client',
|
|
14
|
-
'mycli.constants',
|
|
15
11
|
'mycli.packages.utils.cli_utils',
|
|
16
12
|
]
|
|
17
13
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mycli
|
|
3
|
-
Version: 2.29.
|
|
3
|
+
Version: 2.29.6
|
|
4
4
|
Summary: Rich MySQL terminal client with autocompletion, syntax highlighting, and dataframes
|
|
5
5
|
Author: Mycli Core Team
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -30,27 +30,27 @@ License-File: LICENSE.txt
|
|
|
30
30
|
License-File: AUTHORS.md
|
|
31
31
|
Requires-Dist: click~=8.5.0
|
|
32
32
|
Requires-Dist: clickdc~=0.1.1
|
|
33
|
-
Requires-Dist: cryptography~=50.0.
|
|
33
|
+
Requires-Dist: cryptography~=50.0.2
|
|
34
34
|
Requires-Dist: Pygments~=2.21.0
|
|
35
35
|
Requires-Dist: prompt_toolkit~=3.0.53
|
|
36
36
|
Requires-Dist: PyMySQL~=1.2.3
|
|
37
37
|
Requires-Dist: sqlparse~=0.6.0
|
|
38
|
-
Requires-Dist: sqlglot~=30.
|
|
39
|
-
Requires-Dist: sqlglotc~=30.
|
|
38
|
+
Requires-Dist: sqlglot~=30.23.0
|
|
39
|
+
Requires-Dist: sqlglotc~=30.23.0
|
|
40
40
|
Requires-Dist: configobj~=5.0.9
|
|
41
41
|
Requires-Dist: cli_helpers[styles]~=2.15.1
|
|
42
|
-
Requires-Dist: wcwidth~=0.9.
|
|
42
|
+
Requires-Dist: wcwidth~=0.9.2
|
|
43
43
|
Requires-Dist: pyperclip~=1.11.0
|
|
44
|
-
Requires-Dist: pycryptodomex~=3.
|
|
44
|
+
Requires-Dist: pycryptodomex~=3.24.0
|
|
45
45
|
Requires-Dist: rapidfuzz~=3.14.6
|
|
46
46
|
Requires-Dist: keyring~=25.7.0
|
|
47
47
|
Requires-Dist: jinja2~=3.1.6
|
|
48
|
+
Requires-Dist: markupsafe~=3.0.4
|
|
48
49
|
Requires-Dist: yaspin~=3.5.1
|
|
49
50
|
Provides-Extra: llm
|
|
50
51
|
Requires-Dist: llm~=0.36; extra == "llm"
|
|
51
52
|
Requires-Dist: setuptools==84.*; extra == "llm"
|
|
52
53
|
Requires-Dist: pip~=26.2.1; extra == "llm"
|
|
53
|
-
Requires-Dist: httpx2~=2.13.1; extra == "llm"
|
|
54
54
|
Provides-Extra: dataframe
|
|
55
55
|
Requires-Dist: polars~=2.0.0; extra == "dataframe"
|
|
56
56
|
Requires-Dist: altair~=6.3.0; extra == "dataframe"
|
|
@@ -59,16 +59,15 @@ Provides-Extra: all
|
|
|
59
59
|
Requires-Dist: mycli[dataframe,llm]; extra == "all"
|
|
60
60
|
Provides-Extra: dev
|
|
61
61
|
Requires-Dist: behave~=1.3.3; extra == "dev"
|
|
62
|
-
Requires-Dist: coverage~=7.
|
|
63
|
-
Requires-Dist: mypy~=2.
|
|
62
|
+
Requires-Dist: coverage~=7.16.2; extra == "dev"
|
|
63
|
+
Requires-Dist: mypy~=2.4.0; extra == "dev"
|
|
64
64
|
Requires-Dist: pexpect~=4.9.0; extra == "dev"
|
|
65
65
|
Requires-Dist: pytest~=9.1.1; extra == "dev"
|
|
66
66
|
Requires-Dist: pytest-cov~=7.1.0; extra == "dev"
|
|
67
67
|
Requires-Dist: pytest-random-order~=1.2.0; extra == "dev"
|
|
68
|
-
Requires-Dist: tox~=4.
|
|
69
|
-
Requires-Dist: pdbpp~=0.
|
|
68
|
+
Requires-Dist: tox~=4.64.9; extra == "dev"
|
|
69
|
+
Requires-Dist: pdbpp~=0.12.1; extra == "dev"
|
|
70
70
|
Requires-Dist: ruff~=0.16.5; extra == "dev"
|
|
71
|
-
Requires-Dist: virtualenv~=21.7.12; extra == "dev"
|
|
72
71
|
Dynamic: license-file
|
|
73
72
|
|
|
74
73
|
# mycli
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
click~=8.5.0
|
|
2
2
|
clickdc~=0.1.1
|
|
3
|
-
cryptography~=50.0.
|
|
3
|
+
cryptography~=50.0.2
|
|
4
4
|
Pygments~=2.21.0
|
|
5
5
|
prompt_toolkit~=3.0.53
|
|
6
6
|
PyMySQL~=1.2.3
|
|
7
7
|
sqlparse~=0.6.0
|
|
8
|
-
sqlglot~=30.
|
|
9
|
-
sqlglotc~=30.
|
|
8
|
+
sqlglot~=30.23.0
|
|
9
|
+
sqlglotc~=30.23.0
|
|
10
10
|
configobj~=5.0.9
|
|
11
11
|
cli_helpers[styles]~=2.15.1
|
|
12
|
-
wcwidth~=0.9.
|
|
12
|
+
wcwidth~=0.9.2
|
|
13
13
|
pyperclip~=1.11.0
|
|
14
|
-
pycryptodomex~=3.
|
|
14
|
+
pycryptodomex~=3.24.0
|
|
15
15
|
rapidfuzz~=3.14.6
|
|
16
16
|
keyring~=25.7.0
|
|
17
17
|
jinja2~=3.1.6
|
|
18
|
+
markupsafe~=3.0.4
|
|
18
19
|
yaspin~=3.5.1
|
|
19
20
|
|
|
20
21
|
[all]
|
|
@@ -27,19 +28,17 @@ vl-convert-python~=1.9.0
|
|
|
27
28
|
|
|
28
29
|
[dev]
|
|
29
30
|
behave~=1.3.3
|
|
30
|
-
coverage~=7.
|
|
31
|
-
mypy~=2.
|
|
31
|
+
coverage~=7.16.2
|
|
32
|
+
mypy~=2.4.0
|
|
32
33
|
pexpect~=4.9.0
|
|
33
34
|
pytest~=9.1.1
|
|
34
35
|
pytest-cov~=7.1.0
|
|
35
36
|
pytest-random-order~=1.2.0
|
|
36
|
-
tox~=4.
|
|
37
|
-
pdbpp~=0.
|
|
37
|
+
tox~=4.64.9
|
|
38
|
+
pdbpp~=0.12.1
|
|
38
39
|
ruff~=0.16.5
|
|
39
|
-
virtualenv~=21.7.12
|
|
40
40
|
|
|
41
41
|
[llm]
|
|
42
42
|
llm~=0.36
|
|
43
43
|
setuptools==84.*
|
|
44
44
|
pip~=26.2.1
|
|
45
|
-
httpx2~=2.13.1
|
|
@@ -228,7 +228,7 @@ def test_ping_command_registration() -> None:
|
|
|
228
228
|
def test_status_uses_global_queries_decodes_bytes_and_formats_stats(monkeypatch) -> None:
|
|
229
229
|
monkeypatch.setattr(db_commands, '__version__', '9.9.9')
|
|
230
230
|
monkeypatch.setattr(db_commands.platform, 'python_implementation', lambda: 'CPython')
|
|
231
|
-
monkeypatch.setattr(db_commands.platform, 'python_version', lambda: '3.
|
|
231
|
+
monkeypatch.setattr(db_commands.platform, 'python_version', lambda: '3.15.0')
|
|
232
232
|
monkeypatch.setattr(db_commands.io_commands, 'is_pager_enabled', lambda: True)
|
|
233
233
|
monkeypatch.setattr(db_commands, 'get_ssl_cipher', lambda cur: 'TLS_AES_256_GCM_SHA384')
|
|
234
234
|
monkeypatch.setattr(db_commands, 'get_ssl_version', lambda cur: 'TLSv1.3')
|
|
@@ -273,7 +273,7 @@ def test_status_uses_global_queries_decodes_bytes_and_formats_stats(monkeypatch)
|
|
|
273
273
|
|
|
274
274
|
result = status(cursor)[0]
|
|
275
275
|
|
|
276
|
-
assert 'mycli 9.9.9 running on CPython 3.
|
|
276
|
+
assert 'mycli 9.9.9 running on CPython 3.15.0' in result.preamble
|
|
277
277
|
assert ('Connection id:', 42) in result.rows
|
|
278
278
|
assert ('Current database:', 'test_db') in result.rows
|
|
279
279
|
assert ('Current user:', 'test_user') in result.rows
|
|
@@ -349,7 +349,7 @@ def test_status_uses_system_default_pager_when_enabled_without_env(monkeypatch)
|
|
|
349
349
|
monkeypatch.setattr(db_commands.io_commands, 'is_pager_enabled', lambda: True)
|
|
350
350
|
monkeypatch.setattr(db_commands, 'get_ssl_version', lambda cur: 'TLS')
|
|
351
351
|
monkeypatch.setattr(db_commands.platform, 'python_implementation', lambda: 'CPython')
|
|
352
|
-
monkeypatch.setattr(db_commands.platform, 'python_version', lambda: '3.
|
|
352
|
+
monkeypatch.setattr(db_commands.platform, 'python_version', lambda: '3.15.0')
|
|
353
353
|
monkeypatch.delenv('PAGER', raising=False)
|
|
354
354
|
|
|
355
355
|
cursor = FakeCursor(
|
|
@@ -27,21 +27,22 @@ classifiers = [
|
|
|
27
27
|
dependencies = [
|
|
28
28
|
"click ~= 8.5.0",
|
|
29
29
|
"clickdc ~= 0.1.1",
|
|
30
|
-
"cryptography ~= 50.0.
|
|
30
|
+
"cryptography ~= 50.0.2",
|
|
31
31
|
"Pygments ~= 2.21.0",
|
|
32
32
|
"prompt_toolkit ~= 3.0.53",
|
|
33
33
|
"PyMySQL ~= 1.2.3",
|
|
34
34
|
"sqlparse ~= 0.6.0",
|
|
35
|
-
"sqlglot ~= 30.
|
|
36
|
-
"sqlglotc ~= 30.
|
|
35
|
+
"sqlglot ~= 30.23.0",
|
|
36
|
+
"sqlglotc ~= 30.23.0",
|
|
37
37
|
"configobj ~= 5.0.9",
|
|
38
38
|
"cli_helpers[styles] ~= 2.15.1",
|
|
39
|
-
"wcwidth ~= 0.9.
|
|
39
|
+
"wcwidth ~= 0.9.2",
|
|
40
40
|
"pyperclip ~= 1.11.0",
|
|
41
|
-
"pycryptodomex ~= 3.
|
|
41
|
+
"pycryptodomex ~= 3.24.0",
|
|
42
42
|
"rapidfuzz ~= 3.14.6",
|
|
43
43
|
"keyring ~= 25.7.0",
|
|
44
44
|
"jinja2 ~= 3.1.6",
|
|
45
|
+
"markupsafe ~= 3.0.4", # removeme: transitive dependency forced for binary 3.15 wheel
|
|
45
46
|
"yaspin ~= 3.5.1",
|
|
46
47
|
]
|
|
47
48
|
|
|
@@ -64,7 +65,6 @@ llm = [
|
|
|
64
65
|
"llm ~= 0.36",
|
|
65
66
|
"setuptools == 84.*", # Required by llm commands to install models
|
|
66
67
|
"pip ~= 26.2.1",
|
|
67
|
-
"httpx2 ~= 2.13.1", # transitive dependency forced for "uv audit"
|
|
68
68
|
]
|
|
69
69
|
dataframe = [
|
|
70
70
|
"polars ~= 2.0.0",
|
|
@@ -76,16 +76,15 @@ all = [
|
|
|
76
76
|
]
|
|
77
77
|
dev = [
|
|
78
78
|
"behave ~= 1.3.3",
|
|
79
|
-
"coverage ~= 7.
|
|
80
|
-
"mypy ~= 2.
|
|
79
|
+
"coverage ~= 7.16.2",
|
|
80
|
+
"mypy ~= 2.4.0",
|
|
81
81
|
"pexpect ~= 4.9.0",
|
|
82
82
|
"pytest ~= 9.1.1",
|
|
83
83
|
"pytest-cov ~= 7.1.0",
|
|
84
84
|
"pytest-random-order ~= 1.2.0",
|
|
85
|
-
"tox ~= 4.
|
|
86
|
-
"pdbpp ~= 0.
|
|
85
|
+
"tox ~= 4.64.9",
|
|
86
|
+
"pdbpp ~= 0.12.1",
|
|
87
87
|
"ruff ~= 0.16.5", # keep in sync with the tool.tox.env.style stanza below
|
|
88
|
-
"virtualenv ~= 21.7.12", # transitive dependency forced for "uv audit"
|
|
89
88
|
]
|
|
90
89
|
|
|
91
90
|
[project.scripts]
|
|
@@ -102,8 +101,8 @@ exclude-newer = '1 week'
|
|
|
102
101
|
|
|
103
102
|
[tool.uv.exclude-newer-package]
|
|
104
103
|
cli_helpers = false
|
|
105
|
-
|
|
106
|
-
|
|
104
|
+
sqlglot = false # removeme after 2026-10-22
|
|
105
|
+
sqlglotc = false # removeme after 2026-10-22
|
|
107
106
|
|
|
108
107
|
[tool.ruff]
|
|
109
108
|
target-version = 'py311'
|
|
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
|