vastdb 0.1.1__tar.gz → 0.1.2__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 (184) hide show
  1. {vastdb-0.1.1 → vastdb-0.1.2}/CHANGELOG.md +18 -0
  2. {vastdb-0.1.1/vastdb.egg-info → vastdb-0.1.2}/PKG-INFO +8 -4
  3. {vastdb-0.1.1 → vastdb-0.1.2}/setup.py +3 -1
  4. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/__init__.py +6 -2
  5. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/bench/test_perf.py +3 -3
  6. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/bucket.py +10 -6
  7. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/errors.py +12 -6
  8. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/internal_commands.py +146 -152
  9. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/schema.py +10 -5
  10. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/table.py +49 -52
  11. vastdb-0.1.2/vastdb/tests/test_duckdb.py +61 -0
  12. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/test_projections.py +1 -0
  13. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/test_sanity.py +2 -2
  14. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/test_schemas.py +2 -1
  15. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/test_tables.py +36 -51
  16. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/util.py +1 -4
  17. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/transaction.py +16 -6
  18. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/util.py +4 -3
  19. {vastdb-0.1.1 → vastdb-0.1.2/vastdb.egg-info}/PKG-INFO +8 -4
  20. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb.egg-info/SOURCES.txt +1 -0
  21. {vastdb-0.1.1 → vastdb-0.1.2}/LICENSE +0 -0
  22. {vastdb-0.1.1 → vastdb-0.1.2}/MANIFEST.in +0 -0
  23. {vastdb-0.1.1 → vastdb-0.1.2}/README.md +0 -0
  24. {vastdb-0.1.1 → vastdb-0.1.2}/requirements.txt +0 -0
  25. {vastdb-0.1.1 → vastdb-0.1.2}/setup.cfg +0 -0
  26. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/__init__.py +0 -0
  27. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/__init__.py +0 -0
  28. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/__init__.py +0 -0
  29. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/__init__.py +0 -0
  30. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/__init__.py +0 -0
  31. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Aggregate.py +0 -0
  32. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySlice.py +0 -0
  33. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySubscript.py +0 -0
  34. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BinaryLiteral.py +0 -0
  35. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BooleanLiteral.py +0 -0
  36. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Bound.py +0 -0
  37. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Call.py +0 -0
  38. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CaseFragment.py +0 -0
  39. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Cast.py +0 -0
  40. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConcreteBoundImpl.py +0 -0
  41. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConditionalCase.py +0 -0
  42. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CurrentRow.py +0 -0
  43. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DateLiteral.py +0 -0
  44. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DecimalLiteral.py +0 -0
  45. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Deref.py +0 -0
  46. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DurationLiteral.py +0 -0
  47. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Expression.py +0 -0
  48. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ExpressionImpl.py +0 -0
  49. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldIndex.py +0 -0
  50. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldRef.py +0 -0
  51. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Filter.py +0 -0
  52. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FixedSizeBinaryLiteral.py +0 -0
  53. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float16Literal.py +0 -0
  54. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float32Literal.py +0 -0
  55. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float64Literal.py +0 -0
  56. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Following.py +0 -0
  57. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Frame.py +0 -0
  58. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Grouping.py +0 -0
  59. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int16Literal.py +0 -0
  60. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int32Literal.py +0 -0
  61. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int64Literal.py +0 -0
  62. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int8Literal.py +0 -0
  63. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteral.py +0 -0
  64. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralDaysMilliseconds.py +0 -0
  65. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralImpl.py +0 -0
  66. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralMonths.py +0 -0
  67. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Join.py +0 -0
  68. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/JoinKind.py +0 -0
  69. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/KeyValue.py +0 -0
  70. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Limit.py +0 -0
  71. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ListLiteral.py +0 -0
  72. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Literal.py +0 -0
  73. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralColumn.py +0 -0
  74. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralImpl.py +0 -0
  75. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralRelation.py +0 -0
  76. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapKey.py +0 -0
  77. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapLiteral.py +0 -0
  78. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/OrderBy.py +0 -0
  79. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Ordering.py +0 -0
  80. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Plan.py +0 -0
  81. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Preceding.py +0 -0
  82. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Project.py +0 -0
  83. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelId.py +0 -0
  84. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Relation.py +0 -0
  85. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelationImpl.py +0 -0
  86. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOpKind.py +0 -0
  87. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOperation.py +0 -0
  88. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SimpleCase.py +0 -0
  89. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SortKey.py +0 -0
  90. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Source.py +0 -0
  91. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StringLiteral.py +0 -0
  92. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructField.py +0 -0
  93. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructLiteral.py +0 -0
  94. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimeLiteral.py +0 -0
  95. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimestampLiteral.py +0 -0
  96. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt16Literal.py +0 -0
  97. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt32Literal.py +0 -0
  98. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt64Literal.py +0 -0
  99. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt8Literal.py +0 -0
  100. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Unbounded.py +0 -0
  101. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/WindowCall.py +0 -0
  102. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/__init__.py +0 -0
  103. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Binary.py +0 -0
  104. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Block.py +0 -0
  105. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompression.py +0 -0
  106. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompressionMethod.py +0 -0
  107. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Bool.py +0 -0
  108. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Buffer.py +0 -0
  109. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/CompressionType.py +0 -0
  110. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Date.py +0 -0
  111. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/DateUnit.py +0 -0
  112. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Decimal.py +0 -0
  113. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryBatch.py +0 -0
  114. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryEncoding.py +0 -0
  115. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryKind.py +0 -0
  116. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Duration.py +0 -0
  117. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Endianness.py +0 -0
  118. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Feature.py +0 -0
  119. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Field.py +0 -0
  120. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/FieldNode.py +0 -0
  121. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeBinary.py +0 -0
  122. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeList.py +0 -0
  123. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/FloatingPoint.py +0 -0
  124. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Footer.py +0 -0
  125. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Int.py +0 -0
  126. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Interval.py +0 -0
  127. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/IntervalUnit.py +0 -0
  128. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/KeyValue.py +0 -0
  129. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/LargeBinary.py +0 -0
  130. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/LargeList.py +0 -0
  131. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/LargeUtf8.py +0 -0
  132. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/List.py +0 -0
  133. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Map.py +0 -0
  134. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Message.py +0 -0
  135. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/MessageHeader.py +0 -0
  136. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/MetadataVersion.py +0 -0
  137. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Null.py +0 -0
  138. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Precision.py +0 -0
  139. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/RecordBatch.py +0 -0
  140. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Schema.py +0 -0
  141. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixCompressedAxis.py +0 -0
  142. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.py +0 -0
  143. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensor.py +0 -0
  144. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndex.py +0 -0
  145. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCOO.py +0 -0
  146. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCSF.py +0 -0
  147. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Struct_.py +0 -0
  148. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Tensor.py +0 -0
  149. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/TensorDim.py +0 -0
  150. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Time.py +0 -0
  151. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/TimeUnit.py +0 -0
  152. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Timestamp.py +0 -0
  153. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Type.py +0 -0
  154. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Union.py +0 -0
  155. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/UnionMode.py +0 -0
  156. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/Utf8.py +0 -0
  157. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/org/apache/arrow/flatbuf/__init__.py +0 -0
  158. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/AlterColumnRequest.py +0 -0
  159. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/AlterProjectionTableRequest.py +0 -0
  160. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/AlterSchemaRequest.py +0 -0
  161. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/AlterTableRequest.py +0 -0
  162. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/Column.py +0 -0
  163. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/ColumnType.py +0 -0
  164. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/CreateProjectionRequest.py +0 -0
  165. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/CreateSchemaRequest.py +0 -0
  166. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/GetProjectionTableStatsResponse.py +0 -0
  167. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/GetTableStatsResponse.py +0 -0
  168. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/ImportDataRequest.py +0 -0
  169. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/ListProjectionsResponse.py +0 -0
  170. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/ListSchemasResponse.py +0 -0
  171. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/ListTablesResponse.py +0 -0
  172. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/ObjectDetails.py +0 -0
  173. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/S3File.py +0 -0
  174. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/VipRange.py +0 -0
  175. {vastdb-0.1.1 → vastdb-0.1.2}/vast_flatbuf/tabular/__init__.py +0 -0
  176. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/bench/__init__.py +0 -0
  177. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/conftest.py +0 -0
  178. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/session.py +0 -0
  179. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/__init__.py +0 -0
  180. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/test_imports.py +0 -0
  181. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb/tests/test_nested.py +0 -0
  182. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb.egg-info/dependency_links.txt +0 -0
  183. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb.egg-info/requires.txt +0 -0
  184. {vastdb-0.1.1 → vastdb-0.1.2}/vastdb.egg-info/top_level.txt +0 -0
@@ -4,6 +4,23 @@ 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
+ ## [0.1.2] (2024-04-25)
8
+ [0.1.2]: https://github.com/vast-data/vastdb_sdk/compare/v0.1.1...v0.1.2
9
+
10
+ ### Added
11
+ - Allow querying [VAST Catalog](https://www.vastdata.com/blog/vast-catalog-treat-your-file-system-like-a-database)
12
+ - Use [mypy](https://mypy-lang.org/) for type annotation checking
13
+
14
+ ### Fixed
15
+ - Fix handling HTTPS endpoints [#50]
16
+ - Optimize `Table.select()` performance
17
+ - Use `GET` request to retrieve cluster version
18
+ - Enable `ruff` preview mode
19
+ - Make sure DuckDB integration fails gracefully when transaction is closed prematurely
20
+
21
+ ### Removed
22
+ - Don't return row IDs from `Table.insert()`
23
+
7
24
  ## [0.1.1] (2024-04-15)
8
25
  [0.1.1]: https://github.com/vast-data/vastdb_sdk/compare/v0.1.0...v0.1.1
9
26
 
@@ -93,3 +110,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
93
110
  [#42]: https://github.com/vast-data/vastdb_sdk/pull/42
94
111
  [#43]: https://github.com/vast-data/vastdb_sdk/pull/43
95
112
  [#47]: https://github.com/vast-data/vastdb_sdk/pull/47
113
+ [#50]: https://github.com/vast-data/vastdb_sdk/pull/50
@@ -1,12 +1,11 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vastdb
3
- Version: 0.1.1
3
+ Version: 0.1.2
4
4
  Summary: VAST Data SDK
5
5
  Home-page: https://github.com/vast-data/vastdb_sdk
6
6
  Author: VAST DATA
7
7
  Author-email: hello@vastdata.com
8
8
  License: Copyright (C) VAST Data Ltd.
9
- Platform: UNKNOWN
10
9
  Classifier: Development Status :: 4 - Beta
11
10
  Classifier: License :: OSI Approved :: Apache Software License
12
11
  Classifier: Programming Language :: Python :: 3
@@ -19,6 +18,13 @@ Classifier: Topic :: Database :: Front-Ends
19
18
  Requires-Python: >=3.9.0
20
19
  Description-Content-Type: text/markdown
21
20
  License-File: LICENSE
21
+ Requires-Dist: aws-requests-auth
22
+ Requires-Dist: boto3
23
+ Requires-Dist: flatbuffers
24
+ Requires-Dist: ibis-framework
25
+ Requires-Dist: pyarrow
26
+ Requires-Dist: requests
27
+ Requires-Dist: xmltodict
22
28
 
23
29
 
24
30
  `vastdb` is a Python-based SDK designed for interacting
@@ -27,5 +33,3 @@ and [VAST Catalog](https://vastdata.com/blog/vast-catalog-treat-your-file-system
27
33
  enabling schema and table management, efficient ingest, query and modification of columnar data.
28
34
 
29
35
  For more details, see [our whitepaper](https://vastdata.com/whitepaper/#TheVASTDataBase).
30
-
31
-
@@ -11,6 +11,7 @@ enabling schema and table management, efficient ingest, query and modification o
11
11
  For more details, see [our whitepaper](https://vastdata.com/whitepaper/#TheVASTDataBase).
12
12
  """
13
13
 
14
+
14
15
  def _get_version_suffix():
15
16
  import subprocess
16
17
 
@@ -18,6 +19,7 @@ def _get_version_suffix():
18
19
  print(f"Git commit: {commit}")
19
20
  return f".dev1+vast.{commit.decode()[:16]}"
20
21
 
22
+
21
23
  suffix = ''
22
24
  if os.environ.get('VASTDB_APPEND_VERSION_SUFFIX'):
23
25
  suffix = _get_version_suffix()
@@ -26,7 +28,7 @@ setup(
26
28
  name='vastdb',
27
29
  python_requires='>=3.9.0',
28
30
  description='VAST Data SDK',
29
- version='0.1.1' + suffix,
31
+ version='0.1.2' + suffix,
30
32
  url='https://github.com/vast-data/vastdb_sdk',
31
33
  author='VAST DATA',
32
34
  author_email='hello@vastdata.com',
@@ -1,7 +1,11 @@
1
1
  """VAST Database Python SDK."""
2
2
 
3
+ import functools
4
+
3
5
  from . import session
4
6
 
7
+
5
8
  # A helper function, useful as a short-hand for Session c-tor: `session = vastdb.connect(...)`
6
- connect = session.Session
7
- connect.__name__ = 'connect'
9
+ @functools.wraps(session.Session)
10
+ def connect(*args, **kwargs): # noqa: D103
11
+ return session.Session(*args, **kwargs)
@@ -12,7 +12,7 @@ log = logging.getLogger(__name__)
12
12
 
13
13
  @pytest.mark.benchmark
14
14
  def test_bench(session, clean_bucket_name, parquets_path, crater_path):
15
- files = [str(parquets_path/f) for f in (parquets_path.glob('**/*.pq'))]
15
+ files = [str(parquets_path / f) for f in (parquets_path.glob('**/*.pq'))]
16
16
 
17
17
  with session.transaction() as tx:
18
18
  b = tx.bucket(clean_bucket_name)
@@ -22,8 +22,8 @@ def test_bench(session, clean_bucket_name, parquets_path, crater_path):
22
22
  s = time.time()
23
23
  pa_table = pa.Table.from_batches(t.select(columns=['sid'], predicate=t['sid'] == 10033007, config=config))
24
24
  e = time.time()
25
- log.info("'SELECT sid from TABLE WHERE sid = 10033007' returned in %s seconds.", e-s)
25
+ log.info("'SELECT sid from TABLE WHERE sid = 10033007' returned in %s seconds.", e - s)
26
26
  if crater_path:
27
27
  with open(f'{crater_path}/bench_results', 'a') as f:
28
- f.write(f"'SELECT sid FROM TABLE WHERE sid = 10033007' returned in {e-s} seconds")
28
+ f.write(f"'SELECT sid FROM TABLE WHERE sid = 10033007' returned in {e - s} seconds")
29
29
  assert pa_table.num_rows == 255_075
@@ -6,9 +6,13 @@ It is possible to list and access VAST snapshots generated over a bucket.
6
6
 
7
7
  import logging
8
8
  from dataclasses import dataclass
9
+ from typing import TYPE_CHECKING, List, Optional
9
10
 
10
11
  from . import errors, schema, transaction
11
12
 
13
+ if TYPE_CHECKING:
14
+ from .schema import Schema
15
+
12
16
  log = logging.getLogger(__name__)
13
17
 
14
18
 
@@ -27,7 +31,7 @@ class Bucket:
27
31
  name: str
28
32
  tx: "transaction.Transaction"
29
33
 
30
- def create_schema(self, path: str, fail_if_exists=True) -> "schema.Schema":
34
+ def create_schema(self, path: str, fail_if_exists=True) -> "Schema":
31
35
  """Create a new schema (a container of tables) under this bucket."""
32
36
  if current := self.schema(path, fail_if_missing=False):
33
37
  if fail_if_exists:
@@ -36,9 +40,9 @@ class Bucket:
36
40
  return current
37
41
  self.tx._rpc.api.create_schema(self.name, path, txid=self.tx.txid)
38
42
  log.info("Created schema: %s", path)
39
- return self.schema(path)
43
+ return self.schema(path) # type: ignore[return-value]
40
44
 
41
- def schema(self, path: str, fail_if_missing=True) -> "schema.Schema":
45
+ def schema(self, path: str, fail_if_missing=True) -> Optional["Schema"]:
42
46
  """Get a specific schema (a container of tables) under this bucket."""
43
47
  s = self.schemas(path)
44
48
  log.debug("schema: %s", s)
@@ -51,14 +55,14 @@ class Bucket:
51
55
  log.debug("Found schema: %s", s[0].name)
52
56
  return s[0]
53
57
 
54
- def schemas(self, name: str = None) -> ["schema.Schema"]:
58
+ def schemas(self, name: Optional[str] = None) -> List["Schema"]:
55
59
  """List bucket's schemas."""
56
60
  schemas = []
57
61
  next_key = 0
58
62
  exact_match = bool(name)
59
63
  log.debug("list schemas param: schema=%s, exact_match=%s", name, exact_match)
60
64
  while True:
61
- bucket_name, curr_schemas, next_key, is_truncated, _ = \
65
+ _bucket_name, curr_schemas, next_key, is_truncated, _ = \
62
66
  self.tx._rpc.api.list_schemas(bucket=self.name, next_key=next_key, txid=self.tx.txid,
63
67
  name_prefix=name, exact_match=exact_match)
64
68
  if not curr_schemas:
@@ -69,7 +73,7 @@ class Bucket:
69
73
 
70
74
  return [schema.Schema(name=name, bucket=self) for name, *_ in schemas]
71
75
 
72
- def snapshots(self) -> [Snapshot]:
76
+ def snapshots(self) -> List[Snapshot]:
73
77
  """List bucket's snapshots."""
74
78
  snapshots = []
75
79
  next_key = 0
@@ -26,6 +26,7 @@ log = logging.getLogger(__name__)
26
26
  class HttpError(Exception):
27
27
  code: str
28
28
  message: str
29
+ method: str
29
30
  url: str
30
31
  status: int # HTTP status
31
32
  headers: requests.structures.CaseInsensitiveDict # HTTP response headers
@@ -88,6 +89,10 @@ class Missing(Exception):
88
89
  pass
89
90
 
90
91
 
92
+ class MissingTransaction(Missing):
93
+ pass
94
+
95
+
91
96
  @dataclass
92
97
  class MissingBucket(Missing):
93
98
  bucket: str
@@ -150,21 +155,22 @@ def from_response(res: requests.Response):
150
155
 
151
156
  log.debug("response: url='%s', code=%s, headers=%s, body='%s'", res.request.url, res.status_code, res.headers, res.text)
152
157
  # try to parse S3 XML response for the error details:
153
- code = None
154
- message = None
158
+ code_str = None
159
+ message_str = None
155
160
  if res.text:
156
161
  try:
157
162
  root = xml.etree.ElementTree.fromstring(res.text)
158
163
  code = root.find('Code')
159
- code = code.text if code is not None else None
164
+ code_str = code.text if code is not None else None
160
165
  message = root.find('Message')
161
- message = message.text if message is not None else None
166
+ message_str = message.text if message is not None else None
162
167
  except xml.etree.ElementTree.ParseError:
163
168
  log.debug("invalid XML: %r", res.text)
164
169
 
165
170
  kwargs = dict(
166
- code=code,
167
- message=message,
171
+ code=code_str,
172
+ message=message_str,
173
+ method=res.request.method,
168
174
  url=res.request.url,
169
175
  status=res.status_code,
170
176
  headers=res.headers,