Skip to content

Releases: libgraviton/rql-parser

v3.0.1

15 Jul 06:42
8790c3a
Compare
Choose a tag to compare

Bugfixes

  • Make sure LimitNode always has an integer offset 15697b9

v3.0.0

20 Jun 12:56
Compare
Choose a tag to compare

This repository has been moved to the libgraviton organization - as it was initially created for https://github.com/libgraviton/graviton. Its license has been changed to MIT.

We are not quite aware how much usage this package has. It is possible that this packaged will be abandoned and merged with https://github.com/libgraviton/php-rql-parser in order to fulfill our needs and to ease maintenance.

If you don't want this, please create an issue so we are aware that outside users are actually using this. Please tell why you don't want the merge.

Features in this release

  • Minimum PHP requirement raised to 7.2.*
  • Implement toRql() on all AbstractNode objects. This allows to go backwards and create a fully valid RQL query string from a Query instance.
  • Allow for timezone aware DateTime queries - Timezones passed in Queries will now be correctly reflected in the resulting DateTime instance.

Breaking changes

  • The namespace has been changed. It now lives in Graviton\RqlParser. If you used the package before, you can just replace Xiag\Rql\Parser with Graviton\RqlParser
  • All custom AbstractNode implementations need to implement the new toRql() function - the RQL string that equals to the Node generated.

v2.0.0

03 Jul 09:45
Compare
Choose a tag to compare

The main goal of this release is to make the parser more flexible and more extendable.
The new parser is not compatible with the 1.x versions. So please make sure you don't use * in your composer.json.

Breaking changes

  • Xiag\Rql\Parser\Node\Query\LogicOperator namespace has been renamed to Xiag\Rql\Parser\Node\Query\LogicalOperator
  • Xiag\Rql\Parser\TokenParser namespace has been renamed to Xiag\Rql\Parser\NodeParser
  • Xiag\Rql\Parser\Parser::createDefault() has been removed in favor of the default constructor new Xiag\Rql\Parser\Parser()
  • Xiag\Rql\Parser\Parser\DataType\DateTime has been removed in favor of \DateTime
  • true, false, null type guessing has been removed. Use the values functions instead
  • Date type (without time) has been removed. Use dateime YYYY-MM-DD\Thh:mm:ss\Z instead (here's an example how to add it)
  • The minimal PHP version has been increased to 5.5

New features

  • Lexer and Parser have become more flexible. Look at the examples
  • glob parsing has been completely rewritten (#1, #7)
  • New Advanced usage examples

Bugfixes

  • Fixed the bug with glob in eq operator (#1)