sqlsaber 0.32.0__tar.gz → 0.32.1__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.

Potentially problematic release.


This version of sqlsaber might be problematic. Click here for more details.

Files changed (123) hide show
  1. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/PKG-INFO +1 -1
  2. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/changelog.md +6 -0
  3. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/pyproject.toml +1 -1
  4. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/auth.py +1 -1
  5. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/uv.lock +1 -1
  6. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.github/workflows/claude-code-review.yml +0 -0
  7. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.github/workflows/claude.yml +0 -0
  8. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.github/workflows/deploy-docs.yml +0 -0
  9. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.github/workflows/publish.yml +0 -0
  10. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.github/workflows/test.yml +0 -0
  11. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.gitignore +0 -0
  12. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/.python-version +0 -0
  13. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/AGENTS.md +0 -0
  14. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/CLAUDE.md +0 -0
  15. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/LICENSE +0 -0
  16. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/README.md +0 -0
  17. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/.gitignore +0 -0
  18. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/.vscode/extensions.json +0 -0
  19. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/.vscode/launch.json +0 -0
  20. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/CLAUDE.md +0 -0
  21. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/astro.config.mjs +0 -0
  22. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/package-lock.json +0 -0
  23. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/package.json +0 -0
  24. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/public/CNAME +0 -0
  25. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/public/favicon.svg +0 -0
  26. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/assets/sqlsaber.gif +0 -0
  27. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/authentication.mdx +0 -0
  28. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/database-setup.mdx +0 -0
  29. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/getting-started.mdx +0 -0
  30. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/memory.mdx +0 -0
  31. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/models.mdx +0 -0
  32. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/queries.mdx +0 -0
  33. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/guides/threads.md +0 -0
  34. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/index.mdx +0 -0
  35. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/installation.mdx +0 -0
  36. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content/docs/reference/commands.md +0 -0
  37. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/content.config.ts +0 -0
  38. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/src/styles/global.css +0 -0
  39. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/docs/tsconfig.json +0 -0
  40. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/legislators.db +0 -0
  41. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/pytest.ini +0 -0
  42. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/sqlsaber.gif +0 -0
  43. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/sqlsaber.svg +0 -0
  44. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/__init__.py +0 -0
  45. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/__main__.py +0 -0
  46. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/agents/__init__.py +0 -0
  47. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/agents/base.py +0 -0
  48. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/agents/pydantic_ai_agent.py +0 -0
  49. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/application/__init__.py +0 -0
  50. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/application/auth_setup.py +0 -0
  51. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/application/db_setup.py +0 -0
  52. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/application/model_selection.py +0 -0
  53. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/application/prompts.py +0 -0
  54. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/__init__.py +0 -0
  55. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/commands.py +0 -0
  56. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/completers.py +0 -0
  57. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/database.py +0 -0
  58. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/display.py +0 -0
  59. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/interactive.py +0 -0
  60. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/memory.py +0 -0
  61. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/models.py +0 -0
  62. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/onboarding.py +0 -0
  63. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/streaming.py +0 -0
  64. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/theme.py +0 -0
  65. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/cli/threads.py +0 -0
  66. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/__init__.py +0 -0
  67. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/api_keys.py +0 -0
  68. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/auth.py +0 -0
  69. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/database.py +0 -0
  70. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/logging.py +0 -0
  71. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/oauth_flow.py +0 -0
  72. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/oauth_tokens.py +0 -0
  73. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/providers.py +0 -0
  74. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/config/settings.py +0 -0
  75. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/__init__.py +0 -0
  76. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/base.py +0 -0
  77. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/csv.py +0 -0
  78. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/duckdb.py +0 -0
  79. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/mysql.py +0 -0
  80. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/postgresql.py +0 -0
  81. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/resolver.py +0 -0
  82. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/schema.py +0 -0
  83. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/database/sqlite.py +0 -0
  84. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/memory/__init__.py +0 -0
  85. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/memory/manager.py +0 -0
  86. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/memory/storage.py +0 -0
  87. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/theme/__init__.py +0 -0
  88. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/theme/manager.py +0 -0
  89. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/threads/__init__.py +0 -0
  90. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/threads/storage.py +0 -0
  91. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/tools/__init__.py +0 -0
  92. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/tools/base.py +0 -0
  93. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/tools/registry.py +0 -0
  94. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/tools/sql_guard.py +0 -0
  95. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/src/sqlsaber/tools/sql_tools.py +0 -0
  96. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/__init__.py +0 -0
  97. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/conftest.py +0 -0
  98. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_cli/__init__.py +0 -0
  99. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_cli/test_auth_reset.py +0 -0
  100. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_cli/test_commands.py +0 -0
  101. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_cli/test_threads.py +0 -0
  102. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_config/__init__.py +0 -0
  103. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_config/test_database.py +0 -0
  104. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_config/test_oauth.py +0 -0
  105. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_config/test_providers.py +0 -0
  106. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_config/test_settings.py +0 -0
  107. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/__init__.py +0 -0
  108. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_connection.py +0 -0
  109. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_csv_connection.py +0 -0
  110. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_csv_module.py +0 -0
  111. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_duckdb_module.py +0 -0
  112. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_schema.py +0 -0
  113. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_schema_display.py +0 -0
  114. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_sqlite_module.py +0 -0
  115. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database/test_timeout.py +0 -0
  116. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_database_resolver.py +0 -0
  117. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_theme/test_manager.py +0 -0
  118. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_threads_storage.py +0 -0
  119. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_tools/__init__.py +0 -0
  120. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_tools/test_base.py +0 -0
  121. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_tools/test_registry.py +0 -0
  122. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_tools/test_sql_guard.py +0 -0
  123. {sqlsaber-0.32.0 → sqlsaber-0.32.1}/tests/test_tools/test_sql_tools.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlsaber
3
- Version: 0.32.0
3
+ Version: 0.32.1
4
4
  Summary: SQLsaber - Open-source agentic SQL assistant
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.12
@@ -9,6 +9,12 @@ All notable changes to SQLsaber will be documented here.
9
9
 
10
10
  ---
11
11
 
12
+ ### v0.32.1 - 2025-10-15
13
+
14
+ #### Fixed
15
+
16
+ - Prevented `saber auth setup` from crashing when launching Anthropic OAuth by moving the browser authentication flow onto a background thread, avoiding nested asyncio event loops.
17
+
12
18
  ### v0.32.0 - 2025-10-14
13
19
 
14
20
  #### Added
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sqlsaber"
3
- version = "0.32.0"
3
+ version = "0.32.1"
4
4
  description = "SQLsaber - Open-source agentic SQL assistant"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"
@@ -44,7 +44,7 @@ def setup():
44
44
  api_key_manager=api_key_manager,
45
45
  allow_oauth=True,
46
46
  default_provider="anthropic",
47
- run_oauth_in_thread=False,
47
+ run_oauth_in_thread=True, # questionary's sync prompts need their own event loop
48
48
  )
49
49
  return success, provider
50
50
 
@@ -1922,7 +1922,7 @@ wheels = [
1922
1922
 
1923
1923
  [[package]]
1924
1924
  name = "sqlsaber"
1925
- version = "0.32.0"
1925
+ version = "0.32.1"
1926
1926
  source = { editable = "." }
1927
1927
  dependencies = [
1928
1928
  { name = "aiomysql" },
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