quasardb 3.14.2.dev1__cp312-cp312-win_amd64.whl → 3.14.2.dev4__cp312-cp312-win_amd64.whl

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.

Potentially problematic release.


This version of quasardb might be problematic. Click here for more details.

Files changed (96) hide show
  1. quasardb/INSTALL.vcxproj +10 -5
  2. quasardb/__init__.py +33 -4
  3. quasardb/cmake_install.cmake +6 -0
  4. quasardb/date/ALL_BUILD.vcxproj +10 -9
  5. quasardb/date/CMakeFiles/Export/df49adab93b9e0c10c64f72458b31971/dateTargets.cmake +13 -13
  6. quasardb/date/CMakeFiles/generate.stamp.depend +4 -4
  7. quasardb/date/INSTALL.vcxproj +10 -5
  8. quasardb/date/cmake_install.cmake +6 -0
  9. quasardb/date/dateConfigVersion.cmake +0 -5
  10. quasardb/date/dateTargets.cmake +4 -8
  11. quasardb/numpy/__init__.py +58 -10
  12. quasardb/pandas/__init__.py +58 -102
  13. quasardb/pybind11/ALL_BUILD.vcxproj +10 -9
  14. quasardb/pybind11/CMakeFiles/generate.stamp.depend +14 -14
  15. quasardb/pybind11/INSTALL.vcxproj +10 -5
  16. quasardb/pybind11/cmake_install.cmake +6 -0
  17. quasardb/qdb_api.dll +0 -0
  18. quasardb/quasardb.cp312-win_amd64.pyd +0 -0
  19. quasardb/range-v3/ALL_BUILD.vcxproj +10 -9
  20. quasardb/range-v3/CMakeFiles/Export/d94ef200eca10a819b5858b33e808f5b/range-v3-targets.cmake +13 -13
  21. quasardb/range-v3/CMakeFiles/generate.stamp.depend +11 -11
  22. quasardb/range-v3/INSTALL.vcxproj +10 -5
  23. quasardb/range-v3/cmake_install.cmake +42 -0
  24. quasardb/range-v3/range-v3-config-version.cmake +0 -5
  25. quasardb/range-v3/range-v3-config.cmake +4 -8
  26. quasardb/range-v3/range.v3.headers.vcxproj +10 -9
  27. {quasardb-3.14.2.dev1.dist-info → quasardb-3.14.2.dev4.dist-info}/METADATA +15 -10
  28. quasardb-3.14.2.dev4.dist-info/RECORD +54 -0
  29. {quasardb-3.14.2.dev1.dist-info → quasardb-3.14.2.dev4.dist-info}/WHEEL +1 -1
  30. quasardb/CMakeLists.txt +0 -510
  31. quasardb/batch_column.hpp +0 -80
  32. quasardb/batch_inserter.hpp +0 -248
  33. quasardb/blob.hpp +0 -150
  34. quasardb/cluster.cpp +0 -89
  35. quasardb/cluster.hpp +0 -551
  36. quasardb/concepts.hpp +0 -278
  37. quasardb/continuous.cpp +0 -149
  38. quasardb/continuous.hpp +0 -106
  39. quasardb/convert/array.hpp +0 -282
  40. quasardb/convert/point.hpp +0 -330
  41. quasardb/convert/range.hpp +0 -282
  42. quasardb/convert/unicode.hpp +0 -598
  43. quasardb/convert/util.hpp +0 -22
  44. quasardb/convert/value.hpp +0 -711
  45. quasardb/convert.hpp +0 -38
  46. quasardb/detail/qdb_resource.hpp +0 -129
  47. quasardb/detail/ts_column.hpp +0 -224
  48. quasardb/direct_blob.hpp +0 -108
  49. quasardb/direct_handle.hpp +0 -83
  50. quasardb/direct_integer.hpp +0 -94
  51. quasardb/dispatch.hpp +0 -157
  52. quasardb/double.hpp +0 -87
  53. quasardb/entry.hpp +0 -273
  54. quasardb/error.hpp +0 -318
  55. quasardb/handle.cpp +0 -29
  56. quasardb/handle.hpp +0 -98
  57. quasardb/integer.hpp +0 -88
  58. quasardb/logger.cpp +0 -106
  59. quasardb/logger.hpp +0 -228
  60. quasardb/masked_array.hpp +0 -651
  61. quasardb/metrics.cpp +0 -103
  62. quasardb/metrics.hpp +0 -112
  63. quasardb/module.cpp +0 -76
  64. quasardb/module.hpp +0 -24
  65. quasardb/node.hpp +0 -123
  66. quasardb/numpy.cpp +0 -6
  67. quasardb/numpy.hpp +0 -489
  68. quasardb/object_tracker.hpp +0 -283
  69. quasardb/options.hpp +0 -244
  70. quasardb/perf.hpp +0 -336
  71. quasardb/pytypes.hpp +0 -221
  72. quasardb/query.cpp +0 -420
  73. quasardb/query.hpp +0 -92
  74. quasardb/reader/ts_row.hpp +0 -281
  75. quasardb/reader/ts_value.hpp +0 -245
  76. quasardb/remove_cvref.hpp +0 -31
  77. quasardb/string.hpp +0 -160
  78. quasardb/table.cpp +0 -289
  79. quasardb/table.hpp +0 -325
  80. quasardb/table_reader.hpp +0 -220
  81. quasardb/tag.hpp +0 -77
  82. quasardb/timestamp.hpp +0 -97
  83. quasardb/traits.hpp +0 -619
  84. quasardb/ts_iterator.hpp +0 -193
  85. quasardb/utils/blob_deque.hpp +0 -96
  86. quasardb/utils/ostream.hpp +0 -17
  87. quasardb/utils/permutation.hpp +0 -50
  88. quasardb/utils/stable_sort.hpp +0 -25
  89. quasardb/utils/unzip_view.hpp +0 -89
  90. quasardb/utils.cpp +0 -28
  91. quasardb/utils.hpp +0 -174
  92. quasardb/writer.cpp +0 -534
  93. quasardb/writer.hpp +0 -396
  94. quasardb-3.14.2.dev1.dist-info/RECORD +0 -118
  95. {quasardb-3.14.2.dev1.dist-info → quasardb-3.14.2.dev4.dist-info}/LICENSE.md +0 -0
  96. {quasardb-3.14.2.dev1.dist-info → quasardb-3.14.2.dev4.dist-info}/top_level.txt +0 -0
quasardb/writer.hpp DELETED
@@ -1,396 +0,0 @@
1
- /*
2
- *
3
- * Official Python API
4
- *
5
- * Copyright (c) 2009-2024, quasardb SAS. All rights reserved.
6
- * All rights reserved.
7
- *
8
- * Redistribution and use in source and binary forms, with or without
9
- * modification, are permitted provided that the following conditions are met:
10
- *
11
- * * Redistributions of source code must retain the above copyright
12
- * notice, this list of conditions and the following disclaimer.
13
- * * Redistributions in binary form must reproduce the above copyright
14
- * notice, this list of conditions and the following disclaimer in the
15
- * documentation and/or other materials provided with the distribution.
16
- * * Neither the name of quasardb nor the names of its contributors may
17
- * be used to endorse or promote products derived from this software
18
- * without specific prior written permission.
19
- *
20
- * THIS SOFTWARE IS PROVIDED BY QUASARDB AND CONTRIBUTORS ``AS IS'' AND ANY
21
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
- * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
24
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
25
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
26
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
27
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
29
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
- */
31
- #pragma once
32
-
33
- #include "batch_column.hpp"
34
- #include "dispatch.hpp"
35
- #include "error.hpp"
36
- #include "logger.hpp"
37
- #include "object_tracker.hpp"
38
- #include "table.hpp"
39
- #include "utils.hpp"
40
- #include <variant>
41
- #include <vector>
42
-
43
- namespace qdb
44
- {
45
-
46
- namespace detail
47
- {
48
-
49
- using deduplicate = std::variant<std::vector<std::string>, bool>;
50
-
51
- enum deduplication_mode_t
52
- {
53
- deduplication_mode_drop,
54
- deduplication_mode_upsert
55
-
56
- };
57
-
58
- constexpr inline qdb_exp_batch_push_options_t to_push_options(enum detail::deduplication_mode_t mode)
59
- {
60
- switch (mode)
61
- {
62
- case deduplication_mode_drop:
63
- return qdb_exp_batch_option_unique_drop;
64
- case deduplication_mode_upsert:
65
- return qdb_exp_batch_option_unique_upsert;
66
- default:
67
- return qdb_exp_batch_option_standard;
68
- }
69
- }
70
-
71
- struct deduplicate_options
72
- {
73
- detail::deduplicate columns_;
74
- deduplication_mode_t mode_;
75
-
76
- deduplicate_options()
77
- {
78
- columns_ = false;
79
- mode_ = deduplication_mode_drop;
80
- };
81
-
82
- deduplicate_options(deduplication_mode_t mode, detail::deduplicate columns)
83
- : columns_{columns}
84
- , mode_{mode} {};
85
- };
86
-
87
- using int64_column = std::vector<qdb_int_t>;
88
- using double_column = std::vector<double>;
89
- using timestamp_column = std::vector<qdb_timespec_t>;
90
- using blob_column = std::vector<qdb_blob_t>;
91
- using string_column = std::vector<qdb_string_t>;
92
-
93
- using any_column =
94
- std::variant<int64_column, double_column, timestamp_column, blob_column, string_column>;
95
-
96
- template <qdb_ts_column_type_t T>
97
- struct column_of_type;
98
-
99
- template <qdb_ts_column_type_t T>
100
- struct make_column;
101
-
102
- #define COLUMN_OF_TYPE_DECL(TYPE, COLUMN) \
103
- template <> \
104
- struct column_of_type<TYPE> \
105
- { \
106
- using value_type = COLUMN; \
107
- }; \
108
- \
109
- template <> \
110
- struct make_column<TYPE> \
111
- { \
112
- any_column inline operator()() \
113
- { \
114
- return COLUMN{}; \
115
- }; \
116
- };
117
-
118
- COLUMN_OF_TYPE_DECL(qdb_ts_column_int64, int64_column);
119
- COLUMN_OF_TYPE_DECL(qdb_ts_column_double, double_column);
120
- COLUMN_OF_TYPE_DECL(qdb_ts_column_timestamp, timestamp_column);
121
- COLUMN_OF_TYPE_DECL(qdb_ts_column_blob, blob_column);
122
- COLUMN_OF_TYPE_DECL(qdb_ts_column_string, string_column);
123
- COLUMN_OF_TYPE_DECL(qdb_ts_column_symbol, string_column);
124
-
125
- #undef COLUMN_OF_TYPE_DECL
126
-
127
- template <qdb_ts_column_type_t T>
128
- std::vector<typename traits::qdb_column<T>::value_type> & access_column(
129
- std::vector<any_column> & columns, size_t index)
130
- {
131
- using column_type = typename column_of_type<T>::value_type;
132
- try
133
- {
134
- return std::get<column_type>(columns[index]);
135
- }
136
- catch (std::bad_variant_access const & /*e*/)
137
- {
138
- throw qdb::incompatible_type_exception{};
139
- }
140
- }
141
-
142
- template <qdb_ts_column_type_t T>
143
- std::size_t column_size(std::vector<any_column> & columns, size_t index)
144
- {
145
- return access_column<T>(columns, index).size();
146
- }
147
-
148
- template <qdb_ts_column_type_t T>
149
- struct clear_column
150
- {
151
- void operator()(any_column & xs)
152
- {
153
- using value_type = typename detail::column_of_type<T>::value_type;
154
- std::get<value_type>(xs).clear();
155
- }
156
- };
157
-
158
- class staged_table
159
- {
160
- public:
161
- staged_table(qdb::table const & table)
162
- : _logger("quasardb.writer")
163
- , _table_name(table.get_name())
164
- {
165
- _column_infos = table.list_columns();
166
-
167
- std::transform(std::cbegin(_column_infos), std::cend(_column_infos),
168
- std::back_inserter(_columns),
169
-
170
- [](auto const & col) { return dispatch::by_column_type<detail::make_column>(col.type); });
171
- }
172
-
173
- ~staged_table()
174
- {
175
- clear();
176
- }
177
-
178
- void set_index(py::array const & timestamps);
179
- void set_blob_column(std::size_t index, const masked_array & xs);
180
- void set_string_column(std::size_t index, const masked_array & xs);
181
- void set_double_column(std::size_t index, masked_array_t<traits::float64_dtype> const & xs);
182
- void set_int64_column(std::size_t index, masked_array_t<traits::int64_dtype> const & xs);
183
- void set_timestamp_column(
184
- std::size_t index, masked_array_t<traits::datetime64_ns_dtype> const & xs);
185
-
186
- std::vector<qdb_exp_batch_push_column_t> const & prepare_columns();
187
-
188
- void prepare_table_data(qdb_exp_batch_push_table_data_t & table_data);
189
-
190
- void prepare_batch(qdb_exp_batch_push_mode_t mode,
191
- detail::deduplicate_options const & deduplicate_options,
192
- qdb_ts_range_t * ranges,
193
- qdb_exp_batch_push_table_t & batch);
194
-
195
- static inline void _set_push_options(
196
- enum detail::deduplication_mode_t mode, bool columns, qdb_exp_batch_push_table_t & out)
197
- {
198
- out.options = (columns == true ? detail::to_push_options(mode) : qdb_exp_batch_option_standard);
199
- }
200
-
201
- static inline void _set_push_options(enum detail::deduplication_mode_t mode,
202
- std::vector<std::string> const & columns,
203
- qdb_exp_batch_push_table_t & out)
204
- {
205
- auto where_duplicate = std::make_unique<qdb_string_t[]>(columns.size());
206
-
207
- std::transform(std::cbegin(columns), std::cend(columns), where_duplicate.get(),
208
- [](std::string const & column) -> qdb_string_t {
209
- // Note, we're not copying any strings here. This works,
210
- // because we pass the vector by reference, and it is "owned"
211
- // by _push_impl, so the lifetime is longer.
212
- return qdb_string_t{column.c_str(), column.size()};
213
- });
214
-
215
- out.options = detail::to_push_options(mode);
216
- out.where_duplicate = where_duplicate.release();
217
- out.where_duplicate_count = columns.size();
218
- }
219
-
220
- inline void clear()
221
- {
222
- _index.clear();
223
- for (size_t index = 0; index < _columns.size(); ++index)
224
- {
225
- dispatch::by_column_type<detail::clear_column>(_column_infos[index].type, _columns[index]);
226
- }
227
-
228
- _table_name.clear();
229
- _column_infos.clear();
230
- _columns_data.clear();
231
- }
232
-
233
- inline qdb_ts_range_t time_range() const
234
- {
235
- qdb_ts_range_t tr{_index.front(), _index.back()};
236
- // our range is end-exclusive, so let's move the pointer one nanosecond
237
- // *after* the last element in this batch.
238
- //
239
- // XXX(leon): this overflows if we're at exactly the last nanosecond of a second
240
- tr.end.tv_nsec++;
241
-
242
- return tr;
243
- }
244
-
245
- inline bool empty() const
246
- {
247
- return _index.empty();
248
- }
249
-
250
- private:
251
- private:
252
- qdb::logger _logger;
253
-
254
- std::string _table_name;
255
- std::vector<detail::column_info> _column_infos;
256
- std::vector<qdb_timespec_t> _index;
257
- std::vector<any_column> _columns;
258
-
259
- std::vector<qdb_exp_batch_push_column_t> _columns_data;
260
- };
261
-
262
- } // namespace detail
263
-
264
- class writer
265
- {
266
-
267
- using int64_column = detail::int64_column;
268
- using double_column = detail::double_column;
269
- using timestamp_column = detail::timestamp_column;
270
- using blob_column = detail::blob_column;
271
- using string_column = detail::string_column;
272
- using any_column = detail::any_column;
273
- using staged_tables_t = std::map<std::string, detail::staged_table>;
274
-
275
- public:
276
- /**
277
- * Convenience class that holds data that can be pushed to the writer. Makes it
278
- * easier for the end-user to provide the data in the correct format, in a single
279
- * function call, if they decide to use the low-level writer API themselves.
280
- */
281
- class data
282
- {
283
- friend class writer;
284
-
285
- protected:
286
- struct value_type
287
- {
288
- qdb::table table;
289
- py::array index;
290
- py::list column_data;
291
- };
292
-
293
- public:
294
- void append(qdb::table const & table, py::handle const & index, py::list const & column_data);
295
-
296
- inline bool empty() const noexcept
297
- {
298
- return xs_.empty();
299
- }
300
-
301
- inline value_type const & front() const noexcept
302
- {
303
- assert(empty() == false);
304
-
305
- return xs_.front();
306
- }
307
-
308
- inline value_type const & back() const noexcept
309
- {
310
- assert(empty() == false);
311
-
312
- return xs_.back();
313
- }
314
-
315
- std::vector<value_type> xs() const
316
- {
317
- return xs_;
318
- }
319
-
320
- private:
321
- std::vector<value_type> xs_;
322
- };
323
-
324
- public:
325
- writer(qdb::handle_ptr h)
326
- : _logger("quasardb.writer")
327
- , _handle{h}
328
- {}
329
-
330
- // prevent copy because of the table object, use a unique_ptr of the batch in cluster
331
- // to return the object
332
- writer(const writer &) = delete;
333
-
334
- ~writer()
335
- {}
336
-
337
- const std::vector<qdb_exp_batch_push_column_t> & prepare_columns();
338
-
339
- void push(writer::data const & data, py::kwargs args);
340
- void push_async(writer::data const & data, py::kwargs args);
341
- void push_fast(writer::data const & data, py::kwargs args);
342
- void push_truncate(writer::data const & data, py::kwargs args);
343
-
344
- private:
345
- static inline detail::staged_table & _get_staged_table(
346
- qdb::table const & table, staged_tables_t & staged_tables)
347
- {
348
- std::string table_name = table.get_name();
349
-
350
- auto pos = staged_tables.lower_bound(table_name);
351
-
352
- // XXX(leon): can be optimized by using lower_bound and reusing the `pos` for insertion into
353
- // the correct place.
354
- if (pos == staged_tables.end() || pos->first != table_name) [[unlikely]]
355
- {
356
- // The table was not yet found
357
- pos = staged_tables.emplace_hint(pos, table_name, table);
358
- assert(pos->second.empty());
359
- }
360
-
361
- assert(pos != staged_tables.end());
362
- assert(pos->first == table_name);
363
-
364
- return pos->second;
365
- }
366
-
367
- static staged_tables_t _stage_tables(writer::data const & data);
368
-
369
- void _push_impl(staged_tables_t & staged_tables,
370
- qdb_exp_batch_push_mode_t mode,
371
- detail::deduplicate_options deduplicate_options,
372
- qdb_ts_range_t * ranges = nullptr);
373
-
374
- detail::deduplicate_options _deduplicate_from_args(py::kwargs args);
375
-
376
- private:
377
- qdb::logger _logger;
378
- qdb::handle_ptr _handle;
379
-
380
- qdb::object_tracker::scoped_repository _object_tracker;
381
-
382
- public:
383
- // the 'legacy' API needs some state attached to the pinned writer; monkey patching
384
- // the pinned writer purely in python for this is possible, but annoying to do right;
385
- // it's much easier to just have it live here (for now), until the batch writer is
386
- // fully deprecated.
387
- py::dict legacy_state_;
388
- };
389
-
390
- // don't use shared_ptr, let Python do the reference counting, otherwise you will have an undefined
391
- // behavior
392
- using writer_ptr = std::unique_ptr<writer>;
393
-
394
- void register_writer(py::module_ & m);
395
-
396
- } // namespace qdb
@@ -1,118 +0,0 @@
1
- quasardb/CMakeLists.txt,sha256=1G9TgVEnNaUn9DKj6kq5OuqHozTvdSe_iucmwTH9BfQ,15507
2
- quasardb/INSTALL.vcxproj,sha256=ELQMa8Tmpv62SobwBMIGzT9yDRDEYY_FM4sT4HDdFt0,10412
3
- quasardb/INSTALL.vcxproj.filters,sha256=pxy4_BlUGo1k6TJT-FCYg5ENQC4Gft4qMPj6MXtJ4KI,565
4
- quasardb/__init__.py,sha256=LQkGZwgAgEFZ0dZ5ROV02jUztTgnuGy83dQqHqJ8TBk,3801
5
- quasardb/batch_column.hpp,sha256=RrFVpLVrzSLmmqy6FTNyilwRpOz8vhpAEDobnRGP-vo,3388
6
- quasardb/batch_inserter.hpp,sha256=qoxVvfpEL4UmOpvFAC2kVWLyhuJ311nXAbQnThu2Rhg,9803
7
- quasardb/blob.hpp,sha256=kHt1UTVkaZkyHBiqJ28bGzqKFn0f5PA-XyDKfgY1_Rs,5846
8
- quasardb/cluster.cpp,sha256=ytPCLRZVA7eTZgqIbLWKsmiugYLq80v9rSuoksKTE3c,2500
9
- quasardb/cluster.hpp,sha256=c3uw4nFOIXYL8XtJVU7hSBQ7rjJOavVTN1rrOgvOF1c,19405
10
- quasardb/cmake_install.cmake,sha256=KUKVNwUMD1GuwNscaecm2d6-yB2MQq2A5XGhiDJVxVA,1503
11
- quasardb/concepts.hpp,sha256=Ao-UKFVjh7kRqeqsYXioV1LXiKXBR_1l54hRvUCjxKU,9574
12
- quasardb/continuous.cpp,sha256=18-VX7BZA60wkUq75ADU7yfgmwzT_CkG_tEAKxAVkLU,4566
13
- quasardb/continuous.hpp,sha256=g28UCjeL_S9dKIDNj794crWiGl3xESP9yHMScFjzvIc,4327
14
- quasardb/convert.hpp,sha256=hOvbpYuop0_FDaBpot38Ey7X5NhXRV9OFqRcom_hMsI,1830
15
- quasardb/direct_blob.hpp,sha256=8ISBiRG1uIxb5xkEkp4FKSIgMgdpnPYDWQjbLjN2vYM,3917
16
- quasardb/direct_handle.hpp,sha256=OYRI3VsCoHyQCWLE-yogDq59hhVhoLSD4ZMGgEgVptw,2782
17
- quasardb/direct_integer.hpp,sha256=b-T56JjsHFn4VxRZ6Bmp4uE1-Wc-bPO_erKSZPW3r3w,3333
18
- quasardb/dispatch.hpp,sha256=YWqTq9ehXWpphJ9piWwrKUzy3IgA5d9An0loAYQsUlg,5508
19
- quasardb/double.hpp,sha256=vQkhqX5gal-PK8XAzTx4KJnoWt4xbCK4ivMgidUsJ4Q,3239
20
- quasardb/entry.hpp,sha256=thYPRN6uFe1yfJyf7-5Gk1M8O6oJGjTipqNetbo1-I0,9451
21
- quasardb/error.hpp,sha256=pZu3lTVVYYv-R7frPB422YeY4UtiK9y6YkxYfZFQmRo,10807
22
- quasardb/firehose.py,sha256=DHYsew-aL1j5PKZonH30CrhXnwHEX1XIAhGbPrzd4PY,3593
23
- quasardb/handle.cpp,sha256=oyhzAj1k8UFhpLhwU5RL4cbdqt82KZexWacMFz5uXA0,536
24
- quasardb/handle.hpp,sha256=eXBx7TwCyfGKRS3XDKvnF9kwmqcqb89ZJ8_riTmM75c,3051
25
- quasardb/integer.hpp,sha256=fAS8JOm_vJooVIv9kZ71fwV2rxFCnYuCLdkZRleb_lY,3304
26
- quasardb/logger.cpp,sha256=UThEO2V6UI-tbpG9suud7olmMjIMfHr3tNt-nM48DIE,3056
27
- quasardb/logger.hpp,sha256=Cf6bcK3Mpu_INsZ8R621BRSNLZ8FQSYDZdmhyfcC0v4,7278
28
- quasardb/masked_array.hpp,sha256=EaGvx6-tjM31CIBgQVaeXmS3YeP3xIu3oF_kCgvy4nU,18988
29
- quasardb/metrics.cpp,sha256=NuEBVYlIHQRgmPy4g9Eosq1Q28Z1jySSZHKDAMLURIA,2942
30
- quasardb/metrics.hpp,sha256=xcotK6Jer53joky9gZHos0i_nhVB4GEjZ9F7lwq7iuc,3533
31
- quasardb/module.cpp,sha256=Nx0d3xyqCb2Red1WgsGUotaXxX6NHoDCcp9PnUzmcB0,2236
32
- quasardb/module.hpp,sha256=-zRcQ_lgVz4IEP3tokX4AeA33DYJ3jsq8vWX6OnE0Ic,604
33
- quasardb/node.hpp,sha256=np3UoaFpbf7lQ4niudzftcldpdD8KtNGCBcs4xoMRgA,4771
34
- quasardb/numpy.cpp,sha256=0brRs6lnIpsCNvpu3twIcjizy3lMOvCBT0O4rjKAn0I,189
35
- quasardb/numpy.hpp,sha256=CBmKbI2TdoxNYcJnfQAUwBfbKq1Enf3pISyv1pfUgFE,15668
36
- quasardb/object_tracker.hpp,sha256=m0S0vp3WX2kFsr6cE8iPmXXO-3qRo4lcVc6TgFa-MbM,7709
37
- quasardb/options.hpp,sha256=vt3mOcH8VXNddfHJzz7GJS5FnlmmfB_xOys7LZD1IH8,10158
38
- quasardb/perf.hpp,sha256=XZx6CJGwAqFBJhNQVtyEY72R3devrcFXEXrI2rVesow,11364
39
- quasardb/pool.py,sha256=lqVZPFejmNHU7EdyeoPkl7yy_-N3BRyuLhNTzIdtg8g,8743
40
- quasardb/pytypes.hpp,sha256=wQKTfIk1xdUt1xkq8oi-LNpYzF4RKAx0LjY9WjD2nu0,6894
41
- quasardb/qdb_api.dll,sha256=0TehixwkOU2UYeBAC8m98NRmHjBSPh__hcBxPU1JQh4,15442432
42
- quasardb/quasardb.cp312-win_amd64.pyd,sha256=HTaC-EGZClNBAsR2mLf44DI_1tNRzezMR9JoLLP_I1Q,1410560
43
- quasardb/query.cpp,sha256=IWU7oQLIvdI4tydmwlc_3zNhng4OdKXBNcO0qtqa1Dg,12752
44
- quasardb/query.hpp,sha256=lb-NXbLD-L1f4XYDQ67WlthaMrzg0miLFw-nEQCnlUk,3357
45
- quasardb/remove_cvref.hpp,sha256=vKUecNoA2-BIiZeP8NuO3GgBOMF-OVSn_43LJCuDozA,611
46
- quasardb/stats.py,sha256=LDV4F5KTpEXa5sS_syFo_TYn9_W2X1D32Eb43GLutOs,7620
47
- quasardb/string.hpp,sha256=UV7rgEstnf-atcEsbq6I7iqN-E_h_5njE6g9kf7_H70,6071
48
- quasardb/table.cpp,sha256=VBB4SB5J3Jj_o7HS2HpEtbvfaqDyNHtW61mPcmqUBS0,10893
49
- quasardb/table.hpp,sha256=-8pl5KJqQL_7-Qp7b3rtKnDyB2wriPv44PsCkb-4yP8,12500
50
- quasardb/table_cache.py,sha256=t7FFQkms7pFlYDkOhCcLnLS8bWglZjlzX3Qs6gyBG6Q,1559
51
- quasardb/table_reader.hpp,sha256=CaImMMj8czx2wvyTuZNQ2JU3Tyfny5rco_0XeeB7FxY,6941
52
- quasardb/tag.hpp,sha256=nKGYkK1djTGHhFWCrYlQTWttb0TVJiTlrvcIbvuuZ3U,2732
53
- quasardb/timestamp.hpp,sha256=fjGl0B4Sv_xhU6UWrhZzOfin7atlPqawKN-Bu1oiR6M,3889
54
- quasardb/traits.hpp,sha256=RLSJBeZbFsWRQAsZSm6GbV2a2-5jounsJ_TX0iSvyHI,16383
55
- quasardb/ts_iterator.hpp,sha256=faP1HVGYbWubKr98yhkS6gqvyMiKWkl3tgedJfj2u1E,4395
56
- quasardb/utils.cpp,sha256=PkuVxrj1cQfeVujA-kefx9-P0B6IJNtYDQzedCAMjKY,634
57
- quasardb/utils.hpp,sha256=C5qxTYYN3-rzO01T_K23VEvhFsv2sJPK96SB_BJ2vZQ,4724
58
- quasardb/writer.cpp,sha256=5jPLFvOcJydiyBSbbtB-SDspKVoXcV9squEOQLuOvp0,19571
59
- quasardb/writer.hpp,sha256=FdCU3kEfnfa6qTPB56YV8NhLsERW5kFMyEhpcBOQ2bI,12933
60
- quasardb/CMakeFiles/generate.stamp,sha256=MC9-mgyGPAS3QAZa3gHSQ8dYfXJy_Hn7AChwEoqVWOs,55
61
- quasardb/CMakeFiles/generate.stamp.depend,sha256=uY8FV-ceJ2Kk-6JfOnsIesDV7jKoUNfkKHNY2Nf7_E8,117
62
- quasardb/convert/array.hpp,sha256=H4X2lWhOFvkDxJeG7fl83dCxvkiScUQMRn7pNxKsgrw,9161
63
- quasardb/convert/point.hpp,sha256=0WYxllERnzX9O5vIeflHG1y7KHo1SsyWjkZCi05GXO4,11800
64
- quasardb/convert/range.hpp,sha256=Z0skhVzQ8JSRL2RPOwqVXE8AV3kxPHw3amGcNZXQatI,11176
65
- quasardb/convert/unicode.hpp,sha256=eW3OwKMnFrOJ9ftUzA6MeVH5nZMuT3q9vuDzxn97pSQ,15600
66
- quasardb/convert/util.hpp,sha256=Ldie5abmB4H_OFvykp0twzwAzOw_hyaUr85Ob3Qr-ko,582
67
- quasardb/convert/value.hpp,sha256=c91FPAmwbqISG6EhqwnN4AqTeYloCMrLdrp3W17PdgI,23396
68
- quasardb/date/ALL_BUILD.vcxproj,sha256=sCiTOdE50HbWlSetEMvuVzhAUlqarYNGrvXiZ4o_gGM,13241
69
- quasardb/date/ALL_BUILD.vcxproj.filters,sha256=lTQk5MABpmIlZcZqriqmw7SlGUJKSM2xH8HnaKmgC5E,304
70
- quasardb/date/INSTALL.vcxproj,sha256=aSEnlrCkKuH_ak80yzAFepWurRQTj7Gl2d78i6FphSQ,10437
71
- quasardb/date/INSTALL.vcxproj.filters,sha256=36gRI_vnd_hwyN4ia-Sx1lUHcXW-2tmELUfNE-SMU-8,565
72
- quasardb/date/cmake_install.cmake,sha256=5Tlan-5KfHVuRO5aAfhcILc2hrUn-RS5RNFfEYpb9xs,3018
73
- quasardb/date/date.sln,sha256=NfuE3tfFbJRg9FslblW0Fkcyhl9POvcnTZcGY_FH4j4,3661
74
- quasardb/date/dateConfigVersion.cmake,sha256=8jbm60CeIqygj1coA55dqWDLvM8VxKbwkpTdSG4McIc,2948
75
- quasardb/date/dateTargets.cmake,sha256=mgzbE2I7AND1xmkmtBQUE51_Mfqhka5mExkpI2YiZgg,2977
76
- quasardb/date/CMakeFiles/generate.stamp,sha256=MC9-mgyGPAS3QAZa3gHSQ8dYfXJy_Hn7AChwEoqVWOs,55
77
- quasardb/date/CMakeFiles/generate.stamp.depend,sha256=BtPwq5NtFGRsDKHSrnCDRWZ5DnLsrz-ISnF7WyI9H98,450
78
- quasardb/date/CMakeFiles/Export/df49adab93b9e0c10c64f72458b31971/dateTargets.cmake,sha256=5hepIqwu5WtmdMoFVkRvh22_YuOJwvIrdny8I03rp4k,4102
79
- quasardb/detail/qdb_resource.hpp,sha256=QaVzlgBZR04meF7iKPvwXCv46I98QlvvPdJ3CoDFM34,3319
80
- quasardb/detail/ts_column.hpp,sha256=pjmNWx6GVdtWRGrYrG0DotL9NccoQN10rGIcxanxo10,7555
81
- quasardb/extensions/__init__.py,sha256=zvMxXV_zuRSbNrkjsu-qFSEiZahdHmC0lhMqMVRzY_8,120
82
- quasardb/extensions/writer.py,sha256=LcGhgr_jrHEDukVukLN1eGKCU0egeZkcCOenFEhZi3A,5928
83
- quasardb/numpy/__init__.py,sha256=s9pq8ruy4QOM08O_Zsdhmp50iQYVIlkp7g87U7Jc6bE,29079
84
- quasardb/pandas/__init__.py,sha256=PYmcIprWuzVSCLD_5Au137BRFE2_urU83wV5jJc4I8o,16617
85
- quasardb/pybind11/ALL_BUILD.vcxproj,sha256=k4qz6jbQ9Q1nR3aptRG-M7P4_CClZQdlU3S9LxXiQ_Y,17681
86
- quasardb/pybind11/ALL_BUILD.vcxproj.filters,sha256=WjgQPMVZN7jEaUOdw8Ha03hPfNxybvx_F2wOck10Kqo,308
87
- quasardb/pybind11/INSTALL.vcxproj,sha256=mxp3GcWacCZwgE1cJXqKIWg9p2ZhEILHt5PTPxJ57P4,10457
88
- quasardb/pybind11/INSTALL.vcxproj.filters,sha256=08C8VA4MANuZ3q74-B_Yx5paB4hry51LoClDqzfRnyk,565
89
- quasardb/pybind11/cmake_install.cmake,sha256=k8w7rY8hohkJE0J7y-mDFWP0y-IxQmNtYMU3-OVf4_I,1060
90
- quasardb/pybind11/pybind11.sln,sha256=MbDucc3cbvI1wh5o9lOjCGZFSN8cXGrtfwZ5-OQqEHw,3661
91
- quasardb/pybind11/CMakeFiles/generate.stamp,sha256=MC9-mgyGPAS3QAZa3gHSQ8dYfXJy_Hn7AChwEoqVWOs,55
92
- quasardb/pybind11/CMakeFiles/generate.stamp.depend,sha256=wYtnKH-kec5YBYyzS4tdw033Fbodd-wFpl71dHdqAj8,1565
93
- quasardb/range-v3/ALL_BUILD.vcxproj,sha256=NpP2Jf5OvZ_eV7JleOR49RhqX_Rw1ROknJW1ktxTXL4,16821
94
- quasardb/range-v3/ALL_BUILD.vcxproj.filters,sha256=c0k-3qrBreLvjffsj9pJo50YOMqfDYnxLpBqvV1nI00,308
95
- quasardb/range-v3/INSTALL.vcxproj,sha256=Mmj5RuYU33YZrZEvZ5ZYN_Dsp1LMtt3TtnwdSDnsCp4,10457
96
- quasardb/range-v3/INSTALL.vcxproj.filters,sha256=8d2AwXMhWMmWrwvyx4z1zo1pA4u19OxzDHiTDOwS8pE,565
97
- quasardb/range-v3/Range-v3.sln,sha256=mRciDE6qEvzG3i3q7ao4kLCrTyYY0fS5Ftm6oB6wnro,4507
98
- quasardb/range-v3/cmake_install.cmake,sha256=Bn-A8d_Kd3LJy_FOjCPCFrfY6HZBbK_LEsMwOBQoW54,3181
99
- quasardb/range-v3/range-v3-config-version.cmake,sha256=pHYj95sr3rDpNyK2mydblBtfOYH9afymxcFPHelxMZs,3453
100
- quasardb/range-v3/range-v3-config.cmake,sha256=BYbmCMTzKc7zkvXYyHlPyu-mC_zX0v6j6XlC03_pe80,3593
101
- quasardb/range-v3/range.v3.headers.vcxproj,sha256=avuvSxGt-u2b3u1nQg5I22iolPv0u7mW1sk2PbfcXqU,56503
102
- quasardb/range-v3/range.v3.headers.vcxproj.filters,sha256=gj8b8c0HcJHS64Or2pUjMcDtFHmO_U7P5xd62t-IQVg,51825
103
- quasardb/range-v3/CMakeFiles/generate.stamp,sha256=MC9-mgyGPAS3QAZa3gHSQ8dYfXJy_Hn7AChwEoqVWOs,55
104
- quasardb/range-v3/CMakeFiles/generate.stamp.depend,sha256=GhXU59kbuzj9_w1mzGx7Ty-yhRPJ6J7akPwm04KWxr8,1348
105
- quasardb/range-v3/CMakeFiles/Export/d94ef200eca10a819b5858b33e808f5b/range-v3-targets.cmake,sha256=7oWm2wsmqpiAL4Eo17HbvCz5gvGyaLyJC3pg3eo1HNU,5306
106
- quasardb/range-v3/include/range/v3/version.hpp,sha256=jy6iEzXjaavicAw1VSIfvpS7Wu9IoEY51Q5N9m4eaB8,610
107
- quasardb/reader/ts_row.hpp,sha256=9xJN-chOhajwYp4XslDTmZRDuKWQcGuXMXoUGbKsk00,9690
108
- quasardb/reader/ts_value.hpp,sha256=_EhN5445w80cFJD59Bza8ghWghvPxhY-ug5-cMqLMHc,7048
109
- quasardb/utils/blob_deque.hpp,sha256=YLp0eG1fSQXIFo46rZ8YIeTSNRJSdmmtdhC2z-qMa08,2540
110
- quasardb/utils/ostream.hpp,sha256=KYFwqXuZoxuZblHUM-z5xrd74P2Y5zWJqVpaQ9oedAo,390
111
- quasardb/utils/permutation.hpp,sha256=BwJzgZmpS4G-oS7249GvnUFj_cmqSAbF2Fzb8wuihLo,1552
112
- quasardb/utils/stable_sort.hpp,sha256=luIK9T76mT0NyDxpLxXjTt1eSSKEOY29jRANJNysJCo,489
113
- quasardb/utils/unzip_view.hpp,sha256=nn6BSAI_cGsKgBh8WXhAUJ6Zzn3N0AnhtE6ePmhPeQM,2476
114
- quasardb-3.14.2.dev1.dist-info/LICENSE.md,sha256=0iT1ltzDof6cJr8mSX2PVOGhKjISfCrOYzJg7rG2pOs,1477
115
- quasardb-3.14.2.dev1.dist-info/METADATA,sha256=f18TR9TlhVueRpOqH8CashOiQr5tp3bc4og1voG9_ls,1496
116
- quasardb-3.14.2.dev1.dist-info/WHEEL,sha256=6ELqAucStubqYbsNht5G2Vt0Sx8vF2Win3-S4get58M,102
117
- quasardb-3.14.2.dev1.dist-info/top_level.txt,sha256=wlprix4hCywuF1PkgKWYdZeJKq_kgJOqkAvukm_sZQ8,9
118
- quasardb-3.14.2.dev1.dist-info/RECORD,,