Commit graph

33 commits

Author SHA1 Message Date
Mees Delzenne
b02567d233
Improved error messages (#2566) 2023-09-08 11:28:36 +00:00
Tobie Morgan Hitchcock
8c13d711b8
No need for custom serialization of sql::Datetime (#2594) 2023-09-04 07:54:04 +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
hchockarprasad
432a6cc5b8
Add time::min & time::max function (#2320) 2023-07-23 08:19:28 +00:00
Finn Bear
a10d6df430
Bugfix - JSON datetime string. (#2180) 2023-06-26 11:02:26 +00:00
Finn Bear
12cb551156
Change datetime to serialize as secs/nanos instead of string. (#1951) 2023-06-13 21:13:10 +00:00
Finn Bear
ac9f77a62a
Bugfix #2069 - Properly escape '\' in strings (#2074) 2023-05-31 07:36:29 +00:00
Rushmore Mushambi
91e949248d
Unify serialisation (#1881) 2023-04-29 16:58:22 +01:00
Tobie Morgan Hitchcock
66b105dac0
Add support for stricter typings (#1861)
Co-authored-by: Rushmore Mushambi <rushmore@surrealdb.com>
2023-04-25 11:13:04 +01:00
Tobie Morgan Hitchcock
2be25cdcd2 Revert simple serialization of basic types 2023-03-30 16:52:31 +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
fa0ec302ca Add extra tests for nanosecond and millisecond parsing 2023-03-07 09:54:58 +00:00
Tobie Morgan Hitchcock
8f89f8729c Update 3rd party dependencies
Closes #1593
2023-01-17 09:00:30 +00:00
Allen Lantz
07a2e5f009
Ensure invalid datetimes to not panic (#1550) 2023-01-15 09:29:46 +00:00
Allen Lantz
d1055e6088
Implement hashed implementation of Uniq<Array> (#1310) 2022-10-27 05:23:24 -07:00
Aman Sharma
b92536b649
Add some From<Value> and TryFrom<Value> implementations (#1401) 2022-10-26 07:01:09 -07:00
Tobie Morgan Hitchcock
67eb4b97a1 Fix tests 😖 2022-10-19 15:48:50 +01:00
Tobie Morgan Hitchcock
ad6ee5b42d Add some additional code comments 2022-10-19 10:55:19 +01:00
Tobie Morgan Hitchcock
8902fc0a70 Don’t automatically treat naive dates as datetimes
Closes #1328
2022-10-17 03:34:07 +01:00
Tobie Morgan Hitchcock
eca8cd8d1d Ensure SQL datetimes are formatted correctly as strings 2022-10-17 03:25:58 +01:00
Tobie Morgan Hitchcock
e6eb6168a1 Simplify parsing of string based types 2022-10-16 21:35:50 +01:00
Tobie Morgan Hitchcock
214971cb86 Ensure UUIDs and Datetimes can be converted to strings correctly
Closes #1338
2022-10-16 17:36:07 +01:00
Finn Bear
45e1a9adce
Refactor, optimization, cleanup (#1288) 2022-10-04 22:51:18 +01:00
Tobie Morgan Hitchcock
e01fc12331 Ensure partial timezone offsets are calculated correctly 2022-09-26 11:31:13 +01:00
Hugo Saracino
58cffa2de6
Add duration functions for calculating durations as integers (#257) 2022-09-23 00:48:49 +01:00
Tobie Morgan Hitchcock
4ca579160c Ensure datetimes with milliseconds are parsed correctly
Closes #250
2022-09-22 02:33:12 +01:00
Tobie Morgan Hitchcock
44f20d3740 Remove unnecessary public function definitions in sql module 2022-06-28 11:54:04 +01:00
Tobie Morgan Hitchcock
ea525648ae Remove unnecessary lifetime specifiers 2022-05-25 10:42:10 +01:00
Tobie Morgan Hitchcock
61b1e547b6 Always use simplified serialization unless specified explicitly 2022-05-21 10:07:32 +01:00
Tobie Morgan Hitchcock
10f2911d44 Implement SQL Datetime as a newtype tuple struct 2022-05-05 10:24:52 +01:00
Tobie Morgan Hitchcock
5d554d07d3 Use char instead of str for parsing where possible 2022-03-16 23:53:31 +00:00
Tobie Morgan Hitchcock
d5c53b7791 Extract core surrealdb code into separate library 2022-02-22 14:16:50 +00:00
Renamed from src/sql/datetime.rs (Browse further)