All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- add option to use file-system session store instead of cookies(default) by setting the environmental variable GRAPHIK_PLAYGROUND_SESSION_STORE=file-system
- refactor authorizers into either request or response authorizers
- authorizers are evaluated completely within gRPC middleware
- every byte that passes through the gRPC server may be targetted for authorization
- add custom session store to resolve issues caused by gorilla/sessions
- add flags to require request/response authorizers
- add high availability & horizontal scaleability via Raft consensus protocol
- automatically redirect mutations to raft leader
- add raft cluster secret so only nodes with secret may join
- add client side options for prometheus metrics / validation / logging
- move raft pkg to https://github.com/graphikDB/raft
- move generic pkg to https://github.com/graphikDB/generic
- move raft related methods to RaftService
- remove raft related methods from graphQL API
- move main.go to cmd/graphik/main.go
- remove client side stream retry middleware which was negatively affecting server -> client streaming
- add flag --debug to toggle debug logs
- add server side triggers
- extensive problem statement & solution added to README
- better github pages set up at https://graphikdb.github.io/graphik/
- fine-tune server-side triggers and add
- upgrate trigger to v0.10.0 - 20+ CEL macros added
- refactor every instance of
TypeValidator
toconstraint
- better naming convention
- PutDoc, PutDocs, PutConnection, PutConnections for full create-or-replace functionality
- Add "rewind" feature to stream method to capture historical messages
- switch from "rewind" to min/max timestamps on stream method to capture historical messages within a time range(optional)
- server raft on same port as metrics server - 7821 by default
- add k8s manifest
- mutual tls options client/server side
- switch to arrow syntax for triggers