vastdb 1.4.0__tar.gz → 2.0.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 (235) hide show
  1. {vastdb-1.4.0 → vastdb-2.0.0}/CHANGELOG.md +15 -0
  2. {vastdb-1.4.0 → vastdb-2.0.0}/PKG-INFO +21 -6
  3. {vastdb-1.4.0 → vastdb-2.0.0}/README.md +40 -1
  4. vastdb-2.0.0/requirements.txt +11 -0
  5. {vastdb-1.4.0 → vastdb-2.0.0}/setup.py +3 -3
  6. vastdb-2.0.0/vastdb/_ibis_support.py +28 -0
  7. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/_internal.py +167 -180
  8. vastdb-2.0.0/vastdb/_table_interface.py +136 -0
  9. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/orchestrate/results_helpers.py +1 -1
  10. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bucket.py +1 -1
  11. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/conftest.py +42 -19
  12. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/schema.py +15 -3
  13. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/session.py +3 -1
  14. vastdb-2.0.0/vastdb/table.py +1054 -0
  15. vastdb-2.0.0/vastdb/table_metadata.py +221 -0
  16. vastdb-2.0.0/vastdb/tests/test_duckdb.py +61 -0
  17. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_fixed_list.py +56 -6
  18. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_imports.py +2 -1
  19. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_nested.py +0 -5
  20. vastdb-2.0.0/vastdb/tests/test_table_in_tx.py +249 -0
  21. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_tables.py +57 -11
  22. vastdb-2.0.0/vastdb/tests/util.py +145 -0
  23. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/transaction.py +27 -0
  24. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb.egg-info/PKG-INFO +21 -6
  25. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb.egg-info/SOURCES.txt +4 -0
  26. vastdb-2.0.0/vastdb.egg-info/requires.txt +11 -0
  27. vastdb-1.4.0/requirements.txt +0 -8
  28. vastdb-1.4.0/vastdb/table.py +0 -799
  29. vastdb-1.4.0/vastdb/tests/test_duckdb.py +0 -61
  30. vastdb-1.4.0/vastdb/tests/util.py +0 -48
  31. vastdb-1.4.0/vastdb.egg-info/requires.txt +0 -7
  32. {vastdb-1.4.0 → vastdb-2.0.0}/CONTRIBUTING.md +0 -0
  33. {vastdb-1.4.0 → vastdb-2.0.0}/LICENSE +0 -0
  34. {vastdb-1.4.0 → vastdb-2.0.0}/MANIFEST.in +0 -0
  35. {vastdb-1.4.0 → vastdb-2.0.0}/setup.cfg +0 -0
  36. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/__init__.py +0 -0
  37. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/__init__.py +0 -0
  38. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/__init__.py +0 -0
  39. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/bench_repo/__init__.py +0 -0
  40. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/bench_repo/mega_combo.py +0 -0
  41. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/cli.py +0 -0
  42. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/common/__init__.py +0 -0
  43. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/common/constants.py +0 -0
  44. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/common/log_utils.py +0 -0
  45. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/common/types.py +0 -0
  46. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/common/utils.py +0 -0
  47. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/dataset/__init__.py +0 -0
  48. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/dataset/generate_secmaster.py +0 -0
  49. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/dataset/generate_stocks_dataset.py +0 -0
  50. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/dataset/schemas.py +0 -0
  51. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/dataset/secmaster.py +0 -0
  52. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/orchestrate/__init__.py +0 -0
  53. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/orchestrate/bench_spec.py +0 -0
  54. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/orchestrate/scenario.py +0 -0
  55. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/orchestrate/scenario_generator.py +0 -0
  56. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/query/__init__.py +0 -0
  57. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/query/arrow_common.py +0 -0
  58. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/query/query.py +0 -0
  59. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/query/query_pyarrow.py +0 -0
  60. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/query/query_vastdb.py +0 -0
  61. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/perf_bench/run.py +0 -0
  62. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/test_perf.py +0 -0
  63. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/bench/test_sample.py +0 -0
  64. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/config.py +0 -0
  65. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/errors.py +0 -0
  66. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/features.py +0 -0
  67. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/__init__.py +0 -0
  68. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/metrics.py +0 -0
  69. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_projections.py +0 -0
  70. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_sanity.py +0 -0
  71. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_schemas.py +0 -0
  72. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/tests/test_util.py +0 -0
  73. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/util.py +0 -0
  74. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/__init__.py +0 -0
  75. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/__init__.py +0 -0
  76. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/__init__.py +0 -0
  77. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/__init__.py +0 -0
  78. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/__init__.py +0 -0
  79. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Aggregate.py +0 -0
  80. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySlice.py +0 -0
  81. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySubscript.py +0 -0
  82. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BinaryLiteral.py +0 -0
  83. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BooleanLiteral.py +0 -0
  84. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Bound.py +0 -0
  85. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Call.py +0 -0
  86. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CaseFragment.py +0 -0
  87. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Cast.py +0 -0
  88. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConcreteBoundImpl.py +0 -0
  89. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConditionalCase.py +0 -0
  90. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CurrentRow.py +0 -0
  91. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DateLiteral.py +0 -0
  92. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DecimalLiteral.py +0 -0
  93. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Deref.py +0 -0
  94. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DurationLiteral.py +0 -0
  95. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Expression.py +0 -0
  96. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ExpressionImpl.py +0 -0
  97. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldIndex.py +0 -0
  98. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldRef.py +0 -0
  99. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Filter.py +0 -0
  100. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FixedSizeBinaryLiteral.py +0 -0
  101. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float16Literal.py +0 -0
  102. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float32Literal.py +0 -0
  103. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float64Literal.py +0 -0
  104. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Following.py +0 -0
  105. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Frame.py +0 -0
  106. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Grouping.py +0 -0
  107. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int16Literal.py +0 -0
  108. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int32Literal.py +0 -0
  109. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int64Literal.py +0 -0
  110. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int8Literal.py +0 -0
  111. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteral.py +0 -0
  112. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralDaysMilliseconds.py +0 -0
  113. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralImpl.py +0 -0
  114. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralMonths.py +0 -0
  115. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Join.py +0 -0
  116. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/JoinKind.py +0 -0
  117. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/KeyValue.py +0 -0
  118. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Limit.py +0 -0
  119. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ListLiteral.py +0 -0
  120. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Literal.py +0 -0
  121. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralColumn.py +0 -0
  122. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralImpl.py +0 -0
  123. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralRelation.py +0 -0
  124. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapKey.py +0 -0
  125. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapLiteral.py +0 -0
  126. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/OrderBy.py +0 -0
  127. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Ordering.py +0 -0
  128. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Plan.py +0 -0
  129. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Preceding.py +0 -0
  130. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Project.py +0 -0
  131. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelId.py +0 -0
  132. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Relation.py +0 -0
  133. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelationImpl.py +0 -0
  134. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOpKind.py +0 -0
  135. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOperation.py +0 -0
  136. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SimpleCase.py +0 -0
  137. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SortKey.py +0 -0
  138. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Source.py +0 -0
  139. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StringLiteral.py +0 -0
  140. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructField.py +0 -0
  141. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructLiteral.py +0 -0
  142. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimeLiteral.py +0 -0
  143. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimestampLiteral.py +0 -0
  144. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt16Literal.py +0 -0
  145. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt32Literal.py +0 -0
  146. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt64Literal.py +0 -0
  147. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt8Literal.py +0 -0
  148. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Unbounded.py +0 -0
  149. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/WindowCall.py +0 -0
  150. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/computeir/flatbuf/__init__.py +0 -0
  151. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Binary.py +0 -0
  152. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Block.py +0 -0
  153. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompression.py +0 -0
  154. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompressionMethod.py +0 -0
  155. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Bool.py +0 -0
  156. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Buffer.py +0 -0
  157. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/CompressionType.py +0 -0
  158. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Date.py +0 -0
  159. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DateUnit.py +0 -0
  160. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Decimal.py +0 -0
  161. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryBatch.py +0 -0
  162. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryEncoding.py +0 -0
  163. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryKind.py +0 -0
  164. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Duration.py +0 -0
  165. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Endianness.py +0 -0
  166. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Feature.py +0 -0
  167. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Field.py +0 -0
  168. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FieldNode.py +0 -0
  169. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeBinary.py +0 -0
  170. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeList.py +0 -0
  171. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/FloatingPoint.py +0 -0
  172. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Footer.py +0 -0
  173. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Int.py +0 -0
  174. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Interval.py +0 -0
  175. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/IntervalUnit.py +0 -0
  176. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/KeyValue.py +0 -0
  177. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/LargeBinary.py +0 -0
  178. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/LargeList.py +0 -0
  179. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/LargeUtf8.py +0 -0
  180. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/List.py +0 -0
  181. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Map.py +0 -0
  182. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Message.py +0 -0
  183. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/MessageHeader.py +0 -0
  184. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/MetadataVersion.py +0 -0
  185. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Null.py +0 -0
  186. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Precision.py +0 -0
  187. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/RecordBatch.py +0 -0
  188. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Schema.py +0 -0
  189. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixCompressedAxis.py +0 -0
  190. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.py +0 -0
  191. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensor.py +0 -0
  192. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndex.py +0 -0
  193. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCOO.py +0 -0
  194. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCSF.py +0 -0
  195. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Struct_.py +0 -0
  196. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Tensor.py +0 -0
  197. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/TensorDim.py +0 -0
  198. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Time.py +0 -0
  199. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/TimeUnit.py +0 -0
  200. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Timestamp.py +0 -0
  201. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Type.py +0 -0
  202. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Union.py +0 -0
  203. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/UnionMode.py +0 -0
  204. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/Utf8.py +0 -0
  205. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/org/apache/arrow/flatbuf/__init__.py +0 -0
  206. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/AlterColumnRequest.py +0 -0
  207. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/AlterProjectionTableRequest.py +0 -0
  208. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/AlterSchemaRequest.py +0 -0
  209. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/AlterTableRequest.py +0 -0
  210. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/Column.py +0 -0
  211. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ColumnDetails.py +0 -0
  212. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ColumnType.py +0 -0
  213. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/CreateProjectionRequest.py +0 -0
  214. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/CreateSchemaRequest.py +0 -0
  215. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/CreateViewRequest.py +0 -0
  216. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/FilterString.py +0 -0
  217. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/GetProjectionTableStatsResponse.py +0 -0
  218. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/GetRowColumnSecurityResponse.py +0 -0
  219. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/GetTableStatsResponse.py +0 -0
  220. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ImportDataRequest.py +0 -0
  221. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/KeyName.py +0 -0
  222. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ListProjectionsResponse.py +0 -0
  223. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ListSchemasResponse.py +0 -0
  224. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ListTablesResponse.py +0 -0
  225. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ListViewsResponse.py +0 -0
  226. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/NameString.py +0 -0
  227. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/ObjectDetails.py +0 -0
  228. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/S3File.py +0 -0
  229. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/VipRange.py +0 -0
  230. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_flatbuf/tabular/__init__.py +0 -0
  231. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_tests/__init__.py +0 -0
  232. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_tests/test_ha.py +0 -0
  233. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb/vast_tests/test_scale.py +0 -0
  234. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb.egg-info/dependency_links.txt +0 -0
  235. {vastdb-1.4.0 → vastdb-2.0.0}/vastdb.egg-info/top_level.txt +0 -0
@@ -4,6 +4,21 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
6
 
7
+ ## [2.0.0] (2025-09-17)
8
+
9
+ ### BREAKING CHANGE
10
+ - Removed properties `Table.bucket` and `Table.schema`
11
+ - Removed properties `Projection.bucket` and `Projection.schema`
12
+ - Removed official support for Python 3.9
13
+ - Added hard requirement for pyarrow~=18.0
14
+
15
+ ### Added
16
+ - `ITable` - partial VAST tables interface (no DDL)
17
+ - `TableMetadata` - table metadata allowing for reuse / or refraining from loading bucket/schema/table metadata on every transaction
18
+ - `Transaction.table_from_metadata` allows creating `ITable` from `TableMetadata` inside a transaction
19
+ - This table is only for DQL and DML (query and manipulation)
20
+ - Official support for Python 3.13
21
+
7
22
  ## [1.4.0] (2025-07-28)
8
23
  [1.4.0]: https://github.com/vast-data/vastdb_sdk/compare/v1.3.11...v1.4.0
9
24
 
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: vastdb
3
- Version: 1.4.0
3
+ Version: 2.0.0
4
4
  Summary: VAST Data SDK
5
5
  Home-page: https://github.com/vast-data/vastdb_sdk
6
6
  Author: VAST DATA
@@ -9,22 +9,37 @@ License: Copyright (C) VAST Data Ltd.
9
9
  Classifier: Development Status :: 5 - Production/Stable
10
10
  Classifier: License :: OSI Approved :: Apache Software License
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.9
13
12
  Classifier: Programming Language :: Python :: 3.10
14
13
  Classifier: Programming Language :: Python :: 3.11
15
14
  Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
16
  Classifier: Topic :: Database
17
17
  Classifier: Topic :: Database :: Front-Ends
18
- Requires-Python: >=3.9.0
18
+ Requires-Python: >=3.10.0
19
19
  Description-Content-Type: text/markdown
20
20
  License-File: LICENSE
21
21
  Requires-Dist: aws-requests-auth
22
+ Requires-Dist: ibis-framework~=10.1
23
+ Requires-Dist: pyarrow~=18.0
24
+ Requires-Dist: pyarrow-hotfix==0.7
22
25
  Requires-Dist: flatbuffers
23
- Requires-Dist: ibis-framework==9.0.0
24
- Requires-Dist: pyarrow
26
+ Requires-Dist: packaging
27
+ Requires-Dist: pandas
28
+ Requires-Dist: numpy
25
29
  Requires-Dist: requests
26
30
  Requires-Dist: xmltodict
27
31
  Requires-Dist: backoff==2.2.1
32
+ Dynamic: author
33
+ Dynamic: author-email
34
+ Dynamic: classifier
35
+ Dynamic: description
36
+ Dynamic: description-content-type
37
+ Dynamic: home-page
38
+ Dynamic: license
39
+ Dynamic: license-file
40
+ Dynamic: requires-dist
41
+ Dynamic: requires-python
42
+ Dynamic: summary
28
43
 
29
44
 
30
45
  `vastdb` is a Python-based SDK designed for interacting
@@ -18,7 +18,7 @@ For technical details about VAST Database architecture, see the [whitepaper](htt
18
18
 
19
19
  ### Requirements
20
20
 
21
- - Linux client with Python 3.9 - 3.12, and network access to the VAST Cluster
21
+ - Linux client with Python 3.10 - 3.13, and network access to the VAST Cluster
22
22
  - [Virtual IP pool configured with DNS service](https://support.vastdata.com/s/topic/0TOV40000000FThOAM/configuring-network-access-v50)
23
23
  - [S3 access & secret keys on the VAST cluster](https://support.vastdata.com/s/article/UUID-4d2e7e23-b2fb-7900-d98f-96c31a499626)
24
24
  - [Tabular identity policy with the proper permissions](https://support.vastdata.com/s/article/UUID-14322b60-d6a2-89ac-3df0-3dfbb6974182)
@@ -156,6 +156,39 @@ snaps = bucket.list_snapshots()
156
156
  batches = snaps[0].schema('schema-name').table('table-name').select()
157
157
  ```
158
158
 
159
+ ## Interactive and Non-Interactive Workflows
160
+
161
+ Interactive `Table` created via the `Schema` object (`tx.bucket('..').schema('..').table('..')`) loads metadata and stats eagrly allowing for interactive development.
162
+
163
+ For more efficient use-cases where the extra round-trips to the server hurt use the Non-Interactive workflow.
164
+
165
+ ```python
166
+ # load the table schema & stats into an object we can use across transactions
167
+ table_md = TableMetadata(TableRef("bucket-name", "schema-name", "table-name"))
168
+ with session.transaction() as tx:
169
+ table_md.load(tx)
170
+
171
+ # you may init the TableMetadata with the schema in advanced (to save that round-trip)
172
+ table_md = TableMetadata(TableRef("bucket-name", "schema-name", "table-name"),
173
+ arrow_schema=<some-arrow-schema>)
174
+
175
+ # now we can reuse without the overhead of reloading the schema and stats,
176
+ # such as for inserts:
177
+ with session.transaction() as tx:
178
+ table = tx.table_from_metadata(table_md)
179
+ rows = [{"id": 1, "name": "row1"}]
180
+ py_records = pa.RecordBatch.from_pylist(rows, schema=table_md.arrow_schema)
181
+ table.insert(py_records)
182
+
183
+ # and selects:
184
+ with session.transaction() as tx:
185
+ table = tx.table_from_metadata(table_md)
186
+ reader = table.select()
187
+ results = reader.read_all()
188
+ print(results)
189
+ ```
190
+
191
+
159
192
  ## Post-processing
160
193
 
161
194
  ### Export
@@ -214,6 +247,10 @@ with session.transaction() as tx:
214
247
  print("Distinct element types on the system:")
215
248
  print(distinct_elements)
216
249
  ```
250
+
251
+
252
+
253
+
217
254
  ## More Information
218
255
 
219
256
  See these blog posts for more examples:
@@ -222,3 +259,5 @@ See these blog posts for more examples:
222
259
  - https://vastdata.com/blog/the-vast-catalog-in-action-part-2
223
260
 
224
261
  See also the [full Vast DB Python SDK documentation](https://vastdb-sdk.readthedocs.io/en/latest/)
262
+
263
+
@@ -0,0 +1,11 @@
1
+ aws-requests-auth
2
+ ibis-framework~=10.1
3
+ pyarrow~=18.0
4
+ pyarrow-hotfix==0.7
5
+ flatbuffers
6
+ packaging
7
+ pandas
8
+ numpy
9
+ requests
10
+ xmltodict
11
+ backoff==2.2.1
@@ -27,9 +27,9 @@ if os.environ.get('VASTDB_APPEND_VERSION_SUFFIX'):
27
27
 
28
28
  setup(
29
29
  name='vastdb',
30
- python_requires='>=3.9.0',
30
+ python_requires='>=3.10.0',
31
31
  description='VAST Data SDK',
32
- version='1.4.0' + suffix,
32
+ version='2.0.0' + suffix,
33
33
  url='https://github.com/vast-data/vastdb_sdk',
34
34
  author='VAST DATA',
35
35
  author_email='hello@vastdata.com',
@@ -42,10 +42,10 @@ setup(
42
42
  'Development Status :: 5 - Production/Stable',
43
43
  'License :: OSI Approved :: Apache Software License',
44
44
  'Programming Language :: Python :: 3',
45
- 'Programming Language :: Python :: 3.9',
46
45
  'Programming Language :: Python :: 3.10',
47
46
  'Programming Language :: Python :: 3.11',
48
47
  'Programming Language :: Python :: 3.12',
48
+ 'Programming Language :: Python :: 3.13',
49
49
  'Topic :: Database',
50
50
  'Topic :: Database :: Front-Ends',
51
51
  ],
@@ -0,0 +1,28 @@
1
+ import ibis
2
+ import pyarrow as pa
3
+ from ibis.expr.types.structs import IbisError
4
+
5
+ from vastdb import errors
6
+
7
+
8
+ def validate_ibis_support_schema(arrow_schema: pa.Schema):
9
+ """Validate that the provided Arrow schema is compatible with Ibis.
10
+
11
+ Raises NotSupportedSchema if the schema contains unsupported fields.
12
+ """
13
+ unsupported_fields = []
14
+ first_exception = None
15
+ for f in arrow_schema:
16
+ try:
17
+ ibis.Schema.from_pyarrow(pa.schema([f]))
18
+ except (IbisError, ValueError, KeyError) as e:
19
+ if first_exception is None:
20
+ first_exception = e
21
+ unsupported_fields.append(f)
22
+
23
+ if unsupported_fields:
24
+ raise errors.NotSupportedSchema(
25
+ message=f"Ibis does not support the schema {unsupported_fields=}",
26
+ schema=arrow_schema,
27
+ cause=first_exception
28
+ )