Tobie Morgan Hitchcock
24752a75d9
Enable support for numbers and strings in record ids
2022-03-18 07:24:36 +00:00
Tobie Morgan Hitchcock
364412b437
Improve datastore key creation functionality
2022-03-18 07:21:22 +00:00
Tobie Morgan Hitchcock
f509b88109
Ensure upper range is included in a |test:1..10| model
2022-03-17 22:26:34 +00:00
Tobie Morgan Hitchcock
73df91a438
Use BigDecimal for large number handling
2022-03-17 21:55:32 +00: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
97c0e50654
Parse numbers as either integers or decimals
2022-03-16 23:19:50 +00:00
Tobie Morgan Hitchcock
636eee4a25
Don’t treat all numbers as decimals unless necessary
2022-03-16 21:15:13 +00:00
Tobie Morgan Hitchcock
dc2b436131
Simplify common number parsing
2022-03-16 21:04:22 +00:00
Tobie Morgan Hitchcock
f13aafe576
Ensure numbers are parsed inside (bracket expressions)
2022-03-16 20:49:26 +00:00
Tobie Morgan Hitchcock
60c05ee082
Use hexadecimal u8 values when altering datastore keys
2022-03-16 17:01:25 +00:00
Tobie Morgan Hitchcock
336b2b92fc
Fix failing build
2022-03-16 16:27:13 +00:00
Tobie Morgan Hitchcock
1b0477ae29
Ensure numbers are parsed properly
...
This change fixes a bug where `100test` would be parsed as a number, and the parser would subsequently fail. Now the value is only parsed as a number if it is immediately followed by an allowed character - otherwise it will fail, and the value `100test` will be parsed as an ident instead.
2022-03-16 15:50:08 +00:00
Tobie Morgan Hitchcock
f855e721e8
Update 3rd party dependencies
2022-03-16 15:48:01 +00:00
Tobie Morgan Hitchcock
232b35a304
Ensure numbers do not overflow numeric bounds
2022-03-16 15:40:26 +00:00
Tobie Morgan Hitchcock
cdef111786
Use u8 instead of char for datastpre key separators
2022-03-16 15:33:43 +00:00
Tobie Morgan Hitchcock
ba8dd7bd12
Use external storekey library for key encoding
2022-03-16 14:45:55 +00:00
Tobie Morgan Hitchcock
5781352058
Remove unused macros
2022-03-15 08:34:40 +00:00
Tobie Morgan Hitchcock
03af33796a
Fix arithmetic and boolean binary expression order
...
Previously the expression operations happened right-to-left so `1 - 2 - 3 - 4 - 5` was actually calculated as `(1 - (2 - (3 - (4 - (5)))))`. Now the expressions are calculated according to BODMAS, with boolean expressions calculated last.
2022-03-13 00:18:23 +00:00
Tobie Morgan Hitchcock
0f6d700f6b
Implement initial logic for DEFINE statements
2022-03-07 18:15:57 +00:00
Tobie Morgan Hitchcock
2a0d46a2b6
Remove unused macros
2022-03-07 18:14:42 +00:00
Tobie Morgan Hitchcock
64c02896dd
Implement record storing and fetching
2022-03-07 18:11:44 +00:00
Tobie Morgan Hitchcock
438b1d759c
Simplify datastore keys
2022-03-07 18:10:44 +00:00
Tobie Morgan Hitchcock
77844ab06b
Convert error names according to clippy recommendations
2022-03-06 22:21:37 +00:00
Tobie Morgan Hitchcock
e8d423f8d6
Update build badge in README
2022-03-05 15:30:46 +00:00
Tobie Morgan Hitchcock
ceda6c4542
Add initial Github continuous integration workflow
2022-03-05 14:50:18 +00:00
Tobie Morgan Hitchcock
ebb63bd54c
Update README
2022-03-05 14:47:20 +00:00
Tobie Morgan Hitchcock
9444c550db
Update 3rd party dependencies
2022-03-05 14:45:40 +00:00
Tobie Morgan Hitchcock
d1c2daaee4
Apply cargo clippy lint recommendations
2022-03-05 14:42:58 +00:00
Tobie Morgan Hitchcock
bcd8d4f2a7
Update rustfmt edition to 2021
2022-03-04 16:01:05 +00:00
Tobie Morgan Hitchcock
3154dc7bc8
Remove example usage in comments
2022-03-04 12:15:43 +00:00
Tobie Morgan Hitchcock
2c95a34651
Update dependencies
2022-03-04 12:15:24 +00:00
Tobie Morgan Hitchcock
38c7ae206e
Enable parallel iteration of records
2022-02-27 00:01:19 +00:00
Tobie Morgan Hitchcock
16da3e9b3b
Improve performance of function processing
2022-02-26 20:25:07 +00:00
Tobie Morgan Hitchcock
ec698e85de
Add keyword to queries for PARALLEL execution
2022-02-26 16:53:38 +00:00
Tobie Morgan Hitchcock
cd545c2edd
Remove unused code
2022-02-26 15:09:30 +00:00
Tobie Morgan Hitchcock
b12a76c2ae
Return &str instead of &String values
2022-02-26 00:35:11 +00:00
Tobie Morgan Hitchcock
63113f83c3
Ensure types can be serialized/deserialized to the datastore
2022-02-26 00:34:05 +00:00
Tobie Morgan Hitchcock
10c0b5c732
Check the context before processing values
2022-02-25 22:42:14 +00:00
Tobie Morgan Hitchcock
50e026f859
Remove unused datastore key
2022-02-25 16:53:17 +00:00
Tobie Morgan Hitchcock
f74a619474
Rename NU to NL and DU to DL for database keys
2022-02-23 17:15:49 +00:00
Tobie Morgan Hitchcock
1eddf94e8d
Improve code and logic in iterator
2022-02-23 13:56:54 +00:00
Tobie Morgan Hitchcock
73879706a6
Improve debug and trace logging
2022-02-23 13:29:29 +00:00
Tobie Morgan Hitchcock
7f47fad02b
Remove unimplemented script parsing functionality
2022-02-23 13:20:00 +00:00
Tobie Morgan Hitchcock
02d7154189
No need for explicit references
2022-02-23 11:21:06 +00:00
Tobie Morgan Hitchcock
7710451d7b
Remove serde serialization field skipping
...
Due to a bug in msgpack-rust (https://github.com/3Hren/msgpack-rust/issues/86 ), in order to have correct serialization<->deserialization of data, we need to ensure all fields are serialized even when empty. This will affect the output size of the data, but will ensure that once serialized, the data is deserialized without issue.
2022-02-23 11:18:46 +00:00
Tobie Morgan Hitchcock
19909885e9
Remove old code comments
2022-02-22 19:08:40 +00:00
Tobie Morgan Hitchcock
7d5dc66555
Ensure we parse datetimes and durations in JSON requests
2022-02-22 19:08:22 +00:00
Tobie Morgan Hitchcock
d4566ff6ea
Improve performance with query path analysis
...
Instead of creating a new Vec<_> for every embedded path part, we now use a reference when calling get/set/del on a value’s data. This means we aren’t creating and copying the Vec items each and every time we traverse down a path.
2022-02-22 19:05:58 +00:00
Tobie Morgan Hitchcock
cf707bf5e3
Remove crypto::bcrypt functions
2022-02-22 16:34:09 +00:00
Tobie Morgan Hitchcock
c28057f8ef
Allow flat query expressions
...
Instead of having to specify [*] or * to get/set/del values in embedded arrays, it now supports access embedded values using a flat style for arrays.
2022-02-22 16:33:43 +00:00