Commit graph

19 commits

Author SHA1 Message Date
Rushmore Mushambi
690dd55a86
Extract core lib into a standalone crate (#3423)
Co-authored-by: Gerard Guillemas Martos <gerard.guillemas@surrealdb.com>
2024-02-02 22:10:47 +00:00
Nathaniel Brough
5d176d4c77
fuzz: Add structured executor (#3285) 2024-01-09 15:34:52 +00:00
Mees Delzenne
256a08a396
Factor out the parser into its own module. (#2979) 2023-11-18 13:56:13 +00:00
Mees Delzenne
daf6743c4e
Miscellaneous parser improvements (#2515) 2023-08-29 11:50:00 +01:00
Tobie Morgan Hitchcock
b2b51b54b1
Add versioned data storage serialisation (#2433) 2023-08-17 19:03:46 +01:00
Emmanuel Keller
e9eeb9aca7
QueryPlanner / indexing / Context / Cursor doc (#2229) 2023-07-06 14:57:42 +00:00
Emmanuel Keller
668d3fd8fb
Introduce query planner and indexing (#1899) 2023-06-19 19:41:13 +01:00
Rushmore Mushambi
c02d176646
Expose the range parser (#1993) 2023-05-15 16:46:20 +01:00
Tobie Morgan Hitchcock
19b0920e15
Ensure Idiom paths result in writeable transactions where necessary (#1957) 2023-05-09 18:17:29 -04:00
Finn Bear
73374d4799
Bugfix - Prevent NUL bytes from existing in UTF-8 strings (#1941) 2023-05-09 13:48:14 -04:00
Rushmore Mushambi
91e949248d
Unify serialisation (#1881) 2023-04-29 16:58:22 +01:00
Rushmore Mushambi
3e80aa9914
Implement to_value for sql::Value (#1659)
`sql::Value` is an integral part of `surrealdb`. It's the internal type used by our storage layer. Because of this, we do a lot of converting between this type and native Rust types. Currently this conversion is done through `JSON` using the `serde_json` crate because we do not have our own custom data format implementation. This works because `SQL` is a superset of `JSON`.  This, however, means that this conversion is lossy and can cause surprises in some cases. For example expecting record IDs to be deserialized into a `String` instead of its corresponding Rust native type.

This change implements a custom data format around `sql::Value` and introduces a `to_value` function that facilitates that conversion.
2023-03-30 11:41:44 +01:00
Tobie Morgan Hitchcock
84b026679f Update clippy linting tests 2023-02-03 11:47:07 +00:00
Tobie Morgan Hitchcock
a4db0d8427 Ensure parameters in record ranges are computed 2022-11-03 10:55:47 +00:00
Tobie Morgan Hitchcock
12b6e04539 Implement inclusive and unbounded record ranges
Closes #1412
Closes #1413
2022-10-30 01:32:27 +00:00
Allen Lantz
d1055e6088
Implement hashed implementation of Uniq<Array> (#1310) 2022-10-27 05:23:24 -07:00
Tobie Morgan Hitchcock
67eb4b97a1 Fix tests 😖 2022-10-19 15:48:50 +01:00
Tobie Morgan Hitchcock
0e2b134de2 Add test for range queries with integer record IDs 2022-09-04 10:51:26 +01:00
Tobie Morgan Hitchcock
c1a1eba8b5 Add support for Record ID ranges
Closes #66
2022-08-28 23:31:57 +01:00