Commit graph

264 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
45094c76ce Use custom serialization format 2023-03-31 23:49:52 +01:00
Rushmore Mushambi
179878d672
Add compile-time guarantees to make Surreal::delete safer (#1753) 2023-03-31 23:49:29 +01:00
Tobie Morgan Hitchcock
725b03729b Enable full-type serialisation on HTTP import route 2023-03-31 15:31:24 +01:00
Diptesh Choudhuri
494203d358
Allow exporting to stdout (#1701) 2023-03-30 19:13:26 +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
e0cad89a8c Improve error logging within CLI tool 2023-03-29 19:19:46 +01:00
Salvador Girones Gil
565717659a
Add functionality for open telemetry tracing (#1727) 2023-03-29 19:16:18 +01:00
Tobie Morgan Hitchcock
0c95126573 Add support for full binary serialization on HTTP endpoints 2023-03-27 13:52:28 +01:00
Tobie Morgan Hitchcock
2769033451 Update 3rd party dependencies 2023-03-25 20:49:00 +00:00
Emmanuel Keller
19c287a011
Implement transaction debug tracing (#1668) 2023-03-16 09:11:30 -04:00
Tobie Morgan Hitchcock
a8df2b6a6f Allow any Value in arguments to RPC use method 2023-03-07 09:55:35 +00:00
Tobie Morgan Hitchcock
7dcb0f83fa Add trace logging to WebSocket implementation 2023-03-07 09:54:58 +00:00
Tobie Morgan Hitchcock
d1558a63ad Use string formatting for SQL output in CLI
Related to #246
2023-03-07 09:54:58 +00:00
Igor Morozov
b10beda30c
Add isready CLI command for checking server health (#1679) 2023-03-07 09:53:56 +00:00
Tobie Morgan Hitchcock
454612487a Allow sending Table type for LIVE query RPC method 2023-02-14 11:01:31 +00:00
Tobie Morgan Hitchcock
5d55f28b98 Fix linting warning 2023-02-13 16:05:02 +00:00
Tobie Morgan Hitchcock
efbc5d3219 Add all WebSockets to a global collection 2023-02-13 12:20:13 +00:00
Tobie Morgan Hitchcock
ac9a574c00 Simplify passing of authentication tokens to client 2023-02-11 15:56:14 +00:00
Tobie Morgan Hitchcock
3f0afd9d72 Fix base64 authentication decoding support
Closes #1625
2023-02-09 10:54:52 +00:00
Tobie Morgan Hitchcock
c90ff5f5d1 Listen to different OS signals on Windows and Unix 2023-02-08 13:19:08 +00:00
Salvador Girones Gil
15f7fb3eee
Ensure SurrealDB listens to SIGTERM/SIGINT signals and quits gracefully (#1639) 2023-02-05 21:03:21 +00:00
Tobie Morgan Hitchcock
84b026679f Update clippy linting tests 2023-02-03 11:47:07 +00:00
Tobie Morgan Hitchcock
cf11eb7f54 Add clippy::mem_forget denial rule 2023-02-03 11:46:39 +00:00
Tobie Morgan Hitchcock
9282feac1f Allow empty params object from text-based WebSocket clients
Closes #1610
2023-01-20 00:54:33 +00:00
Tobie Morgan Hitchcock
0e70e515be Fix base64 authentication token decoding 2023-01-18 00:08:39 +00:00
Tobie Morgan Hitchcock
7682a97a33 Decode urlencoded path parameters automatically
Closes #1396
2023-01-17 14:10:21 +00:00
Tobie Morgan Hitchcock
8f89f8729c Update 3rd party dependencies
Closes #1593
2023-01-17 09:00:30 +00:00
Rushmore Mushambi
af88fcef38
Make cli::sql default to using a WebSocket connection (#1592) 2023-01-11 13:47:21 +00:00
Rushmore Mushambi
953a2008e2
Rename the engines module to engine (#1576) 2023-01-07 08:32:18 +00:00
Rushmore Mushambi
b3d9ce2c68
Ensure CLI exits with non-zero code on errors (#1567) 2022-12-31 08:03:19 +00:00
Rushmore Mushambi
f1b6c44603
Use new client library in CLI import command (#1566) 2022-12-31 08:02:53 +00:00
Rushmore Mushambi
a908d6dd10
Use new client library in CLI export command (#1565) 2022-12-31 08:02:41 +00:00
Rushmore Mushambi
a24bb4f4b8
Allow memory as an address endpoint in CLI sql command (#1563) 2022-12-30 23:53:45 +00:00
Rushmore Mushambi
7c199ff586
Use new client library in CLI sql command (#1561) 2022-12-30 21:27:19 +00:00
Rushmore Mushambi
c2dce39f91
Integrate client library into surrealdb crate (#1514) 2022-12-30 08:23:19 +00:00
Michal Jirman
157f7c8abe
Add CLI option flag to disable banner (#1537) 2022-12-21 11:42:59 +00:00
Tobie Morgan Hitchcock
44c3f32f69 Fix clippy linting warnings 2022-12-20 10:30:40 +00:00
Tobie Morgan Hitchcock
4067efd1e8 Add a user-agent header to CLI HTTP requests 2022-12-20 10:30:06 +00:00
George
a2038f239b
Fix future clippy linting warnings (#1423) 2022-12-18 16:00:36 +00:00
Rinat Shay
ad004999a8
Use temporary HTTP redirect instead of permanent (#1517) 2022-12-09 16:48:54 +00:00
Tobie Morgan Hitchcock
406e277c3b Ensure crate builds with no-default-features 2022-12-07 19:30:29 +00:00
CelebrateVC
f0745386cf
Improve code comments for documentation (#1476) 2022-11-23 09:42:59 +00:00
Igor Morozov
ddaea59d05
Improve error messages for CLI import/export (#1455) 2022-11-23 09:35:29 +00:00
Tobie Morgan Hitchcock
4b14837009 Fix clippy lint warnings 2022-11-23 09:09:24 +00:00
Finn Bear
ff65ef56fc
Don't panic on invalid UTF-8 in web requests (#1422) 2022-10-30 23:28:57 +00:00
Tobie Morgan Hitchcock
c12a1cc1fa Fix typo in code comments 2022-10-30 01:32:27 +00:00
Rushmore Mushambi
12ded8b066
Log version when starting the server (#1358) 2022-10-27 01:58:08 -07:00
Tobie Morgan Hitchcock
f32fb516eb Rearrange code order 2022-10-25 06:40:23 -07:00
Tobie Morgan Hitchcock
a074dc9af5 Add suport for WebSocket RPC binary protocol 2022-10-25 06:40:23 -07:00
Tobie Morgan Hitchcock
ab4c85bf5d Return a single record when requesting a single record with WebSocket 2022-10-25 06:40:23 -07:00