Tobie Morgan Hitchcock
cacdf6dd49
Add SQL function for creating an array
2017-12-12 00:54:18 +00:00
Tobie Morgan Hitchcock
8076afd414
If adding to an empty value, set it as an array
...
If we have an empty field ‘test’ and we specify the sql `SET test += “test”` then we’ll presume it’s going to be an array if it isn’t a number or a decimal.
2017-12-11 17:52:02 +00:00
Tobie Morgan Hitchcock
8849c7c30a
Enable specifying a regex using a function
2017-12-11 17:49:58 +00:00
Tobie Morgan Hitchcock
edcd2d431c
Only error if requesting a specific array index
2017-12-06 20:19:28 +00:00
Tobie Morgan Hitchcock
6e8fdaa2db
Ensure nil fields are removed when SCHEMAFULL
2017-12-05 11:09:04 +00:00
Tobie Morgan Hitchcock
14d3539dbf
Add SQL functions for parsing urls
2017-12-04 10:06:01 +00:00
Tobie Morgan Hitchcock
82df9dca86
Fix typo in comment
2017-12-03 00:44:07 +00:00
Tobie Morgan Hitchcock
001d7f866c
Prevent datarace, by not using global variable when decoding
...
Don’t use the global variable ‘skip’ to decode into, as this causes a data race, when decoding keys from inside multiple different goroutines. Instead we now create a new string variable for every decode function, which will be created on the heap and ignored when the function returns.
2017-12-01 00:34:44 +00:00
Tobie Morgan Hitchcock
63f2791494
Remove the need for the ‘unsafe’ package when encoding keys
2017-11-30 00:59:10 +00:00
Tobie Morgan Hitchcock
eb7a9c2744
Add ability to retrieve different values
...
It is now possible to specify a function to manipulate each values stored in a data object, when retrieving that value. This enables storing compressed obejcts as strings, which are expanded when accessed. This is used to store *sql.Thing values, which when requested can access embedded fields by fetching and returning the full record when the *sql.Thing is requested.
2017-11-28 00:39:00 +00:00
Tobie Morgan Hitchcock
287951a37f
Ensure we trim all data path parts before fetching values
2017-11-27 18:30:20 +00:00
Tobie Morgan Hitchcock
93d154a099
Add sql functions for generating GUIDs
2017-11-27 11:35:26 +00:00
Tobie Morgan Hitchcock
7fbc9feff9
Simplify uuid util package
2017-11-27 11:34:59 +00:00
Tobie Morgan Hitchcock
0762ee25b2
Use XIDs instead of UUIDs for record IDs
2017-11-26 16:54:49 +00:00
Tobie Morgan Hitchcock
527f85f8e6
Implement both JsonMarshaler and JsonUnmarshaler
...
If a type only defines one-half of the symmetry (e.g. it implements MarshalJSON() but not UnmarshalJSON() ), then that type doesn't satisfy the codec encoding/decoding check and instead codec will not encode or decode the item using the special interface methods.
2017-11-24 10:55:13 +00:00
Tobie Morgan Hitchcock
43d841dacc
Full update of the DB package
2017-11-16 20:53:39 +00:00
Tobie Morgan Hitchcock
08cf03f98b
Add ‘fncs’ package for all sql function commands
2017-11-16 20:31:20 +00:00
Tobie Morgan Hitchcock
af00a45721
Add initial ‘geof’ package for geospatial functions
2017-11-16 20:30:56 +00:00
Tobie Morgan Hitchcock
096984ad05
Improve ‘conv’ package for converting values to specific data types
2017-11-16 20:30:27 +00:00
Tobie Morgan Hitchcock
e300e9c423
Improve efficiency of database key encoding and decoding
...
Make use of the github.com/abcum/bump package to efficiently encode and decode from and to byte slices, whilst at the same time using encoder and decoder pools, instead of creating a new buffer for each encoding / decoding process.
2017-11-16 20:18:42 +00:00
Tobie Morgan Hitchcock
61015c8f7a
Add database key for FT foreign tables
2017-11-16 20:16:52 +00:00
Tobie Morgan Hitchcock
8ffdaa6d77
Add database key for EV table events
2017-11-16 20:16:52 +00:00
Tobie Morgan Hitchcock
21cb197d5a
Make sure LV database key specifies a table
2017-11-16 20:16:52 +00:00
Tobie Morgan Hitchcock
6a1ec1b2bb
Remove unused VW database key
2017-11-16 20:16:52 +00:00
Tobie Morgan Hitchcock
81497e941d
Add Copy() method to all keys for efficiently duplicating a key
2017-11-16 20:16:51 +00:00
Tobie Morgan Hitchcock
b957202ee5
Remove unused CK database key
2017-11-16 20:16:24 +00:00
Tobie Morgan Hitchcock
0ce8e78577
Make use of direct byte encoding / decoding
...
With the lates github.com/abcum/cork package, it is now possible to encode and decode a cork data stream without creating a new buffer each time. Instead the github.com/abcum/bump pacakge efficiently buffers the byte slice without any unnecessary allocations.
2017-11-16 19:54:55 +00:00
Tobie Morgan Hitchcock
44591abfe5
Add ‘hook’ package for retryable functions
...
The hook package enables static and backoff retryable functions. This package can be used for calling remote webhooks concurrently in separate goroutines.
2017-11-16 19:54:55 +00:00
Tobie Morgan Hitchcock
12c2ada091
Improve error messages on REST API queries
2017-11-16 19:54:55 +00:00
Tobie Morgan Hitchcock
121498e95e
Add ‘math’ package for all mathematical functions
2017-11-16 19:54:55 +00:00
Tobie Morgan Hitchcock
34a4132403
Add ‘ints’ package for returning bounded number values from arguments
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
62284f0300
Add text package for specific functions on text strings
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
c2135b1494
Add rand package for generation of random numbers
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
e9bde01cb1
Put index diffing code into a separate package
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
e8f17b1602
Add ‘comp’ package for comparing ordering of data types
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
428ad4312c
Add an Append function which appends to a slice
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
4640839231
Use switch statements instead of if statements
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
d66e3d5866
When resetting a doc, reset it to an empty map
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
3f68f1318c
Copy should return a new document, not interface{}
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
33391e0a28
Improve and fix diff package
2017-11-16 19:54:54 +00:00
Tobie Morgan Hitchcock
8ed69a8774
Add library for generating fake data
2017-06-09 18:59:03 +01:00
Tobie Morgan Hitchcock
f7318dbbe8
Fix godoc comment
2017-06-09 18:57:16 +01:00
Tobie Morgan Hitchcock
54dd56cbd5
Use cork encoder/decoder pools
2017-05-05 16:22:11 +01:00
Tobie Morgan Hitchcock
6bfb30a3b4
Add package for formatting floats with certain decimal precision
2017-04-28 17:06:19 +01:00
Tobie Morgan Hitchcock
6f9cac13f3
No need for a buffer to decode CORK objects
2017-04-28 17:04:47 +01:00
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