Here is the diff since v0.7.7
https://github.com/dgraph-io/dgraph/compare/release/v0.7.7...release/v0.8?expand=1
Features
Server
- Suppport
has
function. - Support for variables in mutation blocks.
- Support for k shortest paths.
- [*] @michaelcompton @ashwin95r Could you please add an example in the docs?
- Support deletion of predicate.
- Support for
uid_in
function.
- [*] @michaelcompton please add docs.
- Add a directive to remove reflexive edges from results.
- [*] @michaelcompton docs please.
- Allow to use Dgraph as a library.
- Ability to monitor server metrics.
- [*] @janardhan we need docs for how to use Promotheus and Grafana.
Client
- Go client now supports an
Unmarshal
function which allows unmarshalling the protocol buffer response to a custom struct.- [*] @michaelcompton please add a link to docs or an example for this.
- Add support for storing and retrieving raw bytes.
- [*] @michaelcompton Could we add this to other examples too if not already.
- Cleaner and more intuitive API for doing mutations.
Improvements
- Move away from RocksDB and get rid of CGO. Start using badger.
- Assign uids sequentially.
- Allow retrieving other children with
@groupby
. - Allow aliases for math expressions.
- Support filtering using multiple tokens with
eq
.- [*] @michaelcompton could you please check if we can docs for this?
- Better language lists semantics. Issue #1010
- Add a
uid
function which can be used for filtering uids at any level.
- [*] @michaelcompton please add this in functions section with an example of how to use it at levels other than root.
- Allow adding
@count
indexes which allow for faster count comparison queries at the root. - Optimisations in how we store Posting List data structure. Store uids separately.
- Allow specifying a max depth argument for the shortest path.
- Support for [month, day, hour] indexes for datetime datatype.
- [*] @michaelcompton docs, please.
- Get rid of
lhmap
and add an LRU Cache. We don’t do Stop the World anymore.
Changes (from v0.7.7)
-
date
type is no longer supported as a schema type in Dgraph. You should usedateTime
instead. - Change of syntax for querying by id.
# Before
{
me(id: [0x1, 0x2]) {
...
}
}
# Now
{
me(func: uid(0x1, 0x2)) {
...
}
}
- Dgraph doesn’t fingerprint
xids
anymore. They are now treated similarly to other edges. So now if you had anxid
and you wanted to query by it you would use.
# You need to have an index on xid for calling `eq` function.
{
me(func: eq(xid, "alice")) {
....
}
}
-
/admin/backup
is now/admin/export
. It outputs blank nodes which can now be used to load data into a fresh instance. - There is a separate port for
http
(default 8080) andgrpc
(default 9080) now.
Bugfixes
- Remove concurrent filtering data race. Issue #1020
- Fix panic issues related to tracing. Wait for all goroutines to finish before retuning error.
- Fix crash caused by nil list. #1035
TODO(pawan) - Change links for docs to point to v0.8
and add all bugfixes.