sqlalchemy-cratedb 0.36.0__tar.gz → 0.36.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 (156) hide show
  1. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/CHANGES.md +3 -0
  2. {sqlalchemy_cratedb-0.36.0/src/sqlalchemy_cratedb.egg-info → sqlalchemy_cratedb-0.36.1}/PKG-INFO +2 -2
  3. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/pyproject.toml +1 -1
  4. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1/src/sqlalchemy_cratedb.egg-info}/PKG-INFO +2 -2
  5. sqlalchemy_cratedb-0.36.1/src/sqlalchemy_cratedb.egg-info/SOURCES.txt +34 -0
  6. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb.egg-info/requires.txt +1 -1
  7. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/advanced-querying.rst.txt +0 -335
  8. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/backlog.md.txt +0 -12
  9. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/index.rst.txt +0 -30
  10. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/sqlalchemy/advanced-querying.rst.txt +0 -335
  11. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/sqlalchemy/crud.rst.txt +0 -301
  12. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/sqlalchemy/dataframe.rst.txt +0 -258
  13. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/sqlalchemy/getting-started.rst.txt +0 -211
  14. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/sqlalchemy/inspection-reflection.rst.txt +0 -126
  15. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/by-example/sqlalchemy/working-with-types.rst.txt +0 -265
  16. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/crud.rst.txt +0 -301
  17. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/data-types.rst.txt +0 -85
  18. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/dataframe.rst.txt +0 -258
  19. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/getting-started.rst.txt +0 -211
  20. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/index-all.rst.txt +0 -18
  21. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/index.rst.txt +0 -215
  22. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/inspection-reflection.rst.txt +0 -126
  23. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/install.rst.txt +0 -52
  24. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/overview.rst.txt +0 -719
  25. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/sqlalchemy.rst.txt +0 -719
  26. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_sources/working-with-types.rst.txt +0 -265
  27. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/_static/bundle/main.js.LICENSE.txt +0 -63
  28. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build/output.txt +0 -28
  29. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/Babel-2.14.0.dist-info/entry_points.txt +0 -20
  30. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/Babel-2.14.0.dist-info/top_level.txt +0 -1
  31. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/Jinja2-3.1.2.dist-info/entry_points.txt +0 -2
  32. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/Jinja2-3.1.2.dist-info/top_level.txt +0 -1
  33. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/MarkupSafe-2.1.3.dist-info/top_level.txt +0 -1
  34. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/PyYAML-6.0.1.dist-info/top_level.txt +0 -2
  35. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/alabaster-0.7.13.dist-info/entry_points.txt +0 -3
  36. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/alabaster-0.7.13.dist-info/top_level.txt +0 -1
  37. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/certifi-2023.11.17.dist-info/top_level.txt +0 -1
  38. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/charset_normalizer-3.3.2.dist-info/entry_points.txt +0 -2
  39. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/charset_normalizer-3.3.2.dist-info/top_level.txt +0 -1
  40. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/colorama-0.4.6.dist-info/licenses/LICENSE.txt +0 -27
  41. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/crate/theme/rtd/crate/static/bundle/main.js.LICENSE.txt +0 -63
  42. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/crate_docs_theme-0.29.9.dist-info/top_level.txt +0 -1
  43. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/README.txt +0 -17
  44. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isoamsa.txt +0 -162
  45. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isoamsb.txt +0 -126
  46. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isoamsc.txt +0 -29
  47. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isoamsn.txt +0 -96
  48. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isoamso.txt +0 -62
  49. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isoamsr.txt +0 -191
  50. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isobox.txt +0 -46
  51. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isocyr1.txt +0 -73
  52. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isocyr2.txt +0 -32
  53. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isodia.txt +0 -20
  54. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isogrk1.txt +0 -55
  55. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isogrk2.txt +0 -26
  56. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isogrk3.txt +0 -52
  57. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isogrk4-wide.txt +0 -49
  58. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isogrk4.txt +0 -8
  59. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isolat1.txt +0 -68
  60. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isolat2.txt +0 -128
  61. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isomfrk-wide.txt +0 -58
  62. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isomfrk.txt +0 -11
  63. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isomopf-wide.txt +0 -32
  64. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isomopf.txt +0 -13
  65. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isomscr-wide.txt +0 -58
  66. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isomscr.txt +0 -17
  67. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isonum.txt +0 -82
  68. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isopub.txt +0 -90
  69. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/isotech.txt +0 -168
  70. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/mmlalias.txt +0 -554
  71. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/mmlextra-wide.txt +0 -113
  72. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/mmlextra.txt +0 -87
  73. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/s5defs.txt +0 -68
  74. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/xhtml1-lat1.txt +0 -102
  75. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/xhtml1-special.txt +0 -37
  76. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/parsers/rst/include/xhtml1-symbol.txt +0 -130
  77. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/writers/html4css1/template.txt +0 -8
  78. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/writers/html5_polyglot/template.txt +0 -8
  79. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/writers/pep_html/template.txt +0 -29
  80. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils/writers/s5_html/themes/README.txt +0 -6
  81. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils-0.16.dist-info/COPYING.txt +0 -137
  82. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/docutils-0.16.dist-info/top_level.txt +0 -1
  83. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/imagesize-1.4.1.dist-info/top_level.txt +0 -1
  84. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/linkify_it_py-1.0.3.dist-info/top_level.txt +0 -1
  85. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/livereload-2.6.3.dist-info/entry_points.txt +0 -2
  86. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/livereload-2.6.3.dist-info/top_level.txt +0 -1
  87. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/markdown_it_py-2.2.0.dist-info/entry_points.txt +0 -3
  88. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/myst_parser-1.0.0.dist-info/entry_points.txt +0 -10
  89. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/pip/_vendor/vendor.txt +0 -24
  90. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/pip-23.3.2.dist-info/AUTHORS.txt +0 -753
  91. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/pip-23.3.2.dist-info/LICENSE.txt +0 -20
  92. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/pip-23.3.2.dist-info/entry_points.txt +0 -4
  93. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/pip-23.3.2.dist-info/top_level.txt +0 -1
  94. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/pygments-2.17.2.dist-info/entry_points.txt +0 -2
  95. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/requests-2.31.0.dist-info/top_level.txt +0 -1
  96. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/setuptools-68.2.2.dist-info/entry_points.txt +0 -56
  97. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/setuptools-68.2.2.dist-info/top_level.txt +0 -3
  98. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/six-1.16.0.dist-info/top_level.txt +0 -1
  99. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/snowballstemmer-2.2.0.dist-info/top_level.txt +0 -1
  100. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx-5.3.0.dist-info/entry_points.txt +0 -9
  101. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx_autobuild-2021.3.14.dist-info/entry_points.txt +0 -3
  102. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx_copybutton-0.5.2.dist-info/top_level.txt +0 -1
  103. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx_design/compiled/material-icons_VERSION.txt +0 -3
  104. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx_design_elements-0.2.1.dist-info/top_level.txt +0 -1
  105. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx_sitemap-2.5.1.dist-info/top_level.txt +0 -1
  106. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinx_togglebutton-0.3.2.dist-info/top_level.txt +0 -1
  107. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxcontrib_jsmath-1.0.1.dist-info/namespace_packages.txt +0 -1
  108. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxcontrib_jsmath-1.0.1.dist-info/top_level.txt +0 -1
  109. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxcontrib_mermaid-0.9.2.dist-info/namespace_packages.txt +0 -1
  110. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxcontrib_mermaid-0.9.2.dist-info/top_level.txt +0 -1
  111. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxcontrib_plantuml-0.27.dist-info/namespace_packages.txt +0 -1
  112. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxcontrib_plantuml-0.27.dist-info/top_level.txt +0 -1
  113. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/sphinxext_opengraph-0.9.1.dist-info/top_level.txt +0 -1
  114. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/tornado/test/static/robots.txt +0 -2
  115. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/tornado/test/static_foo.txt +0 -2
  116. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/tornado-6.4.dist-info/top_level.txt +0 -1
  117. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/uc_micro_py-1.0.2.dist-info/top_level.txt +0 -1
  118. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/urllib3-2.1.0.dist-info/licenses/LICENSE.txt +0 -21
  119. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/wheel/vendored/vendor.txt +0 -1
  120. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/wheel-0.42.0.dist-info/LICENSE.txt +0 -21
  121. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.venv/lib/python3.11/site-packages/wheel-0.42.0.dist-info/entry_points.txt +0 -6
  122. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/common-build/requirements.txt +0 -10
  123. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/docs/_extra/robots.txt +0 -2
  124. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/docs/requirements.txt +0 -2
  125. sqlalchemy_cratedb-0.36.0/docs/.crate-docs/helpers/preview/etc/requirements.txt +0 -3
  126. sqlalchemy_cratedb-0.36.0/docs/_extra/robots.txt +0 -4
  127. sqlalchemy_cratedb-0.36.0/src/sqlalchemy_cratedb.egg-info/SOURCES.txt +0 -154
  128. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/CODE_OF_CONDUCT.md +0 -0
  129. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/CONTRIBUTING.md +0 -0
  130. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/DEVELOP.md +0 -0
  131. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/LICENSE +0 -0
  132. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/MANIFEST.in +0 -0
  133. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/NOTICE +0 -0
  134. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/README.md +0 -0
  135. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/backlog.md +0 -0
  136. {sqlalchemy_cratedb-0.36.0/docs/.crate-docs/.build → sqlalchemy_cratedb-0.36.1/docs/_extra}/robots.txt +0 -0
  137. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/docs/requirements.txt +0 -0
  138. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/setup.cfg +0 -0
  139. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/__init__.py +0 -0
  140. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/compat/__init__.py +0 -0
  141. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/compat/api13.py +0 -0
  142. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/compat/core10.py +0 -0
  143. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/compat/core14.py +0 -0
  144. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/compat/core20.py +0 -0
  145. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/compiler.py +0 -0
  146. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/dialect.py +0 -0
  147. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/predicate.py +0 -0
  148. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/sa_version.py +0 -0
  149. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/support.py +0 -0
  150. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/type/__init__.py +0 -0
  151. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/type/array.py +0 -0
  152. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/type/geo.py +0 -0
  153. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb/type/object.py +0 -0
  154. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb.egg-info/dependency_links.txt +0 -0
  155. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb.egg-info/entry_points.txt +0 -0
  156. {sqlalchemy_cratedb-0.36.0 → sqlalchemy_cratedb-0.36.1}/src/sqlalchemy_cratedb.egg-info/top_level.txt +0 -0
@@ -3,6 +3,9 @@
3
3
 
4
4
  ## Unreleased
5
5
 
6
+ ## 2024/06/11 0.36.1
7
+ - Dependencies: Use `crate==1.0.0dev0`
8
+
6
9
  ## 2024/06/11 0.36.0
7
10
  - Dependencies: Use `dask[dataframe]`
8
11
  - Maintenance release after splitting packages `crate-python` vs.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sqlalchemy-cratedb
3
- Version: 0.36.0
3
+ Version: 0.36.1
4
4
  Summary: SQLAlchemy dialect for CrateDB.
5
5
  Author-email: "Crate.io" <office@crate.io>
6
6
  License: Apache License 2.0
@@ -63,7 +63,7 @@ Description-Content-Type: text/markdown
63
63
  License-File: LICENSE
64
64
  License-File: NOTICE
65
65
  Requires-Dist: backports.zoneinfo<1; python_version < "3.9"
66
- Requires-Dist: crate
66
+ Requires-Dist: crate==1.0.0dev0
67
67
  Requires-Dist: geojson<4,>=2.5
68
68
  Requires-Dist: importlib-resources; python_version < "3.9"
69
69
  Requires-Dist: sqlalchemy<2.1,>=1
@@ -85,7 +85,7 @@ dynamic = [
85
85
  ]
86
86
  dependencies = [
87
87
  'backports.zoneinfo<1; python_version < "3.9"',
88
- "crate",
88
+ "crate==1.0.0dev0",
89
89
  "geojson<4,>=2.5",
90
90
  'importlib-resources; python_version < "3.9"',
91
91
  "sqlalchemy<2.1,>=1",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sqlalchemy-cratedb
3
- Version: 0.36.0
3
+ Version: 0.36.1
4
4
  Summary: SQLAlchemy dialect for CrateDB.
5
5
  Author-email: "Crate.io" <office@crate.io>
6
6
  License: Apache License 2.0
@@ -63,7 +63,7 @@ Description-Content-Type: text/markdown
63
63
  License-File: LICENSE
64
64
  License-File: NOTICE
65
65
  Requires-Dist: backports.zoneinfo<1; python_version < "3.9"
66
- Requires-Dist: crate
66
+ Requires-Dist: crate==1.0.0dev0
67
67
  Requires-Dist: geojson<4,>=2.5
68
68
  Requires-Dist: importlib-resources; python_version < "3.9"
69
69
  Requires-Dist: sqlalchemy<2.1,>=1
@@ -0,0 +1,34 @@
1
+ CHANGES.md
2
+ CODE_OF_CONDUCT.md
3
+ CONTRIBUTING.md
4
+ DEVELOP.md
5
+ LICENSE
6
+ MANIFEST.in
7
+ NOTICE
8
+ README.md
9
+ backlog.md
10
+ pyproject.toml
11
+ setup.cfg
12
+ docs/requirements.txt
13
+ docs/_extra/robots.txt
14
+ src/sqlalchemy_cratedb/__init__.py
15
+ src/sqlalchemy_cratedb/compiler.py
16
+ src/sqlalchemy_cratedb/dialect.py
17
+ src/sqlalchemy_cratedb/predicate.py
18
+ src/sqlalchemy_cratedb/sa_version.py
19
+ src/sqlalchemy_cratedb/support.py
20
+ src/sqlalchemy_cratedb.egg-info/PKG-INFO
21
+ src/sqlalchemy_cratedb.egg-info/SOURCES.txt
22
+ src/sqlalchemy_cratedb.egg-info/dependency_links.txt
23
+ src/sqlalchemy_cratedb.egg-info/entry_points.txt
24
+ src/sqlalchemy_cratedb.egg-info/requires.txt
25
+ src/sqlalchemy_cratedb.egg-info/top_level.txt
26
+ src/sqlalchemy_cratedb/compat/__init__.py
27
+ src/sqlalchemy_cratedb/compat/api13.py
28
+ src/sqlalchemy_cratedb/compat/core10.py
29
+ src/sqlalchemy_cratedb/compat/core14.py
30
+ src/sqlalchemy_cratedb/compat/core20.py
31
+ src/sqlalchemy_cratedb/type/__init__.py
32
+ src/sqlalchemy_cratedb/type/array.py
33
+ src/sqlalchemy_cratedb/type/geo.py
34
+ src/sqlalchemy_cratedb/type/object.py
@@ -1,4 +1,4 @@
1
- crate
1
+ crate==1.0.0dev0
2
2
  geojson<4,>=2.5
3
3
  sqlalchemy<2.1,>=1
4
4
  verlib2==0.2
@@ -1,335 +0,0 @@
1
- .. _advanced-querying:
2
-
3
- =================
4
- Advanced querying
5
- =================
6
-
7
- This section of the documentation demonstrates running queries using a fulltext
8
- index with an analyzer, queries using counting and aggregations, and support for
9
- the ``INSERT...FROM SELECT`` and ``INSERT...RETURNING`` constructs, all using the
10
- CrateDB SQLAlchemy dialect.
11
-
12
-
13
- .. rubric:: Table of Contents
14
-
15
- .. contents::
16
- :local:
17
-
18
-
19
- Introduction
20
- ============
21
-
22
- Import the relevant symbols:
23
-
24
- >>> import sqlalchemy as sa
25
- >>> from sqlalchemy.orm import sessionmaker
26
- >>> try:
27
- ... from sqlalchemy.orm import declarative_base
28
- ... except ImportError:
29
- ... from sqlalchemy.ext.declarative import declarative_base
30
- >>> from uuid import uuid4
31
-
32
- Establish a connection to the database, see also :ref:`sa:engines_toplevel`
33
- and :ref:`connect`:
34
-
35
- >>> engine = sa.create_engine(f"crate://{crate_host}")
36
- >>> connection = engine.connect()
37
-
38
- Create an SQLAlchemy :doc:`Session <sa:orm/session_basics>`:
39
-
40
- >>> session = sessionmaker(bind=engine)()
41
- >>> Base = declarative_base()
42
-
43
-
44
- Introduction to fulltext indexes
45
- ================================
46
-
47
- :ref:`crate-reference:fulltext-indices` take the contents of one or more fields
48
- and split it up into tokens that are used for fulltext-search. The
49
- transformation from a text to separate tokens is done by an analyzer. In order
50
- to conduct fulltext search queries, we need to create a table with a
51
- :ref:`fulltext index with an analyzer <crate-reference:sql_ddl_index_fulltext>`.
52
-
53
- .. code-block:: sql
54
-
55
- CREATE TABLE characters (
56
- id STRING PRIMARY KEY,
57
- name STRING,
58
- quote STRING,
59
- INDEX name_ft USING fulltext(name) WITH (analyzer = 'english'),
60
- INDEX quote_ft USING fulltext(quote) WITH (analyzer = 'english')
61
- )
62
-
63
- We have to create this table using SQL because it is currently not possible to
64
- create ``INDEX`` fields using SQLAlchemy's :ref:`sa:orm_declarative_mapping`.
65
- However, we can define the table to use all other operations:
66
-
67
- >>> def gen_key():
68
- ... return str(uuid4())
69
-
70
- >>> class Character(Base):
71
- ... __tablename__ = 'characters'
72
- ... id = sa.Column(sa.String, primary_key=True, default=gen_key)
73
- ... name = sa.Column(sa.String)
74
- ... quote = sa.Column(sa.String)
75
- ... name_ft = sa.Column(sa.String)
76
- ... quote_ft = sa.Column(sa.String)
77
- ... __mapper_args__ = {
78
- ... 'exclude_properties': ['name_ft', 'quote_ft']
79
- ... }
80
-
81
- We define ``name_ft`` and ``quote_ft`` as regular columns, but add them under
82
- ``__mapper_args__.exclude_properties`` to ensure they're excluded from insert
83
- or update operations.
84
-
85
- In order to support fulltext query operations, the CrateDB SQLAlchemy dialect
86
- provides the :ref:`crate-reference:predicates_match` through its ``match``
87
- function.
88
-
89
- Let's add two records we use for testing.
90
-
91
- >>> arthur = Character(name='Arthur Dent')
92
- >>> arthur.quote = "Let's go somewhere."
93
- >>> session.add(arthur)
94
-
95
- >>> trillian = Character(name='Tricia McMillan')
96
- >>> trillian.quote = "We're on a space ship Arthur. In space."
97
- >>> session.add(trillian)
98
-
99
- >>> session.commit()
100
-
101
- After ``INSERT`` statements are submitted to the database, the newly inserted
102
- records aren't immediately available for retrieval, because the index is only
103
- updated periodically (default: each second). In order to synchronize that,
104
- explicitly refresh the table:
105
-
106
- >>> _ = connection.execute(sa.text("REFRESH TABLE characters"))
107
-
108
-
109
- Fulltext search with MATCH predicate
110
- ====================================
111
-
112
- Fulltext search in CrateDB is performed using :ref:`crate-reference:predicates_match`.
113
- The CrateDB SQLAlchemy dialect comes with a ``match`` function, which can be used to
114
- search on one or multiple fields.
115
-
116
- >>> from crate.client.sqlalchemy.predicates import match
117
-
118
- >>> session.query(Character.name) \
119
- ... .filter(match(Character.name_ft, 'Arthur')) \
120
- ... .all()
121
- [('Arthur Dent',)]
122
-
123
- To get the relevance of a matching row, you can select the ``_score`` system
124
- column. It is a numeric value which is relative to the other rows.
125
- The higher the score value, the more relevant the row.
126
-
127
- In most cases, ``_score`` is not part of the SQLAlchemy table definition,
128
- so it must be passed as a verbatim string, using ``literal_column``:
129
-
130
- >>> session.query(Character.name, sa.literal_column('_score')) \
131
- ... .filter(match(Character.quote_ft, 'space')) \
132
- ... .all()
133
- [('Tricia McMillan', ...)]
134
-
135
- To search multiple columns, use a dictionary where the keys are the columns and
136
- the values are a ``boost``. A ``boost`` is a factor that increases the relevance
137
- of a column in respect to the other columns:
138
-
139
- >>> session.query(Character.name) \
140
- ... .filter(match({Character.name_ft: 1.5, Character.quote_ft: 0.1},
141
- ... 'Arthur')) \
142
- ... .order_by(sa.desc(sa.literal_column('_score'))) \
143
- ... .all()
144
- [('Arthur Dent',), ('Tricia McMillan',)]
145
-
146
- The ``match_type`` argument determines how a single ``query_term`` is applied,
147
- and how the resulting ``_score`` is computed. Thus, it influences which
148
- documents are considered more relevant. The default selection is ``best_fields``.
149
- For more information, see :ref:`crate-reference:predicates_match_types`.
150
-
151
- If you want to sort the results by ``_score``, you can use the ``order_by()``
152
- function.
153
-
154
- >>> session.query(Character.name) \
155
- ... .filter(
156
- ... match(Character.name_ft, 'Arth',
157
- ... match_type='phrase',
158
- ... options={'fuzziness': 3})
159
- ... ) \
160
- ... .all()
161
- [('Arthur Dent',)]
162
-
163
- It is not possible to specify options without the ``match_type`` argument:
164
-
165
- >>> session.query(Character.name) \
166
- ... .filter(
167
- ... match(Character.name_ft, 'Arth',
168
- ... options={'fuzziness': 3})
169
- ... ) \
170
- ... .all()
171
- Traceback (most recent call last):
172
- ValueError: missing match_type. It's not allowed to specify options without match_type
173
-
174
-
175
- Aggregates: Counting and grouping
176
- =================================
177
-
178
- SQLAlchemy supports different approaches to issue a query with a count
179
- aggregate function. Take a look at the `count result rows`_ documentation
180
- for a full overview.
181
-
182
- CrateDB currently does not support all variants as it can not handle the
183
- sub-queries yet.
184
-
185
- This means that queries using ``count()`` have to be written in one of the
186
- following ways:
187
-
188
- >>> session.query(sa.func.count(Character.id)).scalar()
189
- 2
190
-
191
- >>> session.query(sa.func.count('*')).select_from(Character).scalar()
192
- 2
193
-
194
- Using the ``group_by`` clause is similar:
195
-
196
- >>> session.query(sa.func.count(Character.id), Character.name) \
197
- ... .group_by(Character.name) \
198
- ... .order_by(sa.desc(sa.func.count(Character.id))) \
199
- ... .order_by(Character.name).all()
200
- [(1, 'Arthur Dent'), (1, 'Tricia McMillan')]
201
-
202
-
203
- ``INSERT...FROM SELECT``
204
- ========================
205
-
206
- In SQLAlchemy, the ``insert().from_select()`` function returns a new ``Insert``
207
- construct, which represents an ``INSERT...FROM SELECT`` statement. This
208
- functionality is supported by the CrateDB client library. Here is an example
209
- that uses ``insert().from_select()``.
210
-
211
- First, let's define and create the tables:
212
-
213
- >>> from sqlalchemy import select, insert
214
-
215
- >>> class Todos(Base):
216
- ... __tablename__ = 'todos'
217
- ... __table_args__ = {
218
- ... 'crate_number_of_replicas': '0'
219
- ... }
220
- ... id = sa.Column(sa.String, primary_key=True, default=gen_key)
221
- ... content = sa.Column(sa.String)
222
- ... status = sa.Column(sa.String)
223
-
224
- >>> class ArchivedTasks(Base):
225
- ... __tablename__ = 'archived_tasks'
226
- ... __table_args__ = {
227
- ... 'crate_number_of_replicas': '0'
228
- ... }
229
- ... id = sa.Column(sa.String, primary_key=True)
230
- ... content = sa.Column(sa.String)
231
-
232
- >>> Base.metadata.create_all(bind=engine)
233
-
234
- Let's add a task to the ``Todo`` table:
235
-
236
- >>> task = Todos(content='Write Tests', status='done')
237
- >>> session.add(task)
238
- >>> session.commit()
239
- >>> _ = connection.execute(sa.text("REFRESH TABLE todos"))
240
-
241
- Now, let's use ``insert().from_select()`` to archive the task into the
242
- ``ArchivedTasks`` table:
243
-
244
- >>> sel = select(Todos.id, Todos.content).where(Todos.status == "done")
245
- >>> ins = insert(ArchivedTasks).from_select(['id', 'content'], sel)
246
- >>> result = session.execute(ins)
247
- >>> session.commit()
248
-
249
- This will emit the following ``INSERT`` statement to the database:
250
-
251
- INSERT INTO archived_tasks (id, content)
252
- (SELECT todos.id, todos.content FROM todos WHERE todos.status = 'done')
253
-
254
- Now, verify that the data is present in the database:
255
-
256
- >>> _ = connection.execute(sa.text("REFRESH TABLE archived_tasks"))
257
- >>> pprint([str(r) for r in session.execute(sa.text("SELECT content FROM archived_tasks"))])
258
- ["('Write Tests',)"]
259
-
260
-
261
- ``INSERT...RETURNING``
262
- ======================
263
-
264
- The ``RETURNING`` clause can be used to retrieve the result rows of an ``INSERT``
265
- operation. It may be specified using the ``Insert.returning()`` method.
266
-
267
- The first step is to define the table:
268
-
269
- >>> from sqlalchemy import insert
270
-
271
- >>> class User(Base):
272
- ... __tablename__ = 'user'
273
- ... __table_args__ = {
274
- ... 'crate_number_of_replicas': '0'
275
- ... }
276
- ... id = sa.Column(sa.String, primary_key=True, default=gen_key)
277
- ... username = sa.Column(sa.String)
278
- ... email = sa.Column(sa.String)
279
-
280
- >>> Base.metadata.create_all(bind=engine)
281
-
282
- Now, let's use the returning clause on our insert to retrieve the values inserted:
283
-
284
- >>> stmt = insert(User).values(username='Crate', email='crate@crate.io').returning(User.username, User.email)
285
- >>> result = session.execute(stmt)
286
- >>> session.commit()
287
- >>> print([str(r) for r in result])
288
- ["('Crate', 'crate@crate.io')"]
289
-
290
- The following ``INSERT...RETURNING`` statement was issued to the database::
291
-
292
- INSERT INTO user (id, username, email)
293
- VALUES (:id, :username, :email)
294
- RETURNING user.id, user.username, user.email
295
-
296
- ``UPDATE...RETURNING``
297
-
298
- The ``RETURNING`` clause can also be used with an ``UPDATE`` operation to return
299
- specified rows to be returned on execution. It can be specified using the
300
- ``Update.returning()`` method.
301
-
302
-
303
- We can reuse the user table previously created in the ``INSERT...RETURNING`` section.
304
-
305
- Insert a user and get the user id:
306
-
307
- >>> from sqlalchemy import insert, update
308
-
309
- >>> stmt = insert(User).values(username='Arthur Dent', email='arthur_dent@crate.io').returning(User.id, User.username, User.email)
310
- >>> result = session.execute(stmt)
311
- >>> session.commit()
312
- >>> uid = [r[0] for r in result][0]
313
-
314
- Now let's update the user:
315
-
316
- >>> stmt = update(User).where(User.id == uid).values(username='Tricia McMillan', email='tricia_mcmillan@crate.io').returning(User.username, User.email)
317
- >>> res = session.execute(stmt)
318
- >>> session.commit()
319
- >>> print([str(r) for r in res])
320
- ["('Tricia McMillan', 'tricia_mcmillan@crate.io')"]
321
-
322
- The following ``UPDATE...RETURNING`` statement was issued to the database::
323
-
324
- UPDATE user SET username=:username, email=:email
325
- WHERE user.id = :id_1
326
- RETURNING user.username, user.email
327
-
328
- .. hidden: Disconnect from database
329
-
330
- >>> session.close()
331
- >>> connection.close()
332
- >>> engine.dispose()
333
-
334
-
335
- .. _count result rows: https://docs.sqlalchemy.org/en/14/orm/tutorial.html#counting
@@ -1,12 +0,0 @@
1
- # Backlog
2
-
3
- ## Iteration +1
4
- From dialect split-off.
5
- - Re-enable parameterized test cases.
6
- ```
7
- tests.addTest(ParametrizedTestCase.parametrize(SqlAlchemyCompilerTest, param={"server_version_info": None}))
8
- tests.addTest(ParametrizedTestCase.parametrize(SqlAlchemyCompilerTest, param={"server_version_info": (4, 0, 12)}))
9
- tests.addTest(ParametrizedTestCase.parametrize(SqlAlchemyCompilerTest, param={"server_version_info": (4, 1, 10)}))
10
- ```
11
- - Re-enable doctests.
12
-
@@ -1,30 +0,0 @@
1
- .. _by-example:
2
-
3
- ##########
4
- By example
5
- ##########
6
-
7
- This part of the documentation enumerates different kinds of examples how to
8
- use the CrateDB Python client.
9
-
10
- .. _sqlalchemy-by-example:
11
-
12
- SQLAlchemy by example
13
- =====================
14
-
15
- The examples in this section are all about CrateDB's `SQLAlchemy`_ dialect, and
16
- its corresponding API interfaces, see also :ref:`sqlalchemy-support`.
17
-
18
- .. toctree::
19
- :maxdepth: 1
20
-
21
- sqlalchemy/getting-started
22
- sqlalchemy/crud
23
- sqlalchemy/working-with-types
24
- sqlalchemy/advanced-querying
25
- sqlalchemy/inspection-reflection
26
- sqlalchemy/dataframe
27
-
28
-
29
- .. _Python DB API: https://peps.python.org/pep-0249/
30
- .. _SQLAlchemy: https://www.sqlalchemy.org/