Commit graph

179 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
862df0c9e3 Improve diff package efficiency 2017-04-28 17:03:47 +01:00
Tobie Morgan Hitchcock
1e5c90b3d7 Move lua2go conversion code to separate package 2017-04-28 17:03:35 +01:00
Tobie Morgan Hitchcock
2d5151c8ba Enable SQL AST string formatting 2017-03-02 10:47:10 +00:00
Tobie Morgan Hitchcock
5fffc4bb73 Diff records with new diff package 2017-02-28 10:46:06 +00:00
Tobie Morgan Hitchcock
e97cac18e8 Don’t remove meta information from records 2017-02-28 10:45:40 +00:00
Tobie Morgan Hitchcock
ca6d0d86fd Fix bug when deleting range queries
When performing a range query on an array when deleting, the items which were supposed to be removed, ended up being the ones which were kept.

Not the ramining array items are kept instead when deleting.
2017-02-23 15:43:17 +00:00
Tobie Morgan Hitchcock
a49bbd74c7 Enable REST output as JSON and JSONAPI 2017-02-20 10:38:20 +00:00
Tobie Morgan Hitchcock
ff0acf5041 Add inflection package 2017-02-20 10:26:26 +00:00
Tobie Morgan Hitchcock
969179660b Enable data docs to self encode to JSON 2017-02-20 09:46:26 +00:00
Tobie Morgan Hitchcock
83a64c6c29 Enforce default RETURN value in sql parser 2017-02-20 01:44:12 +00:00
Tobie Morgan Hitchcock
f56196a150 Update keys package 2017-02-09 20:35:19 +00:00
Tobie Morgan Hitchcock
1b83dace69 Add JSON Patch go package 2017-02-07 17:23:12 +00:00
Tobie Morgan Hitchcock
955e736a4d Enable expressive array item selection using [:] 2017-02-07 17:22:57 +00:00
Tobie Morgan Hitchcock
664ab1054c Add Diff method for comparing data docs 2017-02-04 11:23:30 +00:00
Tobie Morgan Hitchcock
e6df3dbeb9 Add Each method
Add Each method for iterating through all of the values in a document. This is in contrast to Walk which will iterate over a given path regardless of whether it exists or not.
2017-02-04 11:22:53 +00:00
Tobie Morgan Hitchcock
865a0b16a3 Improve path parsing enabling [] array characters 2017-02-04 11:13:11 +00:00
Tobie Morgan Hitchcock
db2fb6159c Specify struct fields on struct initialisation 2017-02-04 11:00:13 +00:00
Tobie Morgan Hitchcock
15cb9f7b96 Remove old diffing package 2017-02-03 19:01:57 +00:00
Tobie Morgan Hitchcock
ac95aa1bcd Remove javascript language runtime 2017-02-02 00:07:45 +00:00
Tobie Morgan Hitchcock
68c22bc25c Add subqueries, subexpressions, and paths to SQL 2016-11-04 09:58:11 +00:00
Tobie Morgan Hitchcock
28c70a792a Fix typo 2016-11-04 09:42:12 +00:00
Tobie Morgan Hitchcock
45be69637e Add ‘record’ as a field type 2016-11-04 09:42:00 +00:00
Tobie Morgan Hitchcock
bb6387c69b Add invisible meta object on items 2016-10-29 12:46:22 +01:00
Tobie Morgan Hitchcock
8eaa4e6eda User lowercase json keys for before+after 2016-10-29 12:45:02 +01:00
Tobie Morgan Hitchcock
c08e9d69c9 Use actual @things not strings for item ids 2016-10-29 12:44:49 +01:00
Tobie Morgan Hitchcock
d37862e385 Add conditional checking for @things 2016-10-29 12:44:00 +01:00
Tobie Morgan Hitchcock
174cc8bcad Add SQL LET statements with bound parameters 2016-10-29 12:28:20 +01:00
Tobie Morgan Hitchcock
0af761d2db Improve embedded field checking and defaults 2016-10-24 17:03:28 +01:00
Tobie Morgan Hitchcock
6bf826c466 Enable path walking with a callback function 2016-10-24 14:16:53 +01:00
Tobie Morgan Hitchcock
fd540a5237 Enable checking for existing and non-null items 2016-10-24 14:16:42 +01:00
Tobie Morgan Hitchcock
99d9657d80 Enable getting array items directly 2016-10-24 14:16:14 +01:00
Tobie Morgan Hitchcock
4c8d5213dc Add double FIELD TYPE and improve type checking 2016-10-20 14:14:10 +01:00
Tobie Morgan Hitchcock
8991586a0b Add basic JSON DPM package (ROUGH) 2016-10-14 23:02:01 +01:00
Tobie Morgan Hitchcock
fd0ce5ea71 Improve item package 2016-10-14 23:01:44 +01:00
Tobie Morgan Hitchcock
27b975fb71 Remove custom code from rules checker 2016-10-14 22:57:26 +01:00
Tobie Morgan Hitchcock
91b3b83554 Add key for SCL SCOPE queries 2016-10-14 21:26:49 +01:00
Tobie Morgan Hitchcock
d578715d01 Add key for SQL LIVE queries 2016-10-14 21:26:39 +01:00
Tobie Morgan Hitchcock
8791fb4cfd Improve code comments 2016-10-14 21:26:26 +01:00
Tobie Morgan Hitchcock
58b9cf3478 Use go fmt simplify 2016-10-14 07:52:33 +01:00
Tobie Morgan Hitchcock
f90554c0b5 Ensure methods are not exported 2016-10-14 07:52:00 +01:00
Tobie Morgan Hitchcock
cae06f2b4b Remove GOB serialization code 2016-10-14 07:14:58 +01:00
Tobie Morgan Hitchcock
40a52dfbf1 Enable sorting of negative numbers and floats 2016-10-14 07:14:34 +01:00
Tobie Morgan Hitchcock
fdb639e517 Simplify variables 2016-10-14 07:14:05 +01:00
Tobie Morgan Hitchcock
dd79f3c440 Remove SQL RECORD statement 2016-10-07 14:21:01 +01:00
Tobie Morgan Hitchcock
c06f111580 Remove unused codec interface file 2016-10-02 11:36:14 +01:00
Tobie Morgan Hitchcock
25c86a49da Use cork serialization for data storage 2016-10-02 00:17:19 +01:00
Tobie Morgan Hitchcock
1fd0ddafe4 Fix godoc comments 2016-09-28 12:33:07 +01:00
Tobie Morgan Hitchcock
701125b879 No need for ability to export as JSON 2016-09-28 12:32:41 +01:00
Tobie Morgan Hitchcock
66f09db9f5 Add SQL VIEWs 2016-09-21 00:36:37 +01:00
Tobie Morgan Hitchcock
94c0f32ae4 Add specific GOB encoding methods 2016-09-19 14:44:56 +01:00
Tobie Morgan Hitchcock
93da1d16f3 No need for canonical encoding for storage 2016-09-19 12:03:03 +01:00
Tobie Morgan Hitchcock
aa4f788566 Use generic pack.Encode + pack.Decode methods 2016-09-19 12:02:42 +01:00
Tobie Morgan Hitchcock
486b666132 Simplify encoding of basic structs 2016-09-16 09:49:02 +01:00
Tobie Morgan Hitchcock
ed474b8415 Simplify item ids 2016-09-14 22:28:00 +01:00
Tobie Morgan Hitchcock
dc3793d03d Use BINC encoding instead of MsgPACK for storage 2016-09-14 22:26:41 +01:00
Tobie Morgan Hitchcock
218ce8ad82 Simplify pack data encode/decode package 2016-09-14 22:25:18 +01:00
Tobie Morgan Hitchcock
fbc94f90e5 Pass old and new item data to rules checking code 2016-09-14 22:24:22 +01:00
Tobie Morgan Hitchcock
19d7c2a14e Don’t embed document data 2016-09-14 21:46:23 +01:00
Tobie Morgan Hitchcock
ed6a9555a1 Return an error when data is corrupt 2016-09-14 17:02:48 +01:00
Tobie Morgan Hitchcock
dfa9182711 Use deep copy instead of gob encode/decode 2016-09-12 16:47:22 +01:00
Tobie Morgan Hitchcock
c3ecaed152 Add package for deep copying 2016-09-12 16:47:07 +01:00
Tobie Morgan Hitchcock
6f9372cb66 Ignore indexes which don’t change
Diffs old index values with new index values, and removes those indexes which haven’t changed - preventing deleting and reinserting the same index, improving performance.
2016-09-10 01:33:11 +01:00
Tobie Morgan Hitchcock
2f12feeaaa Improve array, and interface encoding / decoding 2016-09-10 00:24:46 +01:00
Tobie Morgan Hitchcock
529ddbbec2 Encode all numbers as float64
All numbers in encoded keys are now encoded into float64, ensuring that decimal numbers are sorted alongside integers.

The maximum number able to be stored as a float64, without losing precision, is now (1<<53 - 1) - the same maximum number possible in javascript.
2016-09-10 00:21:58 +01:00
Tobie Morgan Hitchcock
0f420d2cae Add ability to get object keys and object values 2016-09-09 18:55:25 +01:00
Tobie Morgan Hitchcock
065b64c429 Update item manipulation code 2016-09-06 14:35:38 +01:00
Tobie Morgan Hitchcock
d76038652b Add key type for rules 2016-09-06 13:27:59 +01:00
Tobie Morgan Hitchcock
33ef395d5b Remove unused key type 2016-09-06 13:27:15 +01:00
Tobie Morgan Hitchcock
a460ee4a06 Remove old diffing utility packages 2016-09-06 13:11:13 +01:00
Tobie Morgan Hitchcock
b8d55c6a74 Add utility package for data encoding and decoding 2016-09-06 12:41:03 +01:00
Tobie Morgan Hitchcock
b5a15a85ae Improve json transformation utility package 2016-09-06 12:39:33 +01:00
Tobie Morgan Hitchcock
8758ce19ff Add test for keys.CK 2016-08-28 09:41:21 +01:00
Tobie Morgan Hitchcock
e8bb3f0654 Update tests 2016-08-28 09:29:31 +01:00
Tobie Morgan Hitchcock
814fee772f Don't decrypt if there is definitely no nonce 2016-08-28 09:29:14 +01:00
Tobie Morgan Hitchcock
629bd7dd92 No need for errors, as cipher block will always be valid 2016-08-28 09:28:53 +01:00
Tobie Morgan Hitchcock
25d9927be2 Update code comments 2016-08-28 09:28:33 +01:00
Tobie Morgan Hitchcock
6a97947084 Update document field checking error messages 2016-08-25 15:03:56 +01:00
Tobie Morgan Hitchcock
f93a5afb6e Add first working DIFF implementation 2016-07-21 22:50:53 +01:00
Tobie Morgan Hitchcock
5c094a011d Add blueprint for defined RULES logic 2016-07-21 22:50:16 +01:00
Tobie Morgan Hitchcock
4af24a5ca0 Add functionality to database defined fields 2016-07-21 22:48:32 +01:00
Tobie Morgan Hitchcock
98c61b0d2c Don’t store ‘trail’ information in store 2016-07-18 23:02:37 +01:00
Tobie Morgan Hitchcock
e23473cfa9 Ensure correct encryption key is provided if using populated data store 2016-07-18 23:01:28 +01:00
Tobie Morgan Hitchcock
3c8b68b503 Don't encrypt/decrypt blank strings 2016-07-18 14:24:48 +01:00
Tobie Morgan Hitchcock
8a0849d6da Enable multiple database backends 2016-07-16 14:43:53 +01:00
Tobie Morgan Hitchcock
4f8f92a6f3 Add package for manipulating database item 2016-07-04 11:36:18 +01:00
Tobie Morgan Hitchcock
a91ca78606 Remove failing tests temporarily 2016-07-04 11:36:07 +01:00
Tobie Morgan Hitchcock
6afa0ede40 Rename Trail to Patch 2016-07-04 10:02:51 +01:00
Tobie Morgan Hitchcock
d55b272bbe Add certificate extractor tests 2016-07-04 09:08:18 +01:00
Tobie Morgan Hitchcock
96bf16b07a Add package for decoding PEM certificates 2016-07-03 22:45:15 +01:00
Tobie Morgan Hitchcock
f0fde5ef16 Add keys 2016-06-16 13:33:28 +01:00
Tobie Morgan Hitchcock
be182d6c9a Change Search to Get 2016-06-16 13:32:54 +01:00
Tobie Morgan Hitchcock
485475d7f3 Ensure EndOfTime is always in the future 2016-05-31 13:35:08 +01:00
Tobie Morgan Hitchcock
f795c97c22 Add variables for begging and end of time 2016-05-31 11:24:10 +01:00
Tobie Morgan Hitchcock
bcb75db2d1 Don't attempt encoding/decoding on empty []byte 2016-05-30 10:58:51 +01:00
Tobie Morgan Hitchcock
ece43dae87 Add additional keys 2016-05-27 16:31:39 +01:00
Tobie Morgan Hitchcock
6d872fbd5d Change key struct fields to interface{}
Most key struct fields are changed to interface{} so that they can be encoded with whatever data is underlying.
2016-05-27 16:29:50 +01:00
Tobie Morgan Hitchcock
c5f7c81ad1 Add key prefix testing 2016-05-27 16:27:02 +01:00
Tobie Morgan Hitchcock
e69ae69e4f Add ability to ignore struct fields when encoding keys 2016-05-27 16:25:46 +01:00
Tobie Morgan Hitchcock
47adafe3c3 Enable custom type encoding 2016-05-26 00:25:18 +01:00
Tobie Morgan Hitchcock
16e1477f07 Remove unused packages 2016-05-26 00:25:09 +01:00