databricks-sql-kernel 0.3.0__tar.gz → 1.1.0__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 (250) hide show
  1. databricks_sql_kernel-1.1.0/.github/scripts/check-release-debuginfo.ps1 +154 -0
  2. databricks_sql_kernel-1.1.0/.github/scripts/check-release-debuginfo.sh +164 -0
  3. databricks_sql_kernel-1.1.0/.github/workflows/release-debuginfo.yml +138 -0
  4. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/CHANGELOG.md +29 -0
  5. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/Cargo.lock +19 -5
  6. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/Cargo.toml +20 -2
  7. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/PKG-INFO +1 -1
  8. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/README.md +5 -0
  9. databricks_sql_kernel-1.1.0/docs/release-debuginfo.md +103 -0
  10. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/spec-v0.md +10 -3
  11. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/include/databricks_kernel.h +105 -5
  12. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/CHANGELOG.md +12 -0
  13. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/Cargo.lock +68 -6
  14. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/Cargo.toml +1 -1
  15. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/executed_async.rs +1 -1
  16. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/session.rs +38 -7
  17. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyproject.toml +1 -1
  18. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/c_abi/mod.rs +120 -1
  19. databricks_sql_kernel-1.1.0/src/c_abi/result.rs +829 -0
  20. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/c_abi/session.rs +103 -9
  21. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/c_abi/statement.rs +119 -1
  22. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/client/http.rs +34 -17
  23. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/client/mod.rs +2 -1
  24. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/client/sea.rs +947 -85
  25. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/client/transport.rs +39 -4
  26. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/config.rs +37 -12
  27. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/kernel_error.rs +1 -0
  28. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/lib.rs +1 -0
  29. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/cloudfetch/chunk_downloader.rs +32 -4
  30. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/cloudfetch/link_fetcher.rs +14 -10
  31. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/cloudfetch/streaming_provider.rs +991 -16
  32. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/mod.rs +14 -3
  33. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/test_utils.rs +35 -0
  34. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/session.rs +297 -4
  35. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/executed_async.rs +35 -16
  36. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/mod.rs +2 -0
  37. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/mutable.rs +93 -7
  38. databricks_sql_kernel-1.1.0/src/statement/timeout.rs +210 -0
  39. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/models.rs +1 -1
  40. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/runtime.rs +38 -1
  41. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/types/cloudfetch.rs +35 -2
  42. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/types/sea.rs +36 -0
  43. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/c/session_smoke.c +13 -0
  44. databricks_sql_kernel-1.1.0/tests/symbols/staticlib_consumer.c +26 -0
  45. databricks_sql_kernel-1.1.0/tests/tls_rustls_native_roots.rs +229 -0
  46. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_async_execute_wiremock.rs +81 -1
  47. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_c_abi_canceller_wiremock.rs +122 -9
  48. databricks_sql_kernel-1.1.0/tests/v0_c_abi_result_stream_canceller_wiremock.rs +155 -0
  49. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_c_abi_session_test_wiremock.rs +58 -2
  50. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_execute_wiremock.rs +549 -6
  51. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/appkit/download-release.sh +0 -75
  52. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/appkit/poll-release.sh +0 -85
  53. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-cargo.sh +0 -29
  54. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-coursier.sh +0 -19
  55. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-gradle.sh +0 -65
  56. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-maven.sh +0 -37
  57. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-npm.sh +0 -11
  58. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-pip.sh +0 -7
  59. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/configure-sbt.sh +0 -116
  60. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/deco-dispatch-tagging-single.sh +0 -48
  61. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/deco-dispatch-tagging.sh +0 -107
  62. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/deco-load-maven-creds.sh +0 -88
  63. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/deco-pending-tags.sh +0 -116
  64. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/download-artifact.sh +0 -51
  65. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/extract-changelog.sh +0 -69
  66. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/jfrog-oidc-token.py +0 -77
  67. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/jfrog-oidc-token.sh +0 -27
  68. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/maven-central-publish.sh +0 -288
  69. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/maven-deploy.sh +0 -225
  70. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/mlflow/ts_publish.ts +0 -170
  71. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/mlflow/validate_ts_release.ts +0 -183
  72. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/npm-oidc-publish.sh +0 -112
  73. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/omnigent/site-desktop-feed.mjs +0 -204
  74. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/omnigent/vercel-blob-upload.mjs +0 -139
  75. databricks_sql_kernel-0.3.0/_release-scripts/.github/scripts/pypi-oidc-publish.sh +0 -128
  76. databricks_sql_kernel-0.3.0/_release-scripts/CODEOWNERS +0 -141
  77. databricks_sql_kernel-0.3.0/src/c_abi/result.rs +0 -399
  78. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/config.yaml +0 -0
  79. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/context-repos.yaml +0 -0
  80. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/prompts/engineer/system.md +0 -0
  81. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/prompts/engineer/user.md +0 -0
  82. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/prompts/engineer-followup/system.md +0 -0
  83. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/prompts/retrospective_system.md +0 -0
  84. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.bot/prompts/review/system.md +0 -0
  85. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.claude/knowledge/learning-log.md +0 -0
  86. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/CODEOWNERS +0 -0
  87. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/actions/bot-prelude/action.yml +0 -0
  88. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/actions/install-bot-engine/action.yml +0 -0
  89. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/actions/setup-jfrog/action.yml +0 -0
  90. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/dependabot.yml +0 -0
  91. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/scripts/check-napi-loader-drift.sh +0 -0
  92. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/cargo-publish.yml +0 -0
  93. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/close-stale.yml +0 -0
  94. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/coverage.yml +0 -0
  95. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/dco-check.yml +0 -0
  96. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/engineer-bot-followup.yml +0 -0
  97. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/engineer-bot-learning.yml +0 -0
  98. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/engineer-bot.yml +0 -0
  99. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/license-check.yml +0 -0
  100. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/napi-checks.yml +0 -0
  101. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/pr-checks.yml +0 -0
  102. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/pyo3-checks.yml +0 -0
  103. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/reviewer-bot-followup.yml +0 -0
  104. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/reviewer-bot.yml +0 -0
  105. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/rust-e2e.yml +0 -0
  106. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/securityScan.yml +0 -0
  107. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/skip-checks-reporter.yml +0 -0
  108. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/trigger-coverage-fanout.yml +0 -0
  109. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.github/workflows/trigger-integration-tests.yml +0 -0
  110. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/.gitignore +0 -0
  111. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/CLAUDE.md +0 -0
  112. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/CONNECTION_PARAMETERS.md +0 -0
  113. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/LICENSE +0 -0
  114. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/Makefile +0 -0
  115. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/NEXT_CHANGELOG.md +0 -0
  116. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/NOTICE.txt +0 -0
  117. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/about.toml +0 -0
  118. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/ci/proxy/htpasswd +0 -0
  119. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/ci/proxy/squid-auth.conf +0 -0
  120. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/clippy.toml +0 -0
  121. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/deny.toml +0 -0
  122. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/PECOBLR-2091-retry-logic-design.md +0 -0
  123. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/PECOBLR-4141-azure-service-principal-design.md +0 -0
  124. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/PECOBLR-4146-oauth-token-persistence-design.md +0 -0
  125. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/client-refactor-design.md +0 -0
  126. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/cloudfetch-implementation-plan.md +0 -0
  127. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/cloudfetch-pipeline-redesign.md +0 -0
  128. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/complex-types-json-stringify.md +0 -0
  129. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/connection-metadata-design.md +0 -0
  130. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/fix-duplicate-link-prefetch.md +0 -0
  131. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/inline-arrow-results-design.md +0 -0
  132. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/kernel-telemetry-design.md +0 -0
  133. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/oauth-sprint-plan.md +0 -0
  134. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/oauth-u2m-m2m-design.md +0 -0
  135. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/odbc-batch-optimization.md +0 -0
  136. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/odbc-metadata-ffi-design.md +0 -0
  137. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/prepared-statement-design.md +0 -0
  138. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/proxy-support-design.md +0 -0
  139. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/result-metadata-propagation.md +0 -0
  140. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/tls-config-design.md +0 -0
  141. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/designs/token-federation-design.md +0 -0
  142. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/migration-plan.md +0 -0
  143. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/pr-4-plan.md +0 -0
  144. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/docs/pr-5-plan.md +0 -0
  145. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/include/legacy/databricks_metadata_ffi.h +0 -0
  146. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/license.tpl +0 -0
  147. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/osv-scanner.toml +0 -0
  148. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/NEXT_CHANGELOG.md +0 -0
  149. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/pytest.ini +0 -0
  150. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/release-notes.txt +0 -0
  151. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/auth.rs +0 -0
  152. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/errors.rs +0 -0
  153. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/fetch.rs +0 -0
  154. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/lib.rs +0 -0
  155. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/logging.rs +0 -0
  156. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/macros.rs +0 -0
  157. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/metadata.rs +0 -0
  158. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/params.rs +0 -0
  159. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/result_stream.rs +0 -0
  160. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/src/statement.rs +0 -0
  161. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/conftest.py +0 -0
  162. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/test_async.py +0 -0
  163. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/test_auth.py +0 -0
  164. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/test_execute.py +0 -0
  165. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/test_metadata.py +0 -0
  166. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/test_module.py +0 -0
  167. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/pyo3/tests/test_session.py +0 -0
  168. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/release-notes.txt +0 -0
  169. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/config.rs +0 -0
  170. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/mod.rs +0 -0
  171. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/azure.rs +0 -0
  172. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/cache.rs +0 -0
  173. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/cache_crypto.rs +0 -0
  174. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/callback.rs +0 -0
  175. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/federation.rs +0 -0
  176. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/jwt.rs +0 -0
  177. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/jwt_key.rs +0 -0
  178. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/jwt_m2m.rs +0 -0
  179. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/m2m.rs +0 -0
  180. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/mod.rs +0 -0
  181. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/oidc.rs +0 -0
  182. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/test_keys.rs +0 -0
  183. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/token.rs +0 -0
  184. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/token_store.rs +0 -0
  185. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/oauth/u2m.rs +0 -0
  186. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/auth/pat.rs +0 -0
  187. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/c_abi/error.rs +0 -0
  188. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/c_abi/metadata.rs +0 -0
  189. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/client/retry.rs +0 -0
  190. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/klog.rs +0 -0
  191. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/logging.rs +0 -0
  192. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata/mod.rs +0 -0
  193. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata/schemas.rs +0 -0
  194. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata/sql.rs +0 -0
  195. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata/static_data.rs +0 -0
  196. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata/thrift_shape.rs +0 -0
  197. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata/type_mapping.rs +0 -0
  198. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/metadata_v0.rs +0 -0
  199. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/cloudfetch/arrow_parser.rs +0 -0
  200. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/cloudfetch/mod.rs +0 -0
  201. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/inline/mod.rs +0 -0
  202. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/inline/provider.rs +0 -0
  203. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/inline/streaming.rs +0 -0
  204. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/post_processor/json.rs +0 -0
  205. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/reader/post_processor/mod.rs +0 -0
  206. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/result/mod.rs +0 -0
  207. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/result_stream.rs +0 -0
  208. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/dml_count.rs +0 -0
  209. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/executed.rs +0 -0
  210. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/handle.rs +0 -0
  211. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/params.rs +0 -0
  212. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/params_codec.rs +0 -0
  213. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/spec.rs +0 -0
  214. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/statement/validity.rs +0 -0
  215. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/circuit_breaker.rs +0 -0
  216. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/client.rs +0 -0
  217. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/databricks.rs +0 -0
  218. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/exporter.rs +0 -0
  219. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/manager.rs +0 -0
  220. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/mod.rs +0 -0
  221. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/statement.rs +0 -0
  222. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/telemetry/test_support.rs +0 -0
  223. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/types/mod.rs +0 -0
  224. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/util/mod.rs +0 -0
  225. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/src/util/runtime.rs +0 -0
  226. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/bot_e2e_helper.rs +0 -0
  227. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/c_abi_logging_callback.rs +0 -0
  228. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/c_abi_logging_callback_conflict.rs +0 -0
  229. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/c_abi_logging_callback_panic.rs +0 -0
  230. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/c_abi_logging_callback_reentrancy.rs +0 -0
  231. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/c_abi_mtls_e2e.rs +0 -0
  232. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/common/mod.rs +0 -0
  233. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/klog_bridge.rs +0 -0
  234. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/oauth_u2m_integration.rs +0 -0
  235. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/token_federation_wiremock.rs +0 -0
  236. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_async_execute_e2e.rs +0 -0
  237. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_c_abi_metadata_table_types_wiremock.rs +0 -0
  238. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_c_abi_result_config_wiremock.rs +0 -0
  239. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_c_abi_session_close_wiremock.rs +0 -0
  240. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_execute_e2e.rs +0 -0
  241. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_logging_wiremock.rs +0 -0
  242. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_metadata_e2e.rs +0 -0
  243. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_metadata_empty_types_e2e.rs +0 -0
  244. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_metadata_wiremock.rs +0 -0
  245. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_query_tags_headers_e2e.rs +0 -0
  246. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_session_e2e.rs +0 -0
  247. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_session_wiremock.rs +0 -0
  248. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_statement_canceller_reexecute.rs +0 -0
  249. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_tls_e2e.rs +0 -0
  250. {databricks_sql_kernel-0.3.0 → databricks_sql_kernel-1.1.0}/tests/v0_transactions_e2e.rs +0 -0
@@ -0,0 +1,154 @@
1
+ # Copyright (c) 2026 Databricks, Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ Set-StrictMode -Version Latest
16
+ $ErrorActionPreference = "Stop"
17
+
18
+ function Invoke-Checked {
19
+ param(
20
+ [Parameter(Mandatory = $true)][string]$FilePath,
21
+ [Parameter(Mandatory = $false)][AllowEmptyCollection()][string[]]$Arguments = @()
22
+ )
23
+
24
+ & $FilePath @Arguments
25
+ if ($LASTEXITCODE -ne 0) {
26
+ throw "command failed with exit code ${LASTEXITCODE}: $FilePath $($Arguments -join ' ')"
27
+ }
28
+ }
29
+
30
+ function Find-AsciiMatch {
31
+ param(
32
+ [Parameter(Mandatory = $true)][string]$Path,
33
+ [Parameter(Mandatory = $true)][regex]$Pattern
34
+ )
35
+
36
+ $buffer = [byte[]]::new(65536)
37
+ $tail = ""
38
+ $stream = [System.IO.File]::OpenRead($Path)
39
+ try {
40
+ while (($bytesRead = $stream.Read($buffer, 0, $buffer.Length)) -gt 0) {
41
+ $chunk = $tail + [System.Text.Encoding]::ASCII.GetString($buffer, 0, $bytesRead)
42
+ $match = $Pattern.Match($chunk)
43
+ if ($match.Success) {
44
+ return $match.Value
45
+ }
46
+ $tailLength = [Math]::Min(1024, $chunk.Length)
47
+ $tail = $chunk.Substring($chunk.Length - $tailLength)
48
+ }
49
+ } finally {
50
+ $stream.Dispose()
51
+ }
52
+ return $null
53
+ }
54
+
55
+ $profileName = "release-with-debuginfo"
56
+ $repoRoot = (Resolve-Path (Join-Path $PSScriptRoot "../..")).Path
57
+ $targetRoot = if ($env:CARGO_TARGET_DIR) {
58
+ [System.IO.Path]::GetFullPath($env:CARGO_TARGET_DIR, $repoRoot)
59
+ } else {
60
+ Join-Path $repoRoot "target"
61
+ }
62
+ $profileDir = Join-Path $targetRoot $profileName
63
+ $source = Join-Path $repoRoot "tests/symbols/staticlib_consumer.c"
64
+ $includeDir = Join-Path $repoRoot "include"
65
+ $archive = Join-Path $profileDir "databricks_sql_kernel.lib"
66
+ $object = Join-Path $profileDir "staticlib_consumer.obj"
67
+ $executable = Join-Path $profileDir "kernel-symbol-smoke.exe"
68
+ $pdb = Join-Path $profileDir "kernel-symbol-smoke.pdb"
69
+
70
+ New-Item -ItemType Directory -Force -Path $profileDir | Out-Null
71
+ Push-Location $repoRoot
72
+ try {
73
+ # Build the exact static archive under test and capture the MSVC system
74
+ # libraries that rustc says its final native linker must receive.
75
+ # The toolchain action enables color globally; disable it here so ANSI reset
76
+ # bytes cannot become part of the parsed final library argument.
77
+ $env:CARGO_TERM_COLOR = "never"
78
+ $buildLines = @(& cargo rustc --locked --profile $profileName --lib -- --print=native-static-libs 2>&1)
79
+ $buildExit = $LASTEXITCODE
80
+ $buildLines | ForEach-Object { Write-Host $_ }
81
+ if ($buildExit -ne 0) {
82
+ throw "cargo rustc failed with exit code $buildExit"
83
+ }
84
+ if (-not (Test-Path -LiteralPath $archive -PathType Leaf)) {
85
+ throw "Cargo did not produce $archive"
86
+ }
87
+
88
+ $nativeLine = $buildLines |
89
+ ForEach-Object { "$_" } |
90
+ Where-Object { $_ -match "native-static-libs:\s*(.+)$" } |
91
+ Select-Object -Last 1
92
+ if (-not $nativeLine) {
93
+ throw "rustc did not report native-static-libs"
94
+ }
95
+ $nativeText = ([regex]::Match($nativeLine, "native-static-libs:\s*(.+)$")).Groups[1].Value.Trim()
96
+ $nativeLinkArgs = @($nativeText -split "\s+" | Where-Object { $_ })
97
+
98
+ Invoke-Checked "cl.exe" @(
99
+ "/nologo", "/c", "/O2", "/MD", "/Z7", "/I$includeDir", $source, "/Fo$object"
100
+ )
101
+ $linkArgs = @(
102
+ "/NOLOGO", "/DEBUG:FULL", "/OPT:REF", "/OPT:ICF", "/INCREMENTAL:NO",
103
+ "/PDB:$pdb", "/PDBALTPATH:%_PDB%", "/OUT:$executable",
104
+ $object, $archive
105
+ ) + $nativeLinkArgs
106
+ Invoke-Checked "link.exe" $linkArgs
107
+ if (-not (Test-Path -LiteralPath $pdb -PathType Leaf)) {
108
+ throw "link.exe did not produce $pdb"
109
+ }
110
+ Invoke-Checked $executable @()
111
+
112
+ if (-not (Get-Command "dumpbin.exe" -ErrorAction SilentlyContinue)) {
113
+ throw "dumpbin.exe is required to validate the executable/PDB CodeView identity"
114
+ }
115
+
116
+ $functionPattern = [regex]::new("kernel_get_last_error")
117
+ $sourcePattern = [regex]::new("(?i)src[\\/]c_abi[\\/]error\.rs")
118
+ if (-not (Find-AsciiMatch $pdb $functionPattern)) {
119
+ throw "PDB does not describe kernel_get_last_error"
120
+ }
121
+ if (-not (Find-AsciiMatch $pdb $sourcePattern)) {
122
+ throw "PDB does not name src/c_abi/error.rs"
123
+ }
124
+
125
+ # The PE carries only the CodeView locator/identity; source and function
126
+ # records stay in the separately published PDB. In an isolated directory,
127
+ # dumpbin reports the adjacent PDB only when its GUID and age match the PE.
128
+ $checkDir = Join-Path ([System.IO.Path]::GetTempPath()) ("kernel-pdb-check-" + [guid]::NewGuid().ToString("N"))
129
+ New-Item -ItemType Directory -Path $checkDir | Out-Null
130
+ try {
131
+ $checkExe = Join-Path $checkDir (Split-Path -Leaf $executable)
132
+ $checkPdb = Join-Path $checkDir (Split-Path -Leaf $pdb)
133
+ Copy-Item -LiteralPath $executable -Destination $checkExe
134
+ Copy-Item -LiteralPath $pdb -Destination $checkPdb
135
+
136
+ $lookup = @(& dumpbin.exe /NOLOGO /PDBPATH $checkExe 2>&1)
137
+ $lookupExit = $LASTEXITCODE
138
+ $lookupText = $lookup | Out-String
139
+ Write-Host $lookupText
140
+ if ($lookupExit -ne 0) {
141
+ throw "dumpbin /PDBPATH failed with exit code $lookupExit"
142
+ }
143
+ if ($lookupText -notmatch [regex]::Escape($checkPdb)) {
144
+ throw "dumpbin did not resolve the supplied PDB; its GUID/age may not match the executable"
145
+ }
146
+ } finally {
147
+ Remove-Item -LiteralPath $checkDir -Recurse -Force -ErrorAction SilentlyContinue
148
+ }
149
+
150
+ Write-Host "ok: Windows PDB contains kernel Rust source/function info"
151
+ Write-Host "ok: dumpbin validated the executable/PDB CodeView GUID and age"
152
+ } finally {
153
+ Pop-Location
154
+ }
@@ -0,0 +1,164 @@
1
+ #!/usr/bin/env bash
2
+ # Copyright (c) 2026 Databricks, Inc.
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ set -euo pipefail
17
+
18
+ readonly PROFILE="release-with-debuginfo"
19
+ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
20
+ readonly REPO_ROOT="$(cd "${SCRIPT_DIR}/../.." && pwd)"
21
+ readonly TARGET_ROOT="${CARGO_TARGET_DIR:-${REPO_ROOT}/target}"
22
+ readonly PROFILE_DIR="${TARGET_ROOT}/${PROFILE}"
23
+ readonly CONSUMER_SOURCE="${REPO_ROOT}/tests/symbols/staticlib_consumer.c"
24
+ readonly ARCHIVE="${PROFILE_DIR}/libdatabricks_sql_kernel.a"
25
+ readonly CONSUMER="${PROFILE_DIR}/kernel-symbol-smoke"
26
+
27
+ for command in cargo cc; do
28
+ if ! command -v "${command}" >/dev/null 2>&1; then
29
+ echo "FAIL: required command not found: ${command}" >&2
30
+ exit 1
31
+ fi
32
+ done
33
+
34
+ mkdir -p "${PROFILE_DIR}"
35
+ build_log="$(mktemp)"
36
+ trap 'rm -f "${build_log}"' EXIT
37
+
38
+ # Cargo prints the platform libraries a C/C++ final linker must add when it
39
+ # consumes this staticlib. Capture that list while building the exact archive
40
+ # under test.
41
+ CARGO_TERM_COLOR=never cargo rustc --locked --profile "${PROFILE}" --lib -- \
42
+ --print=native-static-libs 2>&1 | tee "${build_log}"
43
+
44
+ if [[ ! -f "${ARCHIVE}" ]]; then
45
+ echo "FAIL: Cargo did not produce ${ARCHIVE}" >&2
46
+ exit 1
47
+ fi
48
+
49
+ native_link_line="$(sed -n 's/^note: native-static-libs: //p' "${build_log}" | tail -n 1)"
50
+ if [[ -z "${native_link_line}" ]]; then
51
+ echo "FAIL: rustc did not report native-static-libs" >&2
52
+ exit 1
53
+ fi
54
+ read -r -a native_link_args <<<"${native_link_line}"
55
+
56
+ case "$(uname -s)" in
57
+ Linux)
58
+ for command in objcopy readelf; do
59
+ if ! command -v "${command}" >/dev/null 2>&1; then
60
+ echo "FAIL: required command not found: ${command}" >&2
61
+ exit 1
62
+ fi
63
+ done
64
+
65
+ debug_file="${CONSUMER}.debug"
66
+ cc -O2 -I "${REPO_ROOT}/include" "${CONSUMER_SOURCE}" "${ARCHIVE}" \
67
+ "${native_link_args[@]}" -Wl,--build-id=sha1 -o "${CONSUMER}"
68
+ "${CONSUMER}"
69
+
70
+ # This mirrors consumer packaging: retain full DWARF in the private symbol
71
+ # artifact, strip it from the customer executable, and leave only the GNU
72
+ # debug-link locator/checksum in the shipped file.
73
+ objcopy --only-keep-debug "${CONSUMER}" "${debug_file}"
74
+ objcopy --strip-debug "${CONSUMER}"
75
+ objcopy --add-gnu-debuglink="${debug_file}" "${CONSUMER}"
76
+
77
+ if readelf --sections "${CONSUMER}" | \
78
+ grep -E '\.debug_(abbrev|info|line|str)' >/dev/null; then
79
+ echo "FAIL: customer executable still contains DWARF sections" >&2
80
+ exit 1
81
+ fi
82
+ if ! readelf --sections "${CONSUMER}" | grep -F '.gnu_debuglink' >/dev/null; then
83
+ echo "FAIL: customer executable has no .gnu_debuglink" >&2
84
+ exit 1
85
+ fi
86
+
87
+ dwarf_dump="${PROFILE_DIR}/kernel-symbol-smoke.dwarf.txt"
88
+ line_dump="${PROFILE_DIR}/kernel-symbol-smoke.lines.txt"
89
+ readelf --debug-dump=info "${debug_file}" >"${dwarf_dump}"
90
+ readelf --debug-dump=decodedline "${debug_file}" >"${line_dump}"
91
+ if ! grep -Fq 'kernel_get_last_error' "${dwarf_dump}"; then
92
+ echo "FAIL: split DWARF does not describe kernel_get_last_error" >&2
93
+ exit 1
94
+ fi
95
+ if ! grep -Fq 'src/c_abi/error.rs' "${line_dump}"; then
96
+ echo "FAIL: split DWARF does not name src/c_abi/error.rs" >&2
97
+ exit 1
98
+ fi
99
+
100
+ binary_notes="$(readelf --notes "${CONSUMER}")"
101
+ debug_notes="$(readelf --notes "${debug_file}")"
102
+ binary_id="$(sed -n 's/.*Build ID: //p' <<<"${binary_notes}")"
103
+ debug_id="$(sed -n 's/.*Build ID: //p' <<<"${debug_notes}")"
104
+ if [[ -z "${binary_id}" || "${binary_id}" != "${debug_id}" ]]; then
105
+ echo "FAIL: executable and split DWARF build IDs do not match" >&2
106
+ exit 1
107
+ fi
108
+
109
+ echo "ok: Linux split DWARF contains kernel Rust source/function info"
110
+ echo "ok: executable and .debug share build ID ${binary_id}"
111
+ ;;
112
+ Darwin)
113
+ for command in dsymutil otool strip xcrun; do
114
+ if ! command -v "${command}" >/dev/null 2>&1; then
115
+ echo "FAIL: required command not found: ${command}" >&2
116
+ exit 1
117
+ fi
118
+ done
119
+
120
+ dsym="${CONSUMER}.dSYM"
121
+ cc -O2 -I "${REPO_ROOT}/include" "${CONSUMER_SOURCE}" "${ARCHIVE}" \
122
+ "${native_link_args[@]}" -o "${CONSUMER}"
123
+ "${CONSUMER}"
124
+ dsymutil "${CONSUMER}" -o "${dsym}"
125
+ strip -S "${CONSUMER}"
126
+
127
+ if otool -l "${CONSUMER}" | grep -F '__DWARF' >/dev/null; then
128
+ echo "FAIL: customer executable still contains a __DWARF segment" >&2
129
+ exit 1
130
+ fi
131
+
132
+ dwarf_dump="${PROFILE_DIR}/kernel-symbol-smoke.dwarf.txt"
133
+ dwarf_file="${dsym}/Contents/Resources/DWARF/$(basename "${CONSUMER}")"
134
+ if [[ ! -f "${dwarf_file}" ]]; then
135
+ echo "FAIL: dsymutil did not produce ${dwarf_file}" >&2
136
+ exit 1
137
+ fi
138
+ xcrun dwarfdump --name kernel_get_last_error "${dsym}" >"${dwarf_dump}"
139
+ if ! grep -Fq 'kernel_get_last_error' "${dwarf_dump}"; then
140
+ echo "FAIL: dSYM does not describe kernel_get_last_error" >&2
141
+ exit 1
142
+ fi
143
+ if ! grep -Eq 'DW_AT_decl_file.*error\.rs' "${dwarf_dump}"; then
144
+ echo "FAIL: kernel_get_last_error has no error.rs source record in the dSYM" >&2
145
+ exit 1
146
+ fi
147
+
148
+ binary_uuid_dump="$(xcrun dwarfdump --uuid "${CONSUMER}")"
149
+ dsym_uuid_dump="$(xcrun dwarfdump --uuid "${dsym}")"
150
+ binary_uuid="$(awk 'NR == 1 { print $2 }' <<<"${binary_uuid_dump}")"
151
+ dsym_uuid="$(awk 'NR == 1 { print $2 }' <<<"${dsym_uuid_dump}")"
152
+ if [[ -z "${binary_uuid}" || "${binary_uuid}" != "${dsym_uuid}" ]]; then
153
+ echo "FAIL: executable and dSYM UUIDs do not match" >&2
154
+ exit 1
155
+ fi
156
+
157
+ echo "ok: macOS dSYM contains kernel Rust source/function info"
158
+ echo "ok: executable and dSYM share UUID ${binary_uuid}"
159
+ ;;
160
+ *)
161
+ echo "FAIL: unsupported platform for this check: $(uname -s)" >&2
162
+ exit 1
163
+ ;;
164
+ esac
@@ -0,0 +1,138 @@
1
+ # Copyright (c) 2026 Databricks, Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ name: Release Debuginfo
16
+
17
+ on:
18
+ push:
19
+ branches: [main]
20
+ pull_request:
21
+ types: [opened, synchronize, reopened]
22
+ branches: [main]
23
+ merge_group:
24
+
25
+ concurrency:
26
+ group: ${{ github.workflow }}-${{ github.event_name == 'push' && github.sha || github.head_ref || github.ref }}
27
+ cancel-in-progress: true
28
+
29
+ permissions:
30
+ contents: read
31
+ id-token: write
32
+
33
+ jobs:
34
+ # Hosted macOS runners cannot check out this private repository through the
35
+ # org IP allow list. Hand the same checked-out source to macOS through the
36
+ # Actions artifact service, which is not allow-list gated.
37
+ macos-source:
38
+ name: Source handoff (macOS)
39
+ runs-on:
40
+ group: databricks-protected-runner-group
41
+ labels: [linux-ubuntu-latest]
42
+ timeout-minutes: 10
43
+ steps:
44
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
45
+ with:
46
+ path: repo-src
47
+
48
+ - name: Archive source
49
+ shell: bash
50
+ run: |
51
+ set -euo pipefail
52
+ tar czf repo-source.tar.gz -C repo-src --exclude='.git' .
53
+
54
+ - name: Upload source
55
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
56
+ with:
57
+ name: release-debuginfo-source
58
+ path: repo-source.tar.gz
59
+ retention-days: 1
60
+ if-no-files-found: error
61
+
62
+ linux:
63
+ name: Linux split DWARF
64
+ runs-on:
65
+ group: databricks-protected-runner-group
66
+ labels: [linux-ubuntu-latest]
67
+ timeout-minutes: 45
68
+ steps:
69
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
70
+
71
+ - uses: ./.github/actions/setup-jfrog
72
+ with:
73
+ cargo: "true"
74
+
75
+ - uses: actions-rust-lang/setup-rust-toolchain@166cdcfd11aee3cb47222f9ddb555ce30ddb9659 # v1.17.0
76
+ with:
77
+ toolchain: stable
78
+
79
+ - name: Verify split DWARF
80
+ shell: bash
81
+ run: bash .github/scripts/check-release-debuginfo.sh
82
+
83
+ macos:
84
+ name: macOS dSYM
85
+ needs: macos-source
86
+ runs-on: macos-15
87
+ timeout-minutes: 45
88
+ steps:
89
+ - name: Download source
90
+ uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
91
+ with:
92
+ name: release-debuginfo-source
93
+
94
+ - name: Unpack source
95
+ shell: bash
96
+ run: |
97
+ set -euo pipefail
98
+ tar xzf repo-source.tar.gz -C "$GITHUB_WORKSPACE"
99
+ rm -f repo-source.tar.gz
100
+ test -f Cargo.toml
101
+
102
+ - uses: ./.github/actions/setup-jfrog
103
+ with:
104
+ cargo: "true"
105
+
106
+ - uses: actions-rust-lang/setup-rust-toolchain@166cdcfd11aee3cb47222f9ddb555ce30ddb9659 # v1.17.0
107
+ with:
108
+ toolchain: stable
109
+
110
+ - name: Verify dSYM
111
+ shell: bash
112
+ run: bash .github/scripts/check-release-debuginfo.sh
113
+
114
+ windows:
115
+ name: Windows linker PDB
116
+ runs-on:
117
+ group: databricks-protected-runner-group
118
+ labels: [windows-server-latest]
119
+ timeout-minutes: 45
120
+ steps:
121
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
122
+
123
+ - uses: ./.github/actions/setup-jfrog
124
+ with:
125
+ cargo: "true"
126
+
127
+ - uses: actions-rust-lang/setup-rust-toolchain@166cdcfd11aee3cb47222f9ddb555ce30ddb9659 # v1.17.0
128
+ with:
129
+ toolchain: stable
130
+
131
+ - name: Set up MSVC environment
132
+ uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1
133
+ with:
134
+ arch: x64
135
+
136
+ - name: Verify linker PDB
137
+ shell: pwsh
138
+ run: ./.github/scripts/check-release-debuginfo.ps1
@@ -14,6 +14,35 @@ cadences and may not move in lockstep with the crate.
14
14
 
15
15
  ### Fixed
16
16
 
17
+ ## [v1.1.0] - 2026-09-23
18
+
19
+ ### Added
20
+ - Execution-scoped client query deadlines for Rust and C APIs.
21
+ - FAST-mode session version exchange.
22
+ - C ABI query tags, HTTP connection limits, connection-test deadlines, and
23
+ result-stream cancellation.
24
+ - Release-with-debuginfo build profile and native symbol checks.
25
+
26
+ ### Changed
27
+ - Client deadlines permit an in-flight status request five seconds to finish.
28
+ - Direct traffic identifies itself as Databricks SQL Kernel.
29
+ - rustls now includes OS trust roots.
30
+ - Updated rustls to remediate OSV findings.
31
+
32
+ ### Fixed
33
+ - CloudFetch downloads have end-to-end deadlines and terminal link-fetch
34
+ errors.
35
+ - C ABI workers preserve a two-MiB stack floor without shrinking larger
36
+ configured stacks.
37
+ - mTLS rejects non-HTTPS endpoints.
38
+ - PAT telemetry omits OAuth auth-flow metadata.
39
+
40
+ ## [v1.0.0] - 2026-08-31
41
+
42
+ ### Fixed
43
+ - Explicit async statement close finalizes telemetry when a partially consumed
44
+ result stream remains alive.
45
+
17
46
  ## [v0.3.0] - 2026-08-28
18
47
 
19
48
  ### Added
@@ -617,7 +617,7 @@ checksum = "4583a4551df46e2792f82ceeac45e850d2e2d5debba0b91f102385cda5b11f06"
617
617
 
618
618
  [[package]]
619
619
  name = "databricks-sql-kernel"
620
- version = "0.3.0"
620
+ version = "1.1.0"
621
621
  dependencies = [
622
622
  "aes 0.9.2",
623
623
  "arrow-array",
@@ -1199,6 +1199,7 @@ dependencies = [
1199
1199
  "hyper",
1200
1200
  "hyper-util",
1201
1201
  "rustls",
1202
+ "rustls-native-certs",
1202
1203
  "tokio",
1203
1204
  "tokio-rustls",
1204
1205
  "tower-service",
@@ -2231,6 +2232,7 @@ dependencies = [
2231
2232
  "pin-project-lite",
2232
2233
  "quinn",
2233
2234
  "rustls",
2235
+ "rustls-native-certs",
2234
2236
  "rustls-pki-types",
2235
2237
  "serde",
2236
2238
  "serde_json",
@@ -2334,9 +2336,9 @@ dependencies = [
2334
2336
 
2335
2337
  [[package]]
2336
2338
  name = "rustls"
2337
- version = "0.23.41"
2339
+ version = "0.23.45"
2338
2340
  source = "registry+https://github.com/rust-lang/crates.io-index"
2339
- checksum = "6b92b125634d9b795e7beca796cc790df15a7fb38323bf3196fda83292d06b1f"
2341
+ checksum = "0d41d731c7d2f962d1ccc364cec258de3c0e93b38c2fb3ba97ac74513048d634"
2340
2342
  dependencies = [
2341
2343
  "once_cell",
2342
2344
  "ring",
@@ -2346,6 +2348,18 @@ dependencies = [
2346
2348
  "zeroize",
2347
2349
  ]
2348
2350
 
2351
+ [[package]]
2352
+ name = "rustls-native-certs"
2353
+ version = "0.8.4"
2354
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2355
+ checksum = "dab5152771c58876a2146916e53e35057e1a4dfa2b9df0f0305b07f611fdea4d"
2356
+ dependencies = [
2357
+ "openssl-probe",
2358
+ "rustls-pki-types",
2359
+ "schannel",
2360
+ "security-framework",
2361
+ ]
2362
+
2349
2363
  [[package]]
2350
2364
  name = "rustls-pki-types"
2351
2365
  version = "1.15.0"
@@ -2358,9 +2372,9 @@ dependencies = [
2358
2372
 
2359
2373
  [[package]]
2360
2374
  name = "rustls-webpki"
2361
- version = "0.103.13"
2375
+ version = "0.103.15"
2362
2376
  source = "registry+https://github.com/rust-lang/crates.io-index"
2363
- checksum = "61c429a8649f110dddef65e2a5ad240f747e85f7758a6bccc7e5777bd33f756e"
2377
+ checksum = "f3c3cf1d8b1e7d4927e2d154c3fcb02979afb9939629c62cd9048d4f07b60ac2"
2364
2378
  dependencies = [
2365
2379
  "ring",
2366
2380
  "rustls-pki-types",
@@ -14,7 +14,7 @@
14
14
 
15
15
  [package]
16
16
  name = "databricks-sql-kernel"
17
- version = "0.3.0"
17
+ version = "1.1.0"
18
18
  edition = "2021"
19
19
  authors = ["Databricks"]
20
20
  license = "Apache-2.0"
@@ -193,7 +193,17 @@ tokio-rustls = { version = "0.26.4", default-features = false, features = ["ring
193
193
  [features]
194
194
  default = ["tls-native"]
195
195
  tls-native = ["reqwest/native-tls"]
196
- tls-rustls = ["reqwest/rustls-tls"]
196
+ # `rustls-tls` alone is `reqwest/rustls-tls-webpki-roots` — the bundled Mozilla
197
+ # root set only, which does NOT read the OS system trust store. `tls-native`
198
+ # (native-tls → OpenSSL) DOES read `/etc/ssl/...`, so a `tls-rustls` build behind
199
+ # a private/internal CA installed only in the OS store fails a handshake that the
200
+ # `tls-native` build completes. Enabling `rustls-tls-native-roots` alongside makes
201
+ # reqwest load the OS trust store AND the Mozilla bundled roots into one
202
+ # `RootCertStore` (both `tls_built_in_certs_*` default true → additive, no
203
+ # fallback lost). This gives the aarch64 cross-build — the only Linux arch on
204
+ # `tls-rustls` — system-CA parity with the x86_64/i686 OpenSSL builds. See
205
+ # odbc#323.
206
+ tls-rustls = ["reqwest/rustls-tls", "reqwest/rustls-tls-native-roots"]
197
207
 
198
208
  [lib]
199
209
  name = "databricks_sql_kernel"
@@ -213,3 +223,11 @@ crate-type = ["lib", "cdylib", "staticlib"]
213
223
  # workspace views (kernel root, pyo3, napi).
214
224
  [workspace]
215
225
  members = ["."]
226
+
227
+ # Opt-in profile for native consumers that split private crash symbols from the
228
+ # shipped driver. Inheriting `release` is intentional: `debug` is the only
229
+ # override, so optimization, LTO, codegen units, panic behavior, overflow
230
+ # checks, and debug assertions remain identical to an ordinary release build.
231
+ [profile.release-with-debuginfo]
232
+ inherits = "release"
233
+ debug = 2
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: databricks-sql-kernel
3
- Version: 0.3.0
3
+ Version: 1.1.0
4
4
  Requires-Dist: pyarrow>=23.0.1,<24 ; python_full_version >= '3.10'
5
5
  Requires-Dist: pyarrow>=14,<19 ; python_full_version < '3.10'
6
6
  Summary: Python bindings for the Databricks SQL Kernel (PyO3)
@@ -37,6 +37,11 @@ cargo test
37
37
  make check # fmt + clippy + tests
38
38
  ```
39
39
 
40
+ Native consumers that statically link the kernel and publish separate crash
41
+ symbols can use the opt-in `release-with-debuginfo` profile. See
42
+ [`docs/release-debuginfo.md`](docs/release-debuginfo.md) for build, symbol
43
+ splitting, packaging, and binary-identity guidance.
44
+
40
45
  ## Configuration
41
46
 
42
47
  See [CONNECTION_PARAMETERS.md](CONNECTION_PARAMETERS.md) for every connection, auth, and session parameter the kernel accepts — its meaning, default value, and the config struct it lives on.