- Fix a bad compilation bug on
@foldand@optionalin the same scope. #86
Thanks to amartyashankha for the fix!
- Add full support for
Decimaldata, including both filtering and output. #91
- Allow expanding vertex fields within
@optionalscopes. #83
This is a massive feature, totaling over 4000 lines of changes and hundreds of hours of
many engineers' time. Special thanks to amartyashankha for taking point on the implementation!
This feature implements a workaround for a limitation of OrientDB, where MATCH treats
optional vertices as terminal and does not allow subsequent traversals from them.
To work around this issue, the compiler rewrites the query into several disjoint queries
whose union produces the exact same results as a single query that allows optional traversals.
See the documentation in the README
for more details.
- Make MATCH use the
BETWEENoperator when possible, to avoid an OrientDB performance issue #70
Thanks to amartyashankha for this contribution!
- Enable expanding vertex fields inside
@fold#64
Thanks to amartyashankha for this contribution!
- Add a workaround for a bug in OrientDB related to
@recursewith type coercions #55 - Exposed the package name and version in the root
__init__.pyfile #57
- Add a new
@filteroperator:has_edge_degree. #52 - Lots of under-the-hood cleanup and improvements.
- Add workaround for OrientDB type inconsistency when filtering lists #42
- BREAKING: Requires OrientDB 2.2.28+, since it depends on two OrientDB bugs being fixed: bug 1 bug 2
- Allow type coercions and filtering within
@foldscopes. - Fix bug where
@filterdirectives could end up ignored if more than two were in the same scope - Optimize type coercions in
@optionaland@recursescopes. - Optimize multiple outputs from the same
@foldscope. - Allow having multiple
@filterdirectives on the same field #33 - Allow using the
name_or_aliasfiltering operation on interface types #37
- Add support for Python 3 #31
- Make it possible to use
@foldtogether with union-typed vertex fields #32
Thanks to ColCarroll for making the compiler support Python 3!
- Fix a minor bug in the GraphQL pretty-printer #30
- Make the
graphql_to_ir()easier to use by making it automatically add a new line to the end of the GraphQL query string. Works around an issue in thegraphql-coredependency library: graphql-python/graphql-core#98 - Robustness improvements for the pretty-printer #27
Thanks to benlongo for their contributions.
- Add GraphQL pretty printer:
python -m graphql_compiler.tool#23 - Raise errors if there are no
@outputdirectives within a@foldscope #18
Thanks to benlongo, ColCarroll, and cw6515 for their contributions.
Initial release.
Thanks to MichaelaShtilmanMinkin for the help in putting the documentation together.