Releases: zefhub/zef
Version 0.16.0
New features:
-
VALUE_NODE
s as low level blobs. Attribute entities now reference values and
reuse stored blobs. -
Val(...)
syntax in a GraphDelta will create a value node. -
Can load and save graphs locally.
Fixes:
-
Graphs record which ET/RT/ENs they are using again.
-
Issues with value nodes in graph caches.
Improvements:
-
SimpleGQL:
- Custom routes handled by hooks can be given as Zef.Route lines in the
graphql file.
- Custom routes handled by hooks can be given as Zef.Route lines in the
-
Refactor GraphQL module from
gql
tographql
. -
Improvements to many FX.
-
Improvements to many ZefOps.
-
More flexible graph update process, allowing concurrent processing.
-
Compact view for
graphviz
as default. -
Many improvements to FlatGraphs
Breaking changes:
- We have removed Windows support for this release. We are aiming to reintroduce
it for the next release.
Small fix in imports due to renamings of VRT
Fixes:
is_a
was using old imports that are no longer exposed from C++.
Added the following to zef.core.internals:
- is_vrt_a_enum,
- is_vrt_a_quantity_float
- is_vrt_a_quantity_int
Version 0.15.8
New features:
- Rich output in
zef.ui
, viashow
,to_table
andto_card
. splice
,alias
zefops.- Filegraphs and credentials are stored together in directory for ZefHub URL.
This may require a new login with your credentials. - Symbolic expressions.
Breaking changes:
ZEFHUB_AUTH_KEY
is repurposed for API keys for service jobs. API keys can be
created for your account atconsole.zefhub.io
.
Fixes:
- SimpleGQL graphs are kept alive by default.
- Fixes in ordering of graph delta commands.
- Zefops
ZefGenerator
s internally now for reliable iteration.
Improvements:
- FlatGraphs:
- FlatGraphs can absorbed other FlatGraphs from FlatRefs
- SimpleGQL:
- Faster queries/updates with explicit IDs.
- Queries work in consistent graph slice.
debug-level
for extra info
- Core:
- GraphSlices now hold a reference to their corresponding Graph.
Version 0.15.7
Breaking changes:
- SimpleGQL: no longer takes the schema_file and graph as regular arguments, but
as--schema-file
and--data-tag
instead. - Rename
ZEFDB_CONFIG_PATH
toZEFDB_SESSION_PATH
schema
zefop renamed toblueprint
New features:
-
SimpleGQL:
- all main module arguments can be passed as environment variables,
e.g. instead of--schema-file
you can useSIMPLEGQL_SCHEMA_FILE
.
Commandline args take priority. --init-hook
option to run a hook on every startup@dynamic(hook: "...")
option for field resolvers
- all main module arguments can be passed as environment variables,
-
Tokens are cached in the session directory
-
Dictionary syntax for graph wishes:
{ET.Something: {RT.A: 3, RT.B: 4}}
-
set_field
operation for atomically updating "fields"
Fixes:
login
auth flow was broken for the new default of statically built libzef.
Version 0.15.6
New Features
-
Zef repo has been open-sourced under the Apache License 2.0.
-
New traversal syntax...
- Instead of
z >> RT.Something
usez | Out[RT.Something]
- Instead of
z >> L[RT.Something]
usez | Outs[RT.Something]
- Instead of
z < RT.Something
usez | in_rel[RT.Something]
- Instead of
-
The traversal operators now can take another argument to filter on the target/source, e.g.
z | Outs[RT.Something][ET.SpecificEntity]
. -
PyPI packages. Zef can now be installed via
pip install zef
. -
General movement from predicates to types:
is_a
compares its argument to a type.- Use
Is[<predicate>]
to create a type which is the set of all items where the predicate is satisfied.
-
pattern matching with the
match
operator. match_apply has been retired, if a constant value is to be returned this is easily done with a lambda. -
the
Pattern
function: returns a ValueType and allows very concise pattern matching on dictionaries and lists. -
Preliminary Windows support.
New ZefOps
-
schema
to show delegate entities/relations. Note: the output of this is not stable and likely to change. -
events
on aZefRef
replacesinstantiation_tx
,termination_tx
, etc... -
events
on aTX
replacesinstantiated
,terminated
, etc... -
absorbed
andwithout_absorbed
manipulate parameters absorbed into ZefOps.
Bug Fixes
- Many fixes!
Deprecations
-
New traversal syntax with ZefOps.
- The operators
>>
,<<
,>
,<
are deprecated along with theL[...]
andO[...]
syntax. - Instead use the operators like the following examples for single values:
z | Out[...]
returns a ZefRef to the target of the outgoing relationz | In[...]
z | out_rel[...]
the ZefRef to the relation itself is returnedz | in_rel[...]
- Multiple relations are obtained with a plural form of these operators:
z | Outs[...]
for multary relations (a list of ZefRef is returned)z | Ins[...]
z | out_rels[...]
z | in_rels[...]
- The operators
-
match_apply
is retired formatch
.