execsql2 2.0.0a2__tar.gz → 2.0.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.
Files changed (197) hide show
  1. {execsql2-2.0.0a2 → execsql2-2.0.1}/.github/workflows/ci-cd.yml +1 -1
  2. {execsql2-2.0.0a2 → execsql2-2.0.1}/PKG-INFO +1 -1
  3. {execsql2-2.0.0a2 → execsql2-2.0.1}/justfile +0 -4
  4. {execsql2-2.0.0a2 → execsql2-2.0.1}/pyproject.toml +3 -9
  5. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/state.py +3 -7
  6. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_package.py +2 -2
  7. {execsql2-2.0.0a2 → execsql2-2.0.1}/uv.lock +1 -1
  8. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/changelog-manager.md +0 -0
  9. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/code-oracle.md +0 -0
  10. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/code-reviewer.md +0 -0
  11. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/docs-author.md +0 -0
  12. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/migration-coder.md +0 -0
  13. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/monolith-navigator.md +0 -0
  14. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/agents/test-engineer.md +0 -0
  15. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/commands/code-oracle.md +0 -0
  16. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/commands/migrate.md +0 -0
  17. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/commands/review-changes.md +0 -0
  18. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/commands/test-module.md +0 -0
  19. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/commands/update-changelog.md +0 -0
  20. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/commands/where-is.md +0 -0
  21. {execsql2-2.0.0a2 → execsql2-2.0.1}/.claude/project_context.md +0 -0
  22. {execsql2-2.0.0a2 → execsql2-2.0.1}/.gitignore +0 -0
  23. {execsql2-2.0.0a2 → execsql2-2.0.1}/.pre-commit-config.yaml +0 -0
  24. {execsql2-2.0.0a2 → execsql2-2.0.1}/.python-version +0 -0
  25. {execsql2-2.0.0a2 → execsql2-2.0.1}/.readthedocs.yaml +0 -0
  26. {execsql2-2.0.0a2 → execsql2-2.0.1}/CHANGELOG.md +0 -0
  27. {execsql2-2.0.0a2 → execsql2-2.0.1}/CONTRIBUTING.md +0 -0
  28. {execsql2-2.0.0a2 → execsql2-2.0.1}/LICENSE.txt +0 -0
  29. {execsql2-2.0.0a2 → execsql2-2.0.1}/NOTICE +0 -0
  30. {execsql2-2.0.0a2 → execsql2-2.0.1}/README.md +0 -0
  31. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/change_log.md +0 -0
  32. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/configuration.md +0 -0
  33. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/contributors.md +0 -0
  34. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/copyright.md +0 -0
  35. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/debugging.md +0 -0
  36. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/documentation.md +0 -0
  37. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/encoding.md +0 -0
  38. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/examples.md +0 -0
  39. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/Compare_planets.png +0 -0
  40. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/actions.png +0 -0
  41. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/actions2.png +0 -0
  42. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/checkboxes.png +0 -0
  43. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/connect.b64 +0 -0
  44. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/connect.png +0 -0
  45. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/create_conf.png +0 -0
  46. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/data_error1_screenshot.jpg +0 -0
  47. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/entry_form.png +0 -0
  48. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/execsql_console.png +0 -0
  49. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/execsql_logo_01.png +0 -0
  50. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/fatals.png +0 -0
  51. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/logo_small.png +0 -0
  52. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/pause_terminal.png +0 -0
  53. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/pause_terminal_sm.b64 +0 -0
  54. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/pause_terminal_sm.png +0 -0
  55. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/prompt_compare.png +0 -0
  56. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/set_build_commands.jpg +0 -0
  57. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/unit_conversions.b64 +0 -0
  58. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/unit_conversions_029.png +0 -0
  59. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/unmatched.png +0 -0
  60. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/images/vim_execsql_highlight.png +0 -0
  61. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/index.md +0 -0
  62. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/installation.md +0 -0
  63. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/logging.md +0 -0
  64. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/metacommands.md +0 -0
  65. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/requirements.md +0 -0
  66. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/sql_syntax.md +0 -0
  67. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/substitution_vars.md +0 -0
  68. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/syntax.md +0 -0
  69. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/usage.md +0 -0
  70. {execsql2-2.0.0a2 → execsql2-2.0.1}/docs/using_scripts.md +0 -0
  71. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/__init__.py +0 -0
  72. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/__main__.py +0 -0
  73. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/cli.py +0 -0
  74. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/config.py +0 -0
  75. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/constants.py +0 -0
  76. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/__init__.py +0 -0
  77. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/access.py +0 -0
  78. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/base.py +0 -0
  79. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/dsn.py +0 -0
  80. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/duckdb.py +0 -0
  81. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/factory.py +0 -0
  82. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/firebird.py +0 -0
  83. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/mysql.py +0 -0
  84. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/oracle.py +0 -0
  85. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/postgres.py +0 -0
  86. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/sqlite.py +0 -0
  87. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/db/sqlserver.py +0 -0
  88. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exceptions.py +0 -0
  89. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/__init__.py +0 -0
  90. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/base.py +0 -0
  91. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/delimited.py +0 -0
  92. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/duckdb.py +0 -0
  93. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/feather.py +0 -0
  94. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/html.py +0 -0
  95. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/json.py +0 -0
  96. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/latex.py +0 -0
  97. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/ods.py +0 -0
  98. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/pretty.py +0 -0
  99. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/raw.py +0 -0
  100. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/sqlite.py +0 -0
  101. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/templates.py +0 -0
  102. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/values.py +0 -0
  103. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/xls.py +0 -0
  104. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/xml.py +0 -0
  105. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/exporters/zip.py +0 -0
  106. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/format.py +0 -0
  107. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/gui/__init__.py +0 -0
  108. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/gui/base.py +0 -0
  109. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/gui/console.py +0 -0
  110. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/gui/desktop.py +0 -0
  111. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/gui/tui.py +0 -0
  112. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/importers/__init__.py +0 -0
  113. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/importers/base.py +0 -0
  114. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/importers/csv.py +0 -0
  115. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/importers/feather.py +0 -0
  116. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/importers/ods.py +0 -0
  117. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/importers/xls.py +0 -0
  118. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/__init__.py +0 -0
  119. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/conditions.py +0 -0
  120. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/connect.py +0 -0
  121. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/control.py +0 -0
  122. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/data.py +0 -0
  123. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/debug.py +0 -0
  124. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/io.py +0 -0
  125. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/prompt.py +0 -0
  126. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/script_ext.py +0 -0
  127. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/metacommands/system.py +0 -0
  128. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/models.py +0 -0
  129. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/parser.py +0 -0
  130. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/script.py +0 -0
  131. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/types.py +0 -0
  132. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/__init__.py +0 -0
  133. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/auth.py +0 -0
  134. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/crypto.py +0 -0
  135. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/datetime.py +0 -0
  136. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/errors.py +0 -0
  137. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/fileio.py +0 -0
  138. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/gui.py +0 -0
  139. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/mail.py +0 -0
  140. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/numeric.py +0 -0
  141. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/regex.py +0 -0
  142. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/strings.py +0 -0
  143. {execsql2-2.0.0a2 → execsql2-2.0.1}/src/execsql/utils/timer.py +0 -0
  144. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/READ_ME.rst +0 -0
  145. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/config_settings.sqlite +0 -0
  146. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/example_config_prompt.sql +0 -0
  147. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/execsql.conf +0 -0
  148. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/make_config_db.sql +0 -0
  149. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/md_compare.sql +0 -0
  150. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/md_glossary.sql +0 -0
  151. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/md_upsert.sql +0 -0
  152. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/pg_compare.sql +0 -0
  153. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/pg_glossary.sql +0 -0
  154. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/pg_upsert.sql +0 -0
  155. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/script_template.sql +0 -0
  156. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/ss_compare.sql +0 -0
  157. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/ss_glossary.sql +0 -0
  158. {execsql2-2.0.0a2 → execsql2-2.0.1}/templates/ss_upsert.sql +0 -0
  159. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/__init__.py +0 -0
  160. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/conftest.py +0 -0
  161. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/db/__init__.py +0 -0
  162. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/db/test_base.py +0 -0
  163. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/db/test_duckdb.py +0 -0
  164. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/db/test_factory.py +0 -0
  165. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/db/test_sqlite.py +0 -0
  166. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/__init__.py +0 -0
  167. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/test_base.py +0 -0
  168. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/test_db.py +0 -0
  169. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/test_delimited.py +0 -0
  170. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/test_exporters.py +0 -0
  171. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/test_html_latex.py +0 -0
  172. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/exporters/test_zip.py +0 -0
  173. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/gui/__init__.py +0 -0
  174. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/gui/test_backends.py +0 -0
  175. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/importers/__init__.py +0 -0
  176. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/importers/test_csv_importer.py +0 -0
  177. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_cli.py +0 -0
  178. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_config.py +0 -0
  179. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_config_data.py +0 -0
  180. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_constants.py +0 -0
  181. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_exceptions.py +0 -0
  182. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_format.py +0 -0
  183. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_metacommands.py +0 -0
  184. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_models.py +0 -0
  185. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_parser.py +0 -0
  186. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_script.py +0 -0
  187. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_state.py +0 -0
  188. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/test_types.py +0 -0
  189. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/__init__.py +0 -0
  190. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_crypto.py +0 -0
  191. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_datetime.py +0 -0
  192. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_errors.py +0 -0
  193. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_numeric.py +0 -0
  194. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_regex.py +0 -0
  195. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_strings.py +0 -0
  196. {execsql2-2.0.0a2 → execsql2-2.0.1}/tests/utils/test_timer.py +0 -0
  197. {execsql2-2.0.0a2 → execsql2-2.0.1}/zensical.toml +0 -0
@@ -6,7 +6,7 @@ on:
6
6
  branches:
7
7
  - main
8
8
  tags:
9
- - "v*.*.*"
9
+ - "v*"
10
10
  pull_request:
11
11
 
12
12
  concurrency:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: execsql2
3
- Version: 2.0.0a2
3
+ Version: 2.0.1
4
4
  Summary: Runs a SQL script against a PostgreSQL, SQLite, MariaDB/MySQL, DuckDB, Firebird, MS-Access, MS-SQL-Server, or Oracle database, or an ODBC DSN. Provides metacommands to import and export data, copy data between databases, conditionally execute SQL and metacommands, and dynamically alter SQL and metacommands with substitution variables.
5
5
  Project-URL: Repository, https://github.com/geocoug/execsql2
6
6
  Project-URL: Issues, https://github.com/geocoug/execsql2/issues
@@ -78,7 +78,3 @@ bump-minor:
78
78
  # Bump major version (e.g. 1.2.3 → 2.0.0)
79
79
  bump-major:
80
80
  uv run bump-my-version bump major
81
-
82
- # Tag a pre-release version (e.g. just bump-pre 2.0.0a1)
83
- bump-pre version:
84
- uv run bump-my-version bump --new-version {{version}}
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "execsql2"
7
- version = "2.0.0a2"
7
+ version = "2.0.1"
8
8
  description = "Runs a SQL script against a PostgreSQL, SQLite, MariaDB/MySQL, DuckDB, Firebird, MS-Access, MS-SQL-Server, or Oracle database, or an ODBC DSN. Provides metacommands to import and export data, copy data between databases, conditionally execute SQL and metacommands, and dynamically alter SQL and metacommands with substitution variables."
9
9
  readme = { file = "README.md", content-type = "text/markdown" }
10
10
  license = { file = "LICENSE.txt" }
@@ -130,21 +130,15 @@ skip-magic-trailing-comma = false
130
130
  line-ending = "auto"
131
131
 
132
132
  [tool.bumpversion]
133
- current_version = "2.0.0a2"
134
- parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)((?P<pre_l>[a-z]+)(?P<pre_n>\\d+))?"
135
- serialize = [
136
- "{major}.{minor}.{patch}{pre_l}{pre_n}",
137
- "{major}.{minor}.{patch}",
138
- ]
133
+ current_version = "2.0.1"
139
134
  commit = true
140
135
  commit_args = "--no-verify"
141
136
  tag = true
137
+ tag_name = "v{new_version}"
142
138
  pre_commit_hooks = ["uv lock", "git add uv.lock"]
143
139
 
144
140
  [[tool.bumpversion.files]]
145
141
  filename = "pyproject.toml"
146
- search = 'version = "{current_version}"\ndescription'
147
- replace = 'version = "{new_version}"\ndescription'
148
142
 
149
143
  [tool.pytest.ini_options]
150
144
  addopts = [
@@ -170,14 +170,10 @@ gui_manager_thread: Any = None
170
170
  try:
171
171
  from execsql import __version__ as _pkg_version
172
172
 
173
- import re as _re
174
-
175
173
  _vparts = _pkg_version.split(".")
176
- # Strip pre-release suffix (e.g. "0a1" → "0") before converting to int.
177
- _int = lambda s: int(_re.match(r"\d+", s).group())
178
- primary_vno: int = _int(_vparts[0]) if len(_vparts) > 0 else 0
179
- secondary_vno: int = _int(_vparts[1]) if len(_vparts) > 1 else 0
180
- tertiary_vno: int = _int(_vparts[2]) if len(_vparts) > 2 else 0
174
+ primary_vno: int = int(_vparts[0]) if len(_vparts) > 0 else 0
175
+ secondary_vno: int = int(_vparts[1]) if len(_vparts) > 1 else 0
176
+ tertiary_vno: int = int(_vparts[2]) if len(_vparts) > 2 else 0
181
177
  except Exception:
182
178
  primary_vno = 1
183
179
  secondary_vno = 130
@@ -8,8 +8,8 @@ import re
8
8
  def test_version_string_format():
9
9
  import execsql
10
10
 
11
- assert re.match(r"^\d+\.\d+\.\d+([a-z]\d+)?$", execsql.__version__), (
12
- f"__version__ {execsql.__version__!r} does not match PEP 440 version format"
11
+ assert re.match(r"^\d+\.\d+\.\d+$", execsql.__version__), (
12
+ f"__version__ {execsql.__version__!r} does not match semver format"
13
13
  )
14
14
 
15
15
 
@@ -606,7 +606,7 @@ wheels = [
606
606
 
607
607
  [[package]]
608
608
  name = "execsql2"
609
- version = "2.0.0a2"
609
+ version = "2.0.1"
610
610
  source = { editable = "." }
611
611
  dependencies = [
612
612
  { name = "rich" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes