SQLAero 0.2.0a1__tar.gz → 0.2.0b1__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 (411) hide show
  1. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/Cargo.lock +4 -4
  2. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/Cargo.toml +5 -1
  3. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/PKG-INFO +59 -20
  4. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/README.md +43 -18
  5. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/THIRD_PARTY_NOTICES.md +12 -1
  6. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/Cargo.toml +6 -0
  7. sqlaero-0.2.0b1/crates/sqlaero-core/src/error/catalog.rs +12313 -0
  8. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/error/tests.rs +44 -0
  9. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/error.rs +1 -1
  10. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/protocol/auth.rs +48 -4
  11. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/protocol/framing.rs +14 -0
  12. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/result/decode.rs +7 -4
  13. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/result/text.rs +24 -1
  14. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/session/connect.rs +15 -8
  15. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/session/query.rs +28 -0
  16. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/session/state.rs +9 -0
  17. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/transport/channel.rs +57 -23
  18. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/transport/socket.rs +7 -3
  19. sqlaero-0.2.0b1/crates/sqlaero-core/src/transport/tls/windows.rs +288 -0
  20. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/transport/tls.rs +227 -38
  21. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/tests/component_contracts.rs +2 -2
  22. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/tests/establish.rs +19 -3
  23. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/tests/protocol_wire.rs +31 -9
  24. sqlaero-0.2.0b1/crates/sqlaero-core/tests/system_trust.rs +40 -0
  25. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/connection.rs +262 -99
  26. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/cursor.rs +17 -7
  27. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/errors.rs +44 -15
  28. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/input.rs +14 -7
  29. sqlaero-0.2.0b1/crates/sqlaero-python/src/json.rs +327 -0
  30. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/lib.rs +3 -9
  31. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/output.rs +80 -3
  32. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/reader.rs +72 -35
  33. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/transaction.rs +54 -4
  34. sqlaero-0.2.0b1/data/error-catalog.json +40163 -0
  35. sqlaero-0.2.0b1/licenses/third-party/core_detect-1.0.0/LICENSE-APACHE +201 -0
  36. sqlaero-0.2.0b1/licenses/third-party/core_detect-1.0.0/LICENSE-MIT +25 -0
  37. sqlaero-0.2.0b1/licenses/third-party/rustls-native-certs-0.8.5/LICENSE +10 -0
  38. sqlaero-0.2.0b1/licenses/third-party/rustls-native-certs-0.8.5/LICENSE-ISC +15 -0
  39. sqlaero-0.2.0b1/licenses/third-party/rustls-native-certs-0.8.5/LICENSE-MIT +25 -0
  40. sqlaero-0.2.0b1/licenses/third-party/socket2-0.6.5/LICENSE-MIT +25 -0
  41. sqlaero-0.2.0b1/licenses/third-party/uuid-1.29.0/LICENSE-APACHE +201 -0
  42. sqlaero-0.2.0b1/licenses/third-party/version_check-0.9.5/LICENSE-APACHE +201 -0
  43. sqlaero-0.2.0b1/licenses/third-party/windows-link-0.2.1/license-apache-2.0 +201 -0
  44. sqlaero-0.2.0b1/licenses/third-party/windows-link-0.2.1/license-mit +21 -0
  45. sqlaero-0.2.0b1/licenses/third-party/windows-sys-0.61.2/license-apache-2.0 +201 -0
  46. sqlaero-0.2.0b1/licenses/third-party/windows-sys-0.61.2/license-mit +21 -0
  47. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/pyproject.toml +5 -2
  48. sqlaero-0.2.0b1/python/sqlaero/__init__.pyi +12 -0
  49. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/_sqlaero.pyi +184 -21
  50. sqlaero-0.2.0b1/python/sqlaero/error_codes.pyi +2 -0
  51. sqlaero-0.2.0b1/python/sqlaero/errors.pyi +4155 -0
  52. sqlaero-0.2.0b1/third-party/jiter/Cargo.lock +1171 -0
  53. sqlaero-0.2.0b1/third-party/jiter/Cargo.toml +182 -0
  54. sqlaero-0.2.0b1/third-party/jiter/Cargo.toml.orig +92 -0
  55. sqlaero-0.2.0b1/third-party/jiter/LICENSE +21 -0
  56. sqlaero-0.2.0b1/third-party/jiter/README.md +143 -0
  57. sqlaero-0.2.0b1/third-party/jiter/SQLAERO_PATCH.md +29 -0
  58. sqlaero-0.2.0b1/third-party/jiter/benches/README.md +49 -0
  59. sqlaero-0.2.0b1/third-party/jiter/benches/bigints_array.json +1 -0
  60. sqlaero-0.2.0b1/third-party/jiter/benches/criterion_table.py +183 -0
  61. sqlaero-0.2.0b1/third-party/jiter/benches/doubles_array.json +1 -0
  62. sqlaero-0.2.0b1/third-party/jiter/benches/floats_array.json +1 -0
  63. sqlaero-0.2.0b1/third-party/jiter/benches/generate_big.py +24 -0
  64. sqlaero-0.2.0b1/third-party/jiter/benches/json_cases.rs +93 -0
  65. sqlaero-0.2.0b1/third-party/jiter/benches/long_significand_floats.json +1 -0
  66. sqlaero-0.2.0b1/third-party/jiter/benches/main.rs +456 -0
  67. sqlaero-0.2.0b1/third-party/jiter/benches/massive_ints_array.json +1 -0
  68. sqlaero-0.2.0b1/third-party/jiter/benches/medium_response.json +93 -0
  69. sqlaero-0.2.0b1/third-party/jiter/benches/pass1.json +58 -0
  70. sqlaero-0.2.0b1/third-party/jiter/benches/pass2.json +1 -0
  71. sqlaero-0.2.0b1/third-party/jiter/benches/python.rs +140 -0
  72. sqlaero-0.2.0b1/third-party/jiter/benches/sentence.json +1 -0
  73. sqlaero-0.2.0b1/third-party/jiter/benches/short_floats.json +1 -0
  74. sqlaero-0.2.0b1/third-party/jiter/benches/short_numbers.json +1 -0
  75. sqlaero-0.2.0b1/third-party/jiter/benches/string_array.json +1 -0
  76. sqlaero-0.2.0b1/third-party/jiter/benches/string_array_unique.json +1 -0
  77. sqlaero-0.2.0b1/third-party/jiter/benches/true_array.json +1 -0
  78. sqlaero-0.2.0b1/third-party/jiter/benches/true_object.json +1 -0
  79. sqlaero-0.2.0b1/third-party/jiter/benches/unicode.json +1 -0
  80. sqlaero-0.2.0b1/third-party/jiter/benches/unicode_dense.json +1 -0
  81. sqlaero-0.2.0b1/third-party/jiter/benches/x100.json +1 -0
  82. sqlaero-0.2.0b1/third-party/jiter/build.rs +4 -0
  83. sqlaero-0.2.0b1/third-party/jiter/examples/alloc_count.rs +105 -0
  84. sqlaero-0.2.0b1/third-party/jiter/src/errors.rs +313 -0
  85. sqlaero-0.2.0b1/third-party/jiter/src/jiter.rs +472 -0
  86. sqlaero-0.2.0b1/third-party/jiter/src/lib.rs +205 -0
  87. sqlaero-0.2.0b1/third-party/jiter/src/number_decoder.rs +634 -0
  88. sqlaero-0.2.0b1/third-party/jiter/src/parse.rs +321 -0
  89. sqlaero-0.2.0b1/third-party/jiter/src/progress.rs +232 -0
  90. sqlaero-0.2.0b1/third-party/jiter/src/py_lossless_float.rs +92 -0
  91. sqlaero-0.2.0b1/third-party/jiter/src/py_string_cache.rs +355 -0
  92. sqlaero-0.2.0b1/third-party/jiter/src/python.rs +401 -0
  93. sqlaero-0.2.0b1/third-party/jiter/src/serde.rs +670 -0
  94. sqlaero-0.2.0b1/third-party/jiter/src/simd/aarch64.rs +353 -0
  95. sqlaero-0.2.0b1/third-party/jiter/src/simd/fallback_int.rs +56 -0
  96. sqlaero-0.2.0b1/third-party/jiter/src/simd/fallback_string.rs +99 -0
  97. sqlaero-0.2.0b1/third-party/jiter/src/simd/mod.rs +105 -0
  98. sqlaero-0.2.0b1/third-party/jiter/src/simd/number.rs +57 -0
  99. sqlaero-0.2.0b1/third-party/jiter/src/simd/swar_int.rs +27 -0
  100. sqlaero-0.2.0b1/third-party/jiter/src/simd/x86_64.rs +242 -0
  101. sqlaero-0.2.0b1/third-party/jiter/src/string_decoder.rs +325 -0
  102. sqlaero-0.2.0b1/third-party/jiter/src/value.rs +885 -0
  103. sqlaero-0.2.0b1/third-party/jiter/tests/corpus/mod.rs +127 -0
  104. sqlaero-0.2.0b1/third-party/jiter/tests/json_cases.rs +418 -0
  105. sqlaero-0.2.0b1/third-party/jiter/tests/main.rs +2128 -0
  106. sqlaero-0.2.0b1/third-party/jiter/tests/progress.rs +116 -0
  107. sqlaero-0.2.0b1/third-party/jiter/tests/python.rs +89 -0
  108. sqlaero-0.2.0b1/third-party/jiter/tests/serde.rs +524 -0
  109. sqlaero-0.2.0a1/crates/sqlaero-core/src/error/catalog.rs +0 -12313
  110. sqlaero-0.2.0a1/crates/sqlaero-core/tests/system_trust.rs +0 -37
  111. sqlaero-0.2.0a1/crates/sqlaero-python/src/json.rs +0 -101
  112. sqlaero-0.2.0a1/data/error-catalog.json +0 -36248
  113. sqlaero-0.2.0a1/python/sqlaero/error_codes.pyi +0 -4140
  114. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/LICENSE +0 -0
  115. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/examples/charset_delta.rs +0 -0
  116. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/bind/batch.rs +0 -0
  117. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/bind/mod.rs +0 -0
  118. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/bind/scalar.rs +0 -0
  119. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/bind/template.rs +0 -0
  120. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/bind/writer.rs +0 -0
  121. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/catalog.rs +0 -0
  122. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/codec.rs +0 -0
  123. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/lexer_space.rs +0 -0
  124. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/mod.rs +0 -0
  125. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/multibyte.rs +0 -0
  126. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/multibyte_delta.rs +0 -0
  127. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/output.rs +0 -0
  128. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/charset/single_byte.rs +0 -0
  129. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/config/mod.rs +0 -0
  130. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/config/size.rs +0 -0
  131. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/lib.rs +0 -0
  132. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/memory.rs +0 -0
  133. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/protocol/mod.rs +0 -0
  134. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/protocol/packets.rs +0 -0
  135. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/result/keys.rs +0 -0
  136. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/result/mod.rs +0 -0
  137. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/retry.rs +0 -0
  138. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/session/initialize.rs +0 -0
  139. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/session/mod.rs +0 -0
  140. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/session/shared.rs +0 -0
  141. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/transport/deadline.rs +0 -0
  142. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/src/transport/mod.rs +0 -0
  143. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-core/tests/codec_matrix.rs +0 -0
  144. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/Cargo.toml +0 -0
  145. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/binding.rs +0 -0
  146. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/config.rs +0 -0
  147. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/errors/diagnostics.rs +0 -0
  148. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/metadata.rs +0 -0
  149. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/crates/sqlaero-python/src/retry.rs +0 -0
  150. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/adler2-2.0.1/LICENSE-0BSD +0 -0
  151. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/adler2-2.0.1/LICENSE-APACHE +0 -0
  152. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/adler2-2.0.1/LICENSE-MIT +0 -0
  153. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aead-0.6.1/LICENSE-APACHE +0 -0
  154. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aead-0.6.1/LICENSE-MIT +0 -0
  155. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aes-0.9.3/LICENSE-APACHE +0 -0
  156. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aes-0.9.3/LICENSE-MIT +0 -0
  157. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aes-gcm-0.11.1/LICENSE-APACHE +0 -0
  158. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aes-gcm-0.11.1/LICENSE-MIT +0 -0
  159. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ahash-0.8.12/LICENSE-APACHE +0 -0
  160. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ahash-0.8.12/LICENSE-MIT +0 -0
  161. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aho-corasick-1.1.5/COPYING +0 -0
  162. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aho-corasick-1.1.5/LICENSE-MIT +0 -0
  163. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aho-corasick-1.1.5/UNLICENSE +0 -0
  164. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/autocfg-1.5.1/LICENSE-APACHE +0 -0
  165. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/autocfg-1.5.1/LICENSE-MIT +0 -0
  166. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aws-lc-rs-1.18.0/LICENSE +0 -0
  167. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aws-lc-sys-0.44.0/LICENSE +0 -0
  168. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/aws-lc-sys-0.44.0/aws-lc/LICENSE +0 -0
  169. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/base64-0.22.1/LICENSE-APACHE +0 -0
  170. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/base64-0.22.1/LICENSE-MIT +0 -0
  171. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/base64ct-1.8.3/LICENSE-APACHE +0 -0
  172. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/base64ct-1.8.3/LICENSE-MIT +0 -0
  173. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/bitflags-2.13.2/LICENSE-APACHE +0 -0
  174. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/bitflags-2.13.2/LICENSE-MIT +0 -0
  175. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/bitvec-1.1.1/LICENSE.txt +0 -0
  176. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/block-buffer-0.12.1/LICENSE-APACHE +0 -0
  177. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/block-buffer-0.12.1/LICENSE-MIT +0 -0
  178. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/block-padding-0.4.2/LICENSE-APACHE +0 -0
  179. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/block-padding-0.4.2/LICENSE-MIT +0 -0
  180. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/btoi-0.5.0/LICENSE-APACHE +0 -0
  181. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/btoi-0.5.0/LICENSE-MIT +0 -0
  182. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/byteorder-1.5.0/COPYING +0 -0
  183. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/byteorder-1.5.0/LICENSE-MIT +0 -0
  184. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/byteorder-1.5.0/UNLICENSE +0 -0
  185. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/bytes-1.12.1/LICENSE +0 -0
  186. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cbc-0.2.1/LICENSE-APACHE +0 -0
  187. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cbc-0.2.1/LICENSE-MIT +0 -0
  188. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cc-1.10.0/LICENSE-APACHE +0 -0
  189. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cc-1.10.0/LICENSE-MIT +0 -0
  190. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cfg-if-1.0.5/LICENSE-APACHE +0 -0
  191. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cfg-if-1.0.5/LICENSE-MIT +0 -0
  192. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cipher-0.5.2/LICENSE-APACHE +0 -0
  193. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cipher-0.5.2/LICENSE-MIT +0 -0
  194. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cmake-0.1.58/LICENSE-APACHE +0 -0
  195. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cmake-0.1.58/LICENSE-MIT +0 -0
  196. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cmov-0.5.4/LICENSE-APACHE +0 -0
  197. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cmov-0.5.4/LICENSE-MIT +0 -0
  198. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/const-oid-0.10.2/LICENSE-APACHE +0 -0
  199. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/const-oid-0.10.2/LICENSE-MIT +0 -0
  200. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/core-foundation-0.10.1/LICENSE-APACHE +0 -0
  201. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/core-foundation-0.10.1/LICENSE-MIT +0 -0
  202. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/core-foundation-sys-0.8.7/LICENSE-APACHE +0 -0
  203. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/core-foundation-sys-0.8.7/LICENSE-MIT +0 -0
  204. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cpubits-0.1.1/LICENSE-APACHE +0 -0
  205. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cpubits-0.1.1/LICENSE-MIT +0 -0
  206. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cpufeatures-0.3.1/LICENSE-APACHE +0 -0
  207. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/cpufeatures-0.3.1/LICENSE-MIT +0 -0
  208. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/crc32fast-1.5.3/LICENSE-APACHE +0 -0
  209. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/crc32fast-1.5.3/LICENSE-MIT +0 -0
  210. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/crypto-common-0.2.2/LICENSE-APACHE +0 -0
  211. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/crypto-common-0.2.2/LICENSE-MIT +0 -0
  212. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ctr-0.10.1/LICENSE-APACHE +0 -0
  213. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ctr-0.10.1/LICENSE-MIT +0 -0
  214. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ctutils-0.4.5/LICENSE-APACHE +0 -0
  215. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ctutils-0.4.5/LICENSE-MIT +0 -0
  216. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/der-0.8.2/LICENSE-APACHE +0 -0
  217. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/der-0.8.2/LICENSE-MIT +0 -0
  218. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/digest-0.11.3/LICENSE-APACHE +0 -0
  219. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/digest-0.11.3/LICENSE-MIT +0 -0
  220. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/dunce-1.0.5/LICENSE +0 -0
  221. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/encoding_rs-0.8.42/COPYRIGHT +0 -0
  222. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/encoding_rs-0.8.42/LICENSE-APACHE +0 -0
  223. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/encoding_rs-0.8.42/LICENSE-MIT +0 -0
  224. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/encoding_rs-0.8.42/LICENSE-WHATWG +0 -0
  225. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/find-msvc-tools-0.1.15/LICENSE-APACHE +0 -0
  226. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/find-msvc-tools-0.1.15/LICENSE-MIT +0 -0
  227. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/flate2-1.1.10/LICENSE-APACHE +0 -0
  228. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/flate2-1.1.10/LICENSE-MIT +0 -0
  229. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/fs_extra-1.3.0/LICENSE +0 -0
  230. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/funty-2.0.0/LICENSE.txt +0 -0
  231. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/getrandom-0.2.17/LICENSE-APACHE +0 -0
  232. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/getrandom-0.2.17/LICENSE-MIT +0 -0
  233. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/getrandom-0.3.4/LICENSE-APACHE +0 -0
  234. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/getrandom-0.3.4/LICENSE-MIT +0 -0
  235. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/getrandom-0.4.3/LICENSE-APACHE +0 -0
  236. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/getrandom-0.4.3/LICENSE-MIT +0 -0
  237. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ghash-0.6.0/LICENSE-APACHE +0 -0
  238. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ghash-0.6.0/LICENSE-MIT +0 -0
  239. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/heck-0.5.0/LICENSE-APACHE +0 -0
  240. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/heck-0.5.0/LICENSE-MIT +0 -0
  241. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/hex-0.4.3/LICENSE-APACHE +0 -0
  242. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/hex-0.4.3/LICENSE-MIT +0 -0
  243. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/hmac-0.13.0/LICENSE-APACHE +0 -0
  244. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/hmac-0.13.0/LICENSE-MIT +0 -0
  245. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/hybrid-array-0.4.15/LICENSE-APACHE +0 -0
  246. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/hybrid-array-0.4.15/LICENSE-MIT +0 -0
  247. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/inout-0.2.5/LICENSE-APACHE +0 -0
  248. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/inout-0.2.5/LICENSE-MIT +0 -0
  249. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/itoa-1.0.18/LICENSE-APACHE +0 -0
  250. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/itoa-1.0.18/LICENSE-MIT +0 -0
  251. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/jiter-0.17.0/LICENSE +0 -0
  252. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/jobserver-0.1.35/LICENSE-APACHE +0 -0
  253. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/jobserver-0.1.35/LICENSE-MIT +0 -0
  254. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-parse-float-1.0.6/LICENSE-APACHE +0 -0
  255. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-parse-float-1.0.6/LICENSE-MIT +0 -0
  256. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-parse-float-1.0.6/LICENSE.md +0 -0
  257. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-parse-integer-1.0.6/LICENSE-APACHE +0 -0
  258. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-parse-integer-1.0.6/LICENSE-MIT +0 -0
  259. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-parse-integer-1.0.6/LICENSE.md +0 -0
  260. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-util-1.0.7/LICENSE-APACHE +0 -0
  261. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/lexical-util-1.0.7/LICENSE-MIT +0 -0
  262. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/libc-0.2.191/LICENSE-APACHE +0 -0
  263. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/libc-0.2.191/LICENSE-MIT +0 -0
  264. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/log-0.4.34/LICENSE-APACHE +0 -0
  265. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/log-0.4.34/LICENSE-MIT +0 -0
  266. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/memchr-2.8.3/COPYING +0 -0
  267. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/memchr-2.8.3/LICENSE-MIT +0 -0
  268. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/memchr-2.8.3/UNLICENSE +0 -0
  269. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/miniz_oxide-0.9.1/LICENSE +0 -0
  270. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/miniz_oxide-0.9.1/LICENSE-APACHE.md +0 -0
  271. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/miniz_oxide-0.9.1/LICENSE-MIT.md +0 -0
  272. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/miniz_oxide-0.9.1/LICENSE-ZLIB.md +0 -0
  273. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/mio-1.2.4/LICENSE +0 -0
  274. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/multiversion_no_op-1.0.0/COPYRIGHT +0 -0
  275. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/multiversion_no_op-1.0.0/LICENSE-APACHE +0 -0
  276. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/multiversion_no_op-1.0.0/LICENSE-MIT +0 -0
  277. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/mysql_common-0.38.2/LICENSE-APACHE +0 -0
  278. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/mysql_common-0.38.2/LICENSE-MIT +0 -0
  279. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-bigint-0.4.8/LICENSE-APACHE +0 -0
  280. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-bigint-0.4.8/LICENSE-MIT +0 -0
  281. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-bigint-0.5.1/LICENSE-APACHE +0 -0
  282. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-bigint-0.5.1/LICENSE-MIT +0 -0
  283. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-integer-0.1.47/LICENSE-APACHE +0 -0
  284. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-integer-0.1.47/LICENSE-MIT +0 -0
  285. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-traits-0.2.19/LICENSE-APACHE +0 -0
  286. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/num-traits-0.2.19/LICENSE-MIT +0 -0
  287. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/once_cell-1.21.4/LICENSE-APACHE +0 -0
  288. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/once_cell-1.21.4/LICENSE-MIT +0 -0
  289. {sqlaero-0.2.0a1/licenses/third-party/pkg-config-0.3.34 → sqlaero-0.2.0b1/licenses/third-party/openssl-probe-0.2.1}/LICENSE-APACHE +0 -0
  290. {sqlaero-0.2.0a1/licenses/third-party/pkg-config-0.3.34 → sqlaero-0.2.0b1/licenses/third-party/openssl-probe-0.2.1}/LICENSE-MIT +0 -0
  291. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pbkdf2-0.13.0/LICENSE-APACHE +0 -0
  292. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pbkdf2-0.13.0/LICENSE-MIT +0 -0
  293. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pem-rfc7468-1.0.0/LICENSE-APACHE +0 -0
  294. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pem-rfc7468-1.0.0/LICENSE-MIT +0 -0
  295. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pkcs5-0.8.1/LICENSE-APACHE +0 -0
  296. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pkcs5-0.8.1/LICENSE-MIT +0 -0
  297. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pkcs8-0.11.0/LICENSE-APACHE +0 -0
  298. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pkcs8-0.11.0/LICENSE-MIT +0 -0
  299. {sqlaero-0.2.0a1/licenses/third-party/regex-1.13.1 → sqlaero-0.2.0b1/licenses/third-party/pkg-config-0.3.34}/LICENSE-APACHE +0 -0
  300. {sqlaero-0.2.0a1/licenses/third-party/socket2-0.6.5 → sqlaero-0.2.0b1/licenses/third-party/pkg-config-0.3.34}/LICENSE-MIT +0 -0
  301. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/polyval-0.7.3/LICENSE-APACHE +0 -0
  302. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/polyval-0.7.3/LICENSE-MIT +0 -0
  303. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/proc-macro2-1.0.107/LICENSE-APACHE +0 -0
  304. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/proc-macro2-1.0.107/LICENSE-MIT +0 -0
  305. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-0.29.2/LICENSE-APACHE +0 -0
  306. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-0.29.2/LICENSE-MIT +0 -0
  307. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-build-config-0.29.2/LICENSE-APACHE +0 -0
  308. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-build-config-0.29.2/LICENSE-MIT +0 -0
  309. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-ffi-0.29.2/LICENSE-APACHE +0 -0
  310. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-ffi-0.29.2/LICENSE-MIT +0 -0
  311. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-macros-0.29.2/LICENSE-APACHE +0 -0
  312. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-macros-0.29.2/LICENSE-MIT +0 -0
  313. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-macros-backend-0.29.2/LICENSE-APACHE +0 -0
  314. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/pyo3-macros-backend-0.29.2/LICENSE-MIT +0 -0
  315. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/quote-1.0.47/LICENSE-APACHE +0 -0
  316. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/quote-1.0.47/LICENSE-MIT +0 -0
  317. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/radium-0.7.0/LICENSE.txt +0 -0
  318. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rand_core-0.10.1/COPYRIGHT +0 -0
  319. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rand_core-0.10.1/LICENSE-APACHE +0 -0
  320. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rand_core-0.10.1/LICENSE-MIT +0 -0
  321. {sqlaero-0.2.0a1/licenses/third-party/regex-automata-0.4.18 → sqlaero-0.2.0b1/licenses/third-party/regex-1.13.1}/LICENSE-APACHE +0 -0
  322. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/regex-1.13.1/LICENSE-MIT +0 -0
  323. {sqlaero-0.2.0a1/licenses/third-party/regex-syntax-0.8.11 → sqlaero-0.2.0b1/licenses/third-party/regex-automata-0.4.18}/LICENSE-APACHE +0 -0
  324. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/regex-automata-0.4.18/LICENSE-MIT +0 -0
  325. {sqlaero-0.2.0a1/licenses/third-party/rustls-0.23.46 → sqlaero-0.2.0b1/licenses/third-party/regex-syntax-0.8.11}/LICENSE-APACHE +0 -0
  326. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/regex-syntax-0.8.11/LICENSE-MIT +0 -0
  327. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ring-0.17.14/LICENSE +0 -0
  328. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ring-0.17.14/LICENSE-BoringSSL +0 -0
  329. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/ring-0.17.14/LICENSE-other-bits +0 -0
  330. {sqlaero-0.2.0a1/licenses/third-party/scopeguard-1.2.0 → sqlaero-0.2.0b1/licenses/third-party/rustls-0.23.46}/LICENSE-APACHE +0 -0
  331. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-0.23.46/LICENSE-ISC +0 -0
  332. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-0.23.46/LICENSE-MIT +0 -0
  333. {sqlaero-0.2.0a1/licenses/third-party/security-framework-3.7.0 → sqlaero-0.2.0b1/licenses/third-party/rustls-native-certs-0.8.5}/LICENSE-APACHE +0 -0
  334. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-pki-types-1.15.1/LICENSE-APACHE +0 -0
  335. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-pki-types-1.15.1/LICENSE-MIT +0 -0
  336. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-platform-verifier-0.7.1/LICENSE-APACHE +0 -0
  337. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-platform-verifier-0.7.1/LICENSE-MIT +0 -0
  338. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustls-webpki-0.103.16/LICENSE +0 -0
  339. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustversion-1.0.23/LICENSE-APACHE +0 -0
  340. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/rustversion-1.0.23/LICENSE-MIT +0 -0
  341. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/salsa20-0.11.0/LICENSE-APACHE +0 -0
  342. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/salsa20-0.11.0/LICENSE-MIT +0 -0
  343. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/saturating-0.1.0/LICENSE +0 -0
  344. {sqlaero-0.2.0a1/licenses/third-party/security-framework-sys-2.17.0 → sqlaero-0.2.0b1/licenses/third-party/scopeguard-1.2.0}/LICENSE-APACHE +0 -0
  345. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/scopeguard-1.2.0/LICENSE-MIT +0 -0
  346. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/scrypt-0.12.0/LICENSE-APACHE +0 -0
  347. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/scrypt-0.12.0/LICENSE-MIT +0 -0
  348. {sqlaero-0.2.0a1/licenses/third-party/smallvec-1.16.4 → sqlaero-0.2.0b1/licenses/third-party/security-framework-3.7.0}/LICENSE-APACHE +0 -0
  349. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/security-framework-3.7.0/LICENSE-MIT +0 -0
  350. {sqlaero-0.2.0a1/licenses/third-party/socket2-0.6.5 → sqlaero-0.2.0b1/licenses/third-party/security-framework-sys-2.17.0}/LICENSE-APACHE +0 -0
  351. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/security-framework-sys-2.17.0/LICENSE-MIT +0 -0
  352. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde-1.0.229/LICENSE-APACHE +0 -0
  353. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde-1.0.229/LICENSE-MIT +0 -0
  354. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde_core-1.0.229/LICENSE-APACHE +0 -0
  355. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde_core-1.0.229/LICENSE-MIT +0 -0
  356. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde_derive-1.0.229/LICENSE-APACHE +0 -0
  357. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde_derive-1.0.229/LICENSE-MIT +0 -0
  358. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde_json-1.0.154/LICENSE-APACHE +0 -0
  359. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/serde_json-1.0.154/LICENSE-MIT +0 -0
  360. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/sha1-0.11.0/LICENSE-APACHE +0 -0
  361. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/sha1-0.11.0/LICENSE-MIT +0 -0
  362. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/sha2-0.11.1/LICENSE-APACHE +0 -0
  363. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/sha2-0.11.1/LICENSE-MIT +0 -0
  364. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/shlex-2.0.1/LICENSE-APACHE +0 -0
  365. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/shlex-2.0.1/LICENSE-MIT +0 -0
  366. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/simd-adler32-0.3.10/LICENSE.md +0 -0
  367. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/simdutf8-0.1.5/LICENSE-Apache +0 -0
  368. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/simdutf8-0.1.5/LICENSE-MIT +0 -0
  369. {sqlaero-0.2.0a1/licenses/third-party/uuid-1.29.0 → sqlaero-0.2.0b1/licenses/third-party/smallvec-1.16.4}/LICENSE-APACHE +0 -0
  370. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/smallvec-1.16.4/LICENSE-MIT +0 -0
  371. {sqlaero-0.2.0a1/licenses/third-party/version_check-0.9.5 → sqlaero-0.2.0b1/licenses/third-party/socket2-0.6.5}/LICENSE-APACHE +0 -0
  372. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/spki-0.8.1/LICENSE-APACHE +0 -0
  373. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/spki-0.8.1/LICENSE-MIT +0 -0
  374. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/subtle-2.6.1/LICENSE +0 -0
  375. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/syn-2.0.119/LICENSE-APACHE +0 -0
  376. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/syn-2.0.119/LICENSE-MIT +0 -0
  377. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/syn-3.0.9/LICENSE-APACHE +0 -0
  378. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/syn-3.0.9/LICENSE-MIT +0 -0
  379. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/tap-1.0.1/LICENSE.txt +0 -0
  380. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/target-lexicon-0.13.5/LICENSE +0 -0
  381. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/thiserror-2.0.21/LICENSE-APACHE +0 -0
  382. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/thiserror-2.0.21/LICENSE-MIT +0 -0
  383. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/thiserror-impl-2.0.21/LICENSE-APACHE +0 -0
  384. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/thiserror-impl-2.0.21/LICENSE-MIT +0 -0
  385. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/typenum-1.20.1/LICENSE +0 -0
  386. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/typenum-1.20.1/LICENSE-APACHE +0 -0
  387. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/typenum-1.20.1/LICENSE-MIT +0 -0
  388. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/unicode-ident-1.0.27/LICENSE-APACHE +0 -0
  389. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/unicode-ident-1.0.27/LICENSE-MIT +0 -0
  390. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/unicode-ident-1.0.27/LICENSE-UNICODE +0 -0
  391. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/universal-hash-0.6.1/LICENSE-APACHE +0 -0
  392. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/universal-hash-0.6.1/LICENSE-MIT +0 -0
  393. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/untrusted-0.7.1/LICENSE.txt +0 -0
  394. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/untrusted-0.9.0/LICENSE.txt +0 -0
  395. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/uuid-1.29.0/LICENSE-MIT +0 -0
  396. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/version_check-0.9.5/LICENSE-MIT +0 -0
  397. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/wyz-0.5.1/LICENSE.txt +0 -0
  398. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/zerocopy-0.8.63/LICENSE-APACHE +0 -0
  399. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/zerocopy-0.8.63/LICENSE-BSD +0 -0
  400. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/zerocopy-0.8.63/LICENSE-MIT +0 -0
  401. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/zeroize-1.9.1/LICENSE-APACHE +0 -0
  402. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/zeroize-1.9.1/LICENSE-MIT +0 -0
  403. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/licenses/third-party/zmij-1.0.23/LICENSE-MIT +0 -0
  404. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/__init__.py +0 -0
  405. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/error_codes.py +0 -0
  406. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/errors.py +0 -0
  407. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/py.typed +0 -0
  408. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/retry.py +0 -0
  409. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/retry.pyi +0 -0
  410. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/python/sqlaero/typing.py +0 -0
  411. {sqlaero-0.2.0a1 → sqlaero-0.2.0b1}/rust-toolchain.toml +0 -0
@@ -499,8 +499,6 @@ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
499
499
  [[package]]
500
500
  name = "jiter"
501
501
  version = "0.17.0"
502
- source = "registry+https://github.com/rust-lang/crates.io-index"
503
- checksum = "bc2f2b4e673d798b3dbad0af24bc23b92013e680a6b9ad300b4e5e52fafe0586"
504
502
  dependencies = [
505
503
  "ahash",
506
504
  "bitvec",
@@ -1247,7 +1245,7 @@ dependencies = [
1247
1245
 
1248
1246
  [[package]]
1249
1247
  name = "sqlaero-core"
1250
- version = "0.2.0-alpha.1"
1248
+ version = "0.2.0-beta.1"
1251
1249
  dependencies = [
1252
1250
  "aws-lc-rs",
1253
1251
  "core-foundation",
@@ -1263,18 +1261,20 @@ dependencies = [
1263
1261
  "pkcs8",
1264
1262
  "regex",
1265
1263
  "rustls",
1264
+ "rustls-native-certs",
1266
1265
  "rustls-pki-types",
1267
1266
  "rustls-platform-verifier",
1268
1267
  "security-framework",
1269
1268
  "socket2",
1270
1269
  "thiserror",
1270
+ "windows-sys 0.61.2",
1271
1271
  "zeroize",
1272
1272
  "zmij",
1273
1273
  ]
1274
1274
 
1275
1275
  [[package]]
1276
1276
  name = "sqlaero-python"
1277
- version = "0.2.0-alpha.1"
1277
+ version = "0.2.0-beta.1"
1278
1278
  dependencies = [
1279
1279
  "getrandom 0.3.4",
1280
1280
  "jiter",
@@ -1,9 +1,10 @@
1
1
  [workspace]
2
2
  members = ["crates/sqlaero-core", "crates/sqlaero-python"]
3
3
  resolver = "3"
4
+ exclude = ["third-party/jiter"]
4
5
 
5
6
  [workspace.package]
6
- version = "0.2.0-alpha.1"
7
+ version = "0.2.0-beta.1"
7
8
  edition = "2024"
8
9
  rust-version = "1.99.1"
9
10
  license = "MIT"
@@ -49,3 +50,6 @@ lto = "thin"
49
50
  codegen-units = 1
50
51
  panic = "unwind"
51
52
  overflow-checks = true
53
+
54
+ [patch.crates-io]
55
+ jiter = { path = "third-party/jiter" }
@@ -1,8 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlaero
3
- Version: 0.2.0a1
4
- Classifier: Development Status :: 3 - Alpha
3
+ Version: 0.2.0b1
4
+ Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Operating System :: MacOS :: MacOS X
6
+ Classifier: Operating System :: Microsoft :: Windows
7
+ Classifier: Operating System :: POSIX :: Linux
6
8
  Classifier: Programming Language :: Python :: Implementation :: CPython
7
9
  Classifier: Programming Language :: Python :: 3.12
8
10
  Classifier: Programming Language :: Python :: 3.13
@@ -66,6 +68,8 @@ License-File: licenses/third-party/core-foundation-0.10.1/LICENSE-APACHE
66
68
  License-File: licenses/third-party/core-foundation-0.10.1/LICENSE-MIT
67
69
  License-File: licenses/third-party/core-foundation-sys-0.8.7/LICENSE-APACHE
68
70
  License-File: licenses/third-party/core-foundation-sys-0.8.7/LICENSE-MIT
71
+ License-File: licenses/third-party/core_detect-1.0.0/LICENSE-APACHE
72
+ License-File: licenses/third-party/core_detect-1.0.0/LICENSE-MIT
69
73
  License-File: licenses/third-party/cpubits-0.1.1/LICENSE-APACHE
70
74
  License-File: licenses/third-party/cpubits-0.1.1/LICENSE-MIT
71
75
  License-File: licenses/third-party/cpufeatures-0.3.1/LICENSE-APACHE
@@ -151,6 +155,8 @@ License-File: licenses/third-party/num-traits-0.2.19/LICENSE-APACHE
151
155
  License-File: licenses/third-party/num-traits-0.2.19/LICENSE-MIT
152
156
  License-File: licenses/third-party/once_cell-1.21.4/LICENSE-APACHE
153
157
  License-File: licenses/third-party/once_cell-1.21.4/LICENSE-MIT
158
+ License-File: licenses/third-party/openssl-probe-0.2.1/LICENSE-APACHE
159
+ License-File: licenses/third-party/openssl-probe-0.2.1/LICENSE-MIT
154
160
  License-File: licenses/third-party/pbkdf2-0.13.0/LICENSE-APACHE
155
161
  License-File: licenses/third-party/pbkdf2-0.13.0/LICENSE-MIT
156
162
  License-File: licenses/third-party/pem-rfc7468-1.0.0/LICENSE-APACHE
@@ -193,6 +199,10 @@ License-File: licenses/third-party/ring-0.17.14/LICENSE-other-bits
193
199
  License-File: licenses/third-party/rustls-0.23.46/LICENSE-APACHE
194
200
  License-File: licenses/third-party/rustls-0.23.46/LICENSE-ISC
195
201
  License-File: licenses/third-party/rustls-0.23.46/LICENSE-MIT
202
+ License-File: licenses/third-party/rustls-native-certs-0.8.5/LICENSE
203
+ License-File: licenses/third-party/rustls-native-certs-0.8.5/LICENSE-APACHE
204
+ License-File: licenses/third-party/rustls-native-certs-0.8.5/LICENSE-ISC
205
+ License-File: licenses/third-party/rustls-native-certs-0.8.5/LICENSE-MIT
196
206
  License-File: licenses/third-party/rustls-pki-types-1.15.1/LICENSE-APACHE
197
207
  License-File: licenses/third-party/rustls-pki-types-1.15.1/LICENSE-MIT
198
208
  License-File: licenses/third-party/rustls-platform-verifier-0.7.1/LICENSE-APACHE
@@ -259,6 +269,10 @@ License-File: licenses/third-party/uuid-1.29.0/LICENSE-APACHE
259
269
  License-File: licenses/third-party/uuid-1.29.0/LICENSE-MIT
260
270
  License-File: licenses/third-party/version_check-0.9.5/LICENSE-APACHE
261
271
  License-File: licenses/third-party/version_check-0.9.5/LICENSE-MIT
272
+ License-File: licenses/third-party/windows-link-0.2.1/license-apache-2.0
273
+ License-File: licenses/third-party/windows-link-0.2.1/license-mit
274
+ License-File: licenses/third-party/windows-sys-0.61.2/license-apache-2.0
275
+ License-File: licenses/third-party/windows-sys-0.61.2/license-mit
262
276
  License-File: licenses/third-party/wyz-0.5.1/LICENSE.txt
263
277
  License-File: licenses/third-party/zerocopy-0.8.63/LICENSE-APACHE
264
278
  License-File: licenses/third-party/zerocopy-0.8.63/LICENSE-BSD
@@ -281,21 +295,26 @@ connection, parameter binding, result buffering and decoding core. Python values
281
295
  are adapted at the boundary; SQL literals are written into the current native
282
296
  request rather than generated as per-value Python SQL strings.
283
297
 
284
- The 0.2 alpha release targets macOS arm64, regular-GIL CPython 3.12–3.15,
285
- and MySQL 8.4 / 9.7. The release workflow builds and installs each actual wheel,
286
- tests it against both dedicated server lines, and reconstructs a wheel from the
287
- source distribution before publishing. The macOS 11.0 wheel deployment tag is
288
- a build target, not evidence that every older macOS release was tested.
289
- Async, free-threaded Python, Intel, Linux and Windows remain future work.
298
+ The 0.2 Beta targets regular-GIL CPython 3.12–3.15 on macOS arm64 / x86_64,
299
+ Windows x86_64 and glibc Linux x86_64, with MySQL 8.4 / 9.7. The release workflow
300
+ builds and installs all 16 original wheels, independently rebuilds and tests the
301
+ same source distribution in all 16 combinations, then publishes the same 17
302
+ files. A further 16 jobs install the exact version from PyPI and repeat the
303
+ applicable integration suite. Async and free-threaded Python remain future work.
304
+
305
+ The macOS 11.0 and manylinux_2_28 wheel tags are build compatibility targets,
306
+ not claims of runtime tests on every older OS release. Native CI runs on macOS
307
+ 26 arm64, macOS 15 Intel, Windows Server 2022 and Ubuntu 24.04. Linux musl and
308
+ other CPU architectures are outside this release matrix.
290
309
 
291
310
  ## Install
292
311
 
293
312
  ```sh
294
- python -m pip install --pre 'sqlaero==0.2.0a1'
313
+ python -m pip install --pre 'sqlaero==0.2.0b1'
295
314
  ```
296
315
 
297
- This alpha is a new Rust client. It is not an API-compatible update to the old
298
- Cython 0.1 alpha. See the [release notes](docs/releases/v0.2.0a1.md) for scope,
316
+ This Beta is a new Rust client. It is not an API-compatible update to the old
317
+ Cython 0.1 alpha. See the [release notes](docs/releases/v0.2.0b1.md) for scope,
299
318
  validation boundaries and migration cautions.
300
319
 
301
320
  ## Build from source
@@ -312,12 +331,21 @@ python -m pytest -q
312
331
  pyright
313
332
  ```
314
333
 
315
- Running the full integration suite also requires the two isolated local MySQL
316
- fixtures. On a macOS arm64 development machine with `mysql@8.4`, `mysql@9.7`
317
- and `openssl@4` installed through Homebrew, run `python tools/mysql_fixture.py
318
- prepare` before the tests and `python tools/mysql_fixture.py stop` afterward.
319
- The utility uses its own loopback ports and private temporary data directories;
320
- it does not start Homebrew services or use their default database directories.
334
+ Running the full integration suite also requires two isolated MySQL fixtures.
335
+ On a macOS development machine, install `mysql@8.4`, `mysql@9.7` and `openssl@4`
336
+ through Homebrew. Explicitly set `SQLAERO_TEST_MYSQL_ROOT` to an owned temporary
337
+ directory and `SQLAERO_NATIVE_MYSQL=1`, then run `python tools/mysql_fixture.py
338
+ prepare` before tests and `python tools/mysql_fixture.py stop` afterward. Tests
339
+ that require a real database refuse to select an implicit user database.
340
+ Linux and Windows use the official MySQL installations selected with
341
+ `SQLAERO_MYSQL_84_ROOT` and `SQLAERO_MYSQL_97_ROOT`; `SQLAERO_OPENSSL` can select
342
+ the OpenSSL executable. CI uses the shared native-environment action for this
343
+ preparation. The utility uses loopback ports and private temporary data, never
344
+ Homebrew services or their default database directories.
345
+ For Windows signal coverage, run `python tests/_native_signal.py --pytest -q
346
+ tests`; the launcher creates a private console before Python starts so real
347
+ control events cannot reach the shell or Actions runner. On POSIX this same
348
+ launcher executes the ordinary pytest command.
321
349
 
322
350
  ## Query and fetch
323
351
 
@@ -336,8 +364,10 @@ with connect(
336
364
  assert cursor.columns.names == ('n', 'label')
337
365
  ```
338
366
 
339
- Default TCP uses certificate/hostname verification; explicit Unix sockets use
340
- local plain transport unless TLS is explicitly configured. Initialization
367
+ Default TCP uses certificate/hostname verification; explicit Unix sockets on
368
+ macOS/Linux use local plain transport unless TLS is explicitly configured.
369
+ Windows uses TCP and clearly rejects `unix_socket` without a transport fallback.
370
+ Initialization
341
371
  confirms UTC, character encoding, autocommit and the server session timeouts
342
372
  before returning a usable connection. Paths accept str and os.PathLike values.
343
373
  Memory-size settings accept byte integers or forms such as `64MB` / `64MiB`.
@@ -350,6 +380,9 @@ exact list/tuple provide positional, nested and batch structure. Third-party
350
380
  arrays/tables, arbitrary subclasses and memoryview are outside this first version.
351
381
  Nonfinite float/Decimal values become NULL. Aware datetime inputs normalize to
352
382
  UTC and require a reliably confirmed UTC session.
383
+ `datetime.time` inputs preserve their clock fields and microseconds, ignore
384
+ `tzinfo`, and never call timezone methods. For example, `00:30+01:00` is written
385
+ as `'00:30:00'`; unlike aware `datetime`, it is not converted to UTC.
353
386
 
354
387
  `executemany(sql, rows)` is the same native `many=True, itemize=True` path.
355
388
  Approved INSERT/REPLACE VALUES forms merge complete rows within the actual
@@ -394,7 +427,13 @@ implicitly.
394
427
 
395
428
  ## Performance and development
396
429
 
397
- On the measured macOS arm64 / CPython 3.13.3 machine, the final native combination
430
+ The following figures belong to the original alpha evidence and do not describe
431
+ the later repair artifacts or this Beta. The [Beta release notes](docs/releases/v0.2.0b1.md)
432
+ explain those boundaries. Native build, installed-package and source-rebuild
433
+ checks are available in the [release workflow runs](https://github.com/AresJef/SQLAero/actions/workflows/release.yml);
434
+ local formal performance measurements are kept separate from CI observations.
435
+
436
+ On the measured macOS arm64 / CPython 3.13.3 machine, the original frozen W06 combination
398
437
  passed 480 main and 204 independent protection scenarios against its initial
399
438
  functional Rust baseline. Representative improvements included 1.61× for a
400
439
  1,000-element string list, 1.58× for binding 1,000 INSERT rows, and 1.16–1.19×
@@ -5,21 +5,26 @@ connection, parameter binding, result buffering and decoding core. Python values
5
5
  are adapted at the boundary; SQL literals are written into the current native
6
6
  request rather than generated as per-value Python SQL strings.
7
7
 
8
- The 0.2 alpha release targets macOS arm64, regular-GIL CPython 3.12–3.15,
9
- and MySQL 8.4 / 9.7. The release workflow builds and installs each actual wheel,
10
- tests it against both dedicated server lines, and reconstructs a wheel from the
11
- source distribution before publishing. The macOS 11.0 wheel deployment tag is
12
- a build target, not evidence that every older macOS release was tested.
13
- Async, free-threaded Python, Intel, Linux and Windows remain future work.
8
+ The 0.2 Beta targets regular-GIL CPython 3.12–3.15 on macOS arm64 / x86_64,
9
+ Windows x86_64 and glibc Linux x86_64, with MySQL 8.4 / 9.7. The release workflow
10
+ builds and installs all 16 original wheels, independently rebuilds and tests the
11
+ same source distribution in all 16 combinations, then publishes the same 17
12
+ files. A further 16 jobs install the exact version from PyPI and repeat the
13
+ applicable integration suite. Async and free-threaded Python remain future work.
14
+
15
+ The macOS 11.0 and manylinux_2_28 wheel tags are build compatibility targets,
16
+ not claims of runtime tests on every older OS release. Native CI runs on macOS
17
+ 26 arm64, macOS 15 Intel, Windows Server 2022 and Ubuntu 24.04. Linux musl and
18
+ other CPU architectures are outside this release matrix.
14
19
 
15
20
  ## Install
16
21
 
17
22
  ```sh
18
- python -m pip install --pre 'sqlaero==0.2.0a1'
23
+ python -m pip install --pre 'sqlaero==0.2.0b1'
19
24
  ```
20
25
 
21
- This alpha is a new Rust client. It is not an API-compatible update to the old
22
- Cython 0.1 alpha. See the [release notes](docs/releases/v0.2.0a1.md) for scope,
26
+ This Beta is a new Rust client. It is not an API-compatible update to the old
27
+ Cython 0.1 alpha. See the [release notes](docs/releases/v0.2.0b1.md) for scope,
23
28
  validation boundaries and migration cautions.
24
29
 
25
30
  ## Build from source
@@ -36,12 +41,21 @@ python -m pytest -q
36
41
  pyright
37
42
  ```
38
43
 
39
- Running the full integration suite also requires the two isolated local MySQL
40
- fixtures. On a macOS arm64 development machine with `mysql@8.4`, `mysql@9.7`
41
- and `openssl@4` installed through Homebrew, run `python tools/mysql_fixture.py
42
- prepare` before the tests and `python tools/mysql_fixture.py stop` afterward.
43
- The utility uses its own loopback ports and private temporary data directories;
44
- it does not start Homebrew services or use their default database directories.
44
+ Running the full integration suite also requires two isolated MySQL fixtures.
45
+ On a macOS development machine, install `mysql@8.4`, `mysql@9.7` and `openssl@4`
46
+ through Homebrew. Explicitly set `SQLAERO_TEST_MYSQL_ROOT` to an owned temporary
47
+ directory and `SQLAERO_NATIVE_MYSQL=1`, then run `python tools/mysql_fixture.py
48
+ prepare` before tests and `python tools/mysql_fixture.py stop` afterward. Tests
49
+ that require a real database refuse to select an implicit user database.
50
+ Linux and Windows use the official MySQL installations selected with
51
+ `SQLAERO_MYSQL_84_ROOT` and `SQLAERO_MYSQL_97_ROOT`; `SQLAERO_OPENSSL` can select
52
+ the OpenSSL executable. CI uses the shared native-environment action for this
53
+ preparation. The utility uses loopback ports and private temporary data, never
54
+ Homebrew services or their default database directories.
55
+ For Windows signal coverage, run `python tests/_native_signal.py --pytest -q
56
+ tests`; the launcher creates a private console before Python starts so real
57
+ control events cannot reach the shell or Actions runner. On POSIX this same
58
+ launcher executes the ordinary pytest command.
45
59
 
46
60
  ## Query and fetch
47
61
 
@@ -60,8 +74,10 @@ with connect(
60
74
  assert cursor.columns.names == ('n', 'label')
61
75
  ```
62
76
 
63
- Default TCP uses certificate/hostname verification; explicit Unix sockets use
64
- local plain transport unless TLS is explicitly configured. Initialization
77
+ Default TCP uses certificate/hostname verification; explicit Unix sockets on
78
+ macOS/Linux use local plain transport unless TLS is explicitly configured.
79
+ Windows uses TCP and clearly rejects `unix_socket` without a transport fallback.
80
+ Initialization
65
81
  confirms UTC, character encoding, autocommit and the server session timeouts
66
82
  before returning a usable connection. Paths accept str and os.PathLike values.
67
83
  Memory-size settings accept byte integers or forms such as `64MB` / `64MiB`.
@@ -74,6 +90,9 @@ exact list/tuple provide positional, nested and batch structure. Third-party
74
90
  arrays/tables, arbitrary subclasses and memoryview are outside this first version.
75
91
  Nonfinite float/Decimal values become NULL. Aware datetime inputs normalize to
76
92
  UTC and require a reliably confirmed UTC session.
93
+ `datetime.time` inputs preserve their clock fields and microseconds, ignore
94
+ `tzinfo`, and never call timezone methods. For example, `00:30+01:00` is written
95
+ as `'00:30:00'`; unlike aware `datetime`, it is not converted to UTC.
77
96
 
78
97
  `executemany(sql, rows)` is the same native `many=True, itemize=True` path.
79
98
  Approved INSERT/REPLACE VALUES forms merge complete rows within the actual
@@ -118,7 +137,13 @@ implicitly.
118
137
 
119
138
  ## Performance and development
120
139
 
121
- On the measured macOS arm64 / CPython 3.13.3 machine, the final native combination
140
+ The following figures belong to the original alpha evidence and do not describe
141
+ the later repair artifacts or this Beta. The [Beta release notes](docs/releases/v0.2.0b1.md)
142
+ explain those boundaries. Native build, installed-package and source-rebuild
143
+ checks are available in the [release workflow runs](https://github.com/AresJef/SQLAero/actions/workflows/release.yml);
144
+ local formal performance measurements are kept separate from CI observations.
145
+
146
+ On the measured macOS arm64 / CPython 3.13.3 machine, the original frozen W06 combination
122
147
  passed 480 main and 204 independent protection scenarios against its initial
123
148
  functional Rust baseline. Representative improvements included 1.61× for a
124
149
  1,000-element string list, 1.58× for binding 1,000 INSERT rows, and 1.16–1.19×
@@ -2,9 +2,15 @@
2
2
 
3
3
  This native build uses the locked packages below. Original notices and license
4
4
  texts are preserved under `licenses/third-party/`. This inventory describes the
5
- current aarch64-apple-darwin graph; it is regenerated when the shipped graph changes.
5
+ union of the locked runtime/build graphs for all four native release targets;
6
+ it is updated when the shipped graphs change.
6
7
  The package license expression does not replace its original copyright notices.
7
8
 
9
+ SQLAero carries a narrowly patched jiter 0.17.0 at `third-party/jiter/`.
10
+ Its upstream MIT license and platform scanners are preserved. The local changes
11
+ add fallible work checkpoints used only by the Python result boundary; provenance,
12
+ scope and upgrade instructions are in `third-party/jiter/SQLAERO_PATCH.md`.
13
+
8
14
  | Package | Version | Declared license | Original texts |
9
15
  | --- | --- | --- | --- |
10
16
  | adler2 | 2.0.1 | 0BSD OR MIT OR Apache-2.0 | [LICENSE-0BSD](licenses/third-party/adler2-2.0.1/LICENSE-0BSD), [LICENSE-APACHE](licenses/third-party/adler2-2.0.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/adler2-2.0.1/LICENSE-MIT) |
@@ -34,6 +40,7 @@ The package license expression does not replace its original copyright notices.
34
40
  | const-oid | 0.10.2 | Apache-2.0 OR MIT | [LICENSE-APACHE](licenses/third-party/const-oid-0.10.2/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/const-oid-0.10.2/LICENSE-MIT) |
35
41
  | core-foundation | 0.10.1 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/core-foundation-0.10.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/core-foundation-0.10.1/LICENSE-MIT) |
36
42
  | core-foundation-sys | 0.8.7 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/core-foundation-sys-0.8.7/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/core-foundation-sys-0.8.7/LICENSE-MIT) |
43
+ | core_detect | 1.0.0 | MIT/Apache-2.0 | [LICENSE-APACHE](licenses/third-party/core_detect-1.0.0/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/core_detect-1.0.0/LICENSE-MIT) |
37
44
  | cpubits | 0.1.1 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/cpubits-0.1.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/cpubits-0.1.1/LICENSE-MIT) |
38
45
  | cpufeatures | 0.3.1 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/cpufeatures-0.3.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/cpufeatures-0.3.1/LICENSE-MIT) |
39
46
  | crc32fast | 1.5.3 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/crc32fast-1.5.3/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/crc32fast-1.5.3/LICENSE-MIT) |
@@ -75,6 +82,7 @@ The package license expression does not replace its original copyright notices.
75
82
  | num-integer | 0.1.47 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/num-integer-0.1.47/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/num-integer-0.1.47/LICENSE-MIT) |
76
83
  | num-traits | 0.2.19 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/num-traits-0.2.19/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/num-traits-0.2.19/LICENSE-MIT) |
77
84
  | once_cell | 1.21.4 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/once_cell-1.21.4/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/once_cell-1.21.4/LICENSE-MIT) |
85
+ | openssl-probe | 0.2.1 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/openssl-probe-0.2.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/openssl-probe-0.2.1/LICENSE-MIT) |
78
86
  | pbkdf2 | 0.13.0 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/pbkdf2-0.13.0/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/pbkdf2-0.13.0/LICENSE-MIT) |
79
87
  | pem-rfc7468 | 1.0.0 | Apache-2.0 OR MIT | [LICENSE-APACHE](licenses/third-party/pem-rfc7468-1.0.0/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/pem-rfc7468-1.0.0/LICENSE-MIT) |
80
88
  | pkcs5 | 0.8.1 | Apache-2.0 OR MIT | [LICENSE-APACHE](licenses/third-party/pkcs5-0.8.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/pkcs5-0.8.1/LICENSE-MIT) |
@@ -95,6 +103,7 @@ The package license expression does not replace its original copyright notices.
95
103
  | regex-syntax | 0.8.11 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/regex-syntax-0.8.11/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/regex-syntax-0.8.11/LICENSE-MIT) |
96
104
  | ring | 0.17.14 | Apache-2.0 AND ISC | [LICENSE](licenses/third-party/ring-0.17.14/LICENSE), [LICENSE-BoringSSL](licenses/third-party/ring-0.17.14/LICENSE-BoringSSL), [LICENSE-other-bits](licenses/third-party/ring-0.17.14/LICENSE-other-bits) |
97
105
  | rustls | 0.23.46 | Apache-2.0 OR ISC OR MIT | [LICENSE-APACHE](licenses/third-party/rustls-0.23.46/LICENSE-APACHE), [LICENSE-ISC](licenses/third-party/rustls-0.23.46/LICENSE-ISC), [LICENSE-MIT](licenses/third-party/rustls-0.23.46/LICENSE-MIT) |
106
+ | rustls-native-certs | 0.8.5 | Apache-2.0 OR ISC OR MIT | [LICENSE-APACHE](licenses/third-party/rustls-native-certs-0.8.5/LICENSE-APACHE), [LICENSE](licenses/third-party/rustls-native-certs-0.8.5/LICENSE), [LICENSE-ISC](licenses/third-party/rustls-native-certs-0.8.5/LICENSE-ISC), [LICENSE-MIT](licenses/third-party/rustls-native-certs-0.8.5/LICENSE-MIT) |
98
107
  | rustls-pki-types | 1.15.1 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/rustls-pki-types-1.15.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/rustls-pki-types-1.15.1/LICENSE-MIT) |
99
108
  | rustls-platform-verifier | 0.7.1 | MIT OR Apache-2.0 | [LICENSE-APACHE](licenses/third-party/rustls-platform-verifier-0.7.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/rustls-platform-verifier-0.7.1/LICENSE-MIT) |
100
109
  | rustls-webpki | 0.103.16 | ISC | [LICENSE](licenses/third-party/rustls-webpki-0.103.16/LICENSE) |
@@ -131,6 +140,8 @@ The package license expression does not replace its original copyright notices.
131
140
  | untrusted | 0.9.0 | ISC | [LICENSE.txt](licenses/third-party/untrusted-0.9.0/LICENSE.txt) |
132
141
  | uuid | 1.29.0 | Apache-2.0 OR MIT | [LICENSE-APACHE](licenses/third-party/uuid-1.29.0/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/uuid-1.29.0/LICENSE-MIT) |
133
142
  | version_check | 0.9.5 | MIT/Apache-2.0 | [LICENSE-APACHE](licenses/third-party/version_check-0.9.5/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/version_check-0.9.5/LICENSE-MIT) |
143
+ | windows-link | 0.2.1 | MIT OR Apache-2.0 | [license-apache-2.0](licenses/third-party/windows-link-0.2.1/license-apache-2.0), [license-mit](licenses/third-party/windows-link-0.2.1/license-mit) |
144
+ | windows-sys | 0.61.2 | MIT OR Apache-2.0 | [license-apache-2.0](licenses/third-party/windows-sys-0.61.2/license-apache-2.0), [license-mit](licenses/third-party/windows-sys-0.61.2/license-mit) |
134
145
  | wyz | 0.5.1 | MIT | [LICENSE.txt](licenses/third-party/wyz-0.5.1/LICENSE.txt) |
135
146
  | zerocopy | 0.8.63 | BSD-2-Clause OR Apache-2.0 OR MIT | [LICENSE-APACHE](licenses/third-party/zerocopy-0.8.63/LICENSE-APACHE), [LICENSE-BSD](licenses/third-party/zerocopy-0.8.63/LICENSE-BSD), [LICENSE-MIT](licenses/third-party/zerocopy-0.8.63/LICENSE-MIT) |
136
147
  | zeroize | 1.9.1 | Apache-2.0 OR MIT | [LICENSE-APACHE](licenses/third-party/zeroize-1.9.1/LICENSE-APACHE), [LICENSE-MIT](licenses/third-party/zeroize-1.9.1/LICENSE-MIT) |
@@ -36,5 +36,11 @@ core-foundation-sys.workspace = true
36
36
  [target.'cfg(unix)'.dependencies]
37
37
  libc.workspace = true
38
38
 
39
+ [target.'cfg(not(any(target_vendor = "apple", windows)))'.dependencies]
40
+ rustls-native-certs = "=0.8.5"
41
+
42
+ [target.'cfg(windows)'.dependencies]
43
+ windows-sys = { version = "=0.61.2", features = ["Win32_Foundation", "Win32_Security_Cryptography"] }
44
+
39
45
  [lints]
40
46
  workspace = true