Commit graph

566 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
495f69d618
Ensure comments are output with DEFINE statements (#2500) 2023-08-23 17:04:42 +01:00
Tobie Morgan Hitchcock
b1275ed565
Ensure foreach range is computed before iterating over (#2492) 2023-08-22 17:45:22 +01:00
Tobie Morgan Hitchcock
ac35111833
Improve code blocks, foreach statements, and throw statements (#2490) 2023-08-22 12:26:05 +01:00
Tobie Morgan Hitchcock
afdd0b3c85
Improve id field handling in the statement data clause (#2487) 2023-08-21 23:47:35 +01:00
Finn Bear
27cc21876d
Security - Limit parser depth. (#2369) 2023-08-21 22:05:11 +00:00
Mees Delzenne
77c889f356
Minor parser fixes (#2479) 2023-08-21 16:29:50 +01:00
Mees Delzenne
76b962eb6e
Lower parsing complexity for binary values and idioms (#2475) 2023-08-21 11:33:57 +01:00
Tobie Morgan Hitchcock
b350f052a7
Ensure ON DUPLICATE KEY UPDATE clause is displayed on INSERT statement (#2474) 2023-08-20 19:16:41 +01:00
Tobie Morgan Hitchcock
c2e695b897
Support whitespace in JavaScript function definition (#2473) 2023-08-20 14:14:53 +01:00
Tobie Morgan Hitchcock
f01da5f577
Delay Record ID generation when using functions (#2469) 2023-08-20 04:27:20 +01:00
Tobie Morgan Hitchcock
71adbe6f5a
Ensure foreign tables are deleted fully when removed (#2467) 2023-08-20 02:07:15 +01:00
Rushmore Mushambi
f16ec7f894
Add a Value::Query variant (#2460) 2023-08-18 23:51:56 +01:00
Tobie Morgan Hitchcock
44dabfa9d2
Improve DEFINE and REMOVE statements code (#2455) 2023-08-18 14:21:02 +01:00
Yusuke Kuoka
41c9fd701e
Add ns/db/tb IDs for aliasing (#2441) 2023-08-18 09:00:06 +01:00
Yusuke Kuoka
a242d21d94
feat: Ability to show changes using timestamp (#2408) 2023-08-18 08:17:54 +01:00
Tobie Morgan Hitchcock
b2b51b54b1
Add versioned data storage serialisation (#2433) 2023-08-17 19:03:46 +01:00
Przemyslaw Hugh Kaznowski
8678377efd
Refactored ds.rs to re-use and close write transaction (#2431) 2023-08-11 19:30:44 +01:00
hchockarprasad
8b1cb5ee1f
Fix merging of empty objects & arrays (#2347) 2023-08-11 15:47:54 +00:00
meppu
1a0116332a
Implement all JSON Patch operations (#2398) 2023-08-10 06:38:46 +00:00
Przemyslaw Hugh Kaznowski
87705098ab
Change kill id type to value (#2402)
Co-authored-by: Tobie Morgan Hitchcock <tobie@surrealdb.com>
2023-08-08 17:15:01 +00:00
Aly
7221d8cae9
Fix setting id using arbitrary record IDs (#2367) 2023-08-01 18:47:08 +00:00
Emmanuel Keller
ecba885eb8
Feat: btree serialisation + generic read/write tree cache (#2362) 2023-08-01 09:57:05 +00:00
Emmanuel Keller
b485d9cc3d
Feat: Support of (un)flattened fields in indexing (#2327) 2023-08-01 07:30:13 +00:00
Salvador Girones Gil
998b263517
[iam] RBAC and multiple root users (#2176)
Co-authored-by: Przemyslaw Hugh Kaznowski <hughkaznowski@protonmail.com>
Co-authored-by: Tobie Morgan Hitchcock <tobie@surrealdb.com>
2023-07-29 18:47:25 +00:00
Finn Bear
5f0aaa0973
Bugfix #2345 - allow keyword as ident prefix. (#2349) 2023-07-27 08:14:55 +00:00
Mees Delzenne
278e27db87
Implement support for running queries in script functions. (#2331) 2023-07-26 07:54:07 +00:00
Przemyslaw Hugh Kaznowski
e309ee6df2
Change lq from uuid::Uuid to sql::Uuid (#2289) 2023-07-24 16:15:45 +00:00
Yusuke Kuoka
d36ece79de
feat: Change Feeds Enabling/Writing/Reading (#2306) 2023-07-24 16:15:20 +00:00
hchockarprasad
432a6cc5b8
Add time::min & time::max function (#2320) 2023-07-23 08:19:28 +00:00
Przemyslaw Hugh Kaznowski
bfaa430103
Fix Node LQ to reflect correct path (#2301) 2023-07-21 21:30:59 +00:00
Emmanuel Keller
0b56d5c6c6
feat: WITH clause on SELECT statement (#2304) 2023-07-21 18:41:36 +00:00
Emmanuel Keller
b66e537f98
Unique index should ignore none or null values (#2313) 2023-07-21 18:40:59 +00:00
Emmanuel Keller
063f4e6665
feat: implements Multi-index execution plan (#2280) 2023-07-20 12:56:32 +00:00
Tobie Morgan Hitchcock
773cb5f130
Add insert method to WebSocket RPC endpoint (#2296) 2023-07-20 09:19:36 +00:00
hchockarprasad
88bcc87d39
Add array::at function (#2294) 2023-07-20 08:27:04 +00:00
hchockarprasad
eef9b755cb
Add first, last functions to array (#2285) 2023-07-19 14:23:07 +00:00
Tobie Morgan Hitchcock
87dee375a8
Fix model range increments (#2281) 2023-07-19 14:00:06 +00:00
Przemyslaw Hugh Kaznowski
769ed5ab85
Sur 253 Change Cl->Nd, rework key/mod (#2257)
Co-authored-by: Tobie Morgan Hitchcock <tobie@surrealdb.com>
2023-07-18 18:32:38 +00:00
Emmanuel Keller
98a482e471
Implements additional function for vectors (#2266) 2023-07-16 13:04:22 +00:00
hchockarprasad
a2ef2d83df
Make what parser to parse idioms as well (#2243) 2023-07-15 16:26:36 +00:00
Tobie Morgan Hitchcock
1d6c12e777
Update dependencies and reduce log traces (#2265) 2023-07-15 13:18:44 +01:00
Tobie Morgan Hitchcock
a12348db8e
Path processing improvements (#2250) 2023-07-15 07:08:26 +00:00
Eduardo Pereira de Sousa
b3a1b39236
Feature: Add additional functions for comparing strings for similarity. (#1904)
Co-authored-by: Tobie Morgan Hitchcock <tobie@surrealdb.com>
2023-07-14 20:37:52 +00:00
Tim
b83cd86f9d
Feature: 1903 Basic Vector Functions (#1907)
Co-authored-by: Tobie Morgan Hitchcock <tobie@surrealdb.com>
Co-authored-by: Emmanuel Keller <emmanuel.keller@surrealdb.com>
2023-07-14 18:00:07 +00:00
Tobie Morgan Hitchcock
5c08be973d
Revert "Update js functions to new rquickjs version" (#2262) 2023-07-14 16:01:12 +00:00
Mees Delzenne
4f4339848e
Update js functions to new rquickjs version (#2252) 2023-07-14 13:35:32 +00:00
Emmanuel Keller
1e30eb4aa1
feat: Implements SELECT/EXPLAIN FULL (#2258) 2023-07-14 12:22:37 +00:00
Przemyslaw Hugh Kaznowski
ac213d69bb
Sur 191 self garbage collection 2 (#2137)
Co-authored-by: Tobie Morgan Hitchcock <tobie@surrealdb.com>
2023-07-13 13:44:54 +00:00
Finn Bear
ce9430d1ac
Bugfix #2175 - Allow escape characters in scripts (#2253) 2023-07-13 08:06:12 +00:00
Emmanuel Keller
1d68fd5622
Improve index BTree insertion & search performance (#2240) 2023-07-11 18:22:31 +00:00
Emmanuel Keller
75fc006c21
Ensure index resources are properly deleted on index deletion (#2234) 2023-07-10 08:24:47 +00:00
JustAnotherCodemonkey
a10b9cbb75
Feature for #2065: Add array functions to reduce JS slowdown. (#2156)
Co-authored-by: Mees Delzenne <DelSkayn@users.noreply.github.com>
2023-07-10 08:15:18 +00:00
Emmanuel Keller
e9eeb9aca7
QueryPlanner / indexing / Context / Cursor doc (#2229) 2023-07-06 14:57:42 +00:00
Tobie Morgan Hitchcock
4b690c763b
Improve datastore configuration options (#2227) 2023-07-05 21:26:13 +00:00
Rushmore Mushambi
315c6e1125
Change uuid serialisation to compact (#2204) 2023-07-01 22:55:00 +00:00
Tobie Morgan Hitchcock
31ccb0c904
Enable inner field access on sql::Geometry types (#2203) 2023-07-01 21:04:24 +00:00
Tobie Morgan Hitchcock
55918b7c0e
Switch to bincode serialization (#2134)
Co-authored-by: Rushmore Mushambi <rushmore@surrealdb.com>
2023-07-01 20:09:15 +01:00
Emmanuel Keller
1b73d3e4e4
feat: the query planner should support params (#2200) 2023-06-30 16:51:03 +00:00
Emmanuel Keller
1c6ada0f69
BM25 without parameters (#2197) 2023-06-30 11:35:02 +00:00
Yusuke Kuoka
d1cf55764d
feat: SHOW statement for change feed reading (#2187) 2023-06-28 07:36:13 +00:00
Yusuke Kuoka
781b1f944e
feat: Change Feed option for DEFINE [TABLE|DATABASE] (#2189) 2023-06-28 07:19:40 +00:00
Finn Bear
a10d6df430
Bugfix - JSON datetime string. (#2180) 2023-06-26 11:02:26 +00:00
Emmanuel Keller
6d5dcfadd9
Feature - Full-text search scoring function (#2158) 2023-06-23 21:26:19 +01:00
Emmanuel Keller
8e64750a60
Feature - Search highlighting (#2132) 2023-06-21 19:31:15 +01:00
Finn Bear
41e119a5f5
Feature - unary operators (#2139) 2023-06-21 00:31:23 +01:00
Przemyslaw Hugh Kaznowski
64adb2e913
Rebased live query changes (#2136) 2023-06-20 23:50:26 +01:00
Nrishinghananda Roy
5485883d3c
Fix multiple Clippy Lints (#2159) 2023-06-20 12:48:20 +01:00
Emmanuel Keller
668d3fd8fb
Introduce query planner and indexing (#1899) 2023-06-19 19:41:13 +01:00
Finn Bear
12cb551156
Change datetime to serialize as secs/nanos instead of string. (#1951) 2023-06-13 21:13:10 +00:00
Gustavo
e42c8fdb1a
fix: Value equal implementation in the Bool match case (#2129)
Co-authored-by: tavindev <tavindev>
2023-06-13 18:00:16 +00:00
Finn Bear
5ebf4ee963
Refactor - consolidate Field enum to reduce redundancy. (#2104) 2023-06-10 20:23:22 +00:00
Finn Bear
b389b104aa
Bugfix #1316 - fix 2 of 3 problems with impl Ord for Number (#2114) 2023-06-09 16:53:22 +00:00
Finn Bear
c45fd12509
Feature - Use rust_decimal (128b) instead of bigdecimal ("arbitrary" precision) (#1991) 2023-06-09 15:23:30 +00:00
Tobie Morgan Hitchcock
f5f10d508f
Improve type casting support (#2083)
Co-authored-by: Finn Bear <finnbearlabs@gmail.com>
2023-06-06 06:12:59 +00:00
Finn Bear
721d3c5444
Feature #2080 - support empty custom fn's (#2081) 2023-05-31 22:39:44 +00:00
Marta Sanchez
496d16242f
Change data returned by the INFO statement (#2078)
Co-authored-by: Marta <marta@Salvadors-Laptop.local>
2023-05-31 12:35:29 +00:00
Finn Bear
ac9f77a62a
Bugfix #2069 - Properly escape '\' in strings (#2074) 2023-05-31 07:36:29 +00:00
Emmanuel Keller
8e48604e20
Add initial full-text search indexer implementation (#1779) 2023-05-29 12:46:41 +01:00
Finn Bear
a81d427c02
Refactor - Use floats for math and cvt'ing from JS numbers, integer division truncates (#2032) 2023-05-23 07:10:09 +01:00
Finn Bear
31af5dd4d3
Feature - Add time::EPOCH constant. (#2021) 2023-05-20 08:28:52 +01:00
Finn Bear
0d658842df
Bugfix #2001 - Error instead of panic when applying malformed patches. (#2007) 2023-05-19 22:02:43 +01:00
hchockarprasad
11543f7d67
Feature: Add unset clause for update statement (#2004) 2023-05-18 09:04:40 +01:00
hchockarprasad
a8f35611c2
Bugfix - Include index part when patching object value (#1994) 2023-05-15 21:22:13 +01:00
Rushmore Mushambi
c02d176646
Expose the range parser (#1993) 2023-05-15 16:46:20 +01:00
Finn Bear
10f29fbb26
Bugfix - error on integer overflow in SurrealQL. (#1983) 2023-05-12 19:55:52 -04:00
Finn Bear
01b280623c
Feature #1973 - Add time::ceil function. (#1975) 2023-05-11 14:46:36 -04:00
Tobie Morgan Hitchcock
86483e087a
Fix clippy warnings (#1965) 2023-05-10 12:58:04 -04:00
Rushmore Mushambi
f1ef3bfd21
Add a sql::Value::into_json() method (#1963) 2023-05-10 08:12:47 -04:00
Emmanuel Keller
848be4dafb
Implements analyzer definition (#1705) 2023-05-09 22:08:09 -04:00
Tobie Morgan Hitchcock
19b0920e15
Ensure Idiom paths result in writeable transactions where necessary (#1957) 2023-05-09 18:17:29 -04:00
hchockarprasad
bb94374c78
Trim text before json parsing (#1955) 2023-05-09 16:49:12 -04:00
Finn Bear
ccc16fa9a7
Feature - Expand support for Bytes (#1898) 2023-05-09 16:43:16 -04:00
Finn Bear
73374d4799
Bugfix - Prevent NUL bytes from existing in UTF-8 strings (#1941) 2023-05-09 13:48:14 -04:00
Tobie Morgan Hitchcock
bfbadc6fdd
Ensure user $input is accessible with all Data pattern types (#1945) 2023-05-07 13:33:32 +01:00
Tobie Morgan Hitchcock
f0e5753cd1
Use static str where possible for context param names (#1942) 2023-05-06 21:49:34 +01:00
Tobie Morgan Hitchcock
531e75a5b0
Ensure chained future values have access to current document context (#1939) 2023-05-06 07:29:42 +01:00
Tobie Morgan Hitchcock
53212b23be
Don’t use asynchronous functions when not necessary (#1936) 2023-05-06 01:15:03 +01:00
Tobie Morgan Hitchcock
e725b3e8e6
Add detailed code comments for Value enum variants (#1938) 2023-05-06 00:53:26 +01:00
Finn Bear
d0e76e64a9
Testing & Bugfix - Ensure consistency of functions. (#1919) 2023-05-05 00:05:51 +01:00
Jan Tebernum
e9ebecfdd6
Feature: Implementation of array::join (#1920) 2023-05-04 21:38:02 +01:00