Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Doctrine Query Document Laravel Package

dbstudios/doctrine-query-document

Build Doctrine DQL filters from a simple array “query document”. Apply conditions to an existing QueryBuilder (from/select required), auto-bind positional parameters, traverse relations via dot notation, and query JSON fields (MySQL 5.7+).

View on GitHub
Deep Wiki
Context7
2.1.0

What's Changed

  • Added support for specifying a DQL function to use to resolve inheritance discriminators during field resolution.

Full Changelog: https://github.com/LartTyler/doctrine-query-document/compare/2.0.3...2.1.0

2.0.3

What's Changed

  • Added support for doctrine/orm v3

Full Changelog: https://github.com/LartTyler/doctrine-query-document/compare/2.0.2...2.0.3

2.0.2

What's Changed

  • Fixed a bug wherein attempting to apply an empty query document would result in a WHERE clause with no body being inserted into the query builder.

Full Changelog: https://github.com/LartTyler/doctrine-query-document/compare/2.0.1...2.0.2

2.0.1

What's Changed

  • Fixed a bug wherein nodes in the projection set with children were not being considered explicitly allowed when queried directly (e.g. foo.bar is explicitly allowed by the projection, but a query for foo would be marked as implicitly allowed).

Full Changelog: https://github.com/LartTyler/doctrine-query-document/compare/2.0.0...2.0.1

1.8.1

What's Changed

  • Fixed nested projection queries (e.g. a.b.c) not evaluating to QueryResult::allow() for empty projections.

Full Changelog: https://github.com/LartTyler/doctrine-query-document/compare/1.8.0...1.8.1

1.8.0

What's Changed

  • Added PrefixedProjection class, which wraps a ProjectionInterface and prefixes any queries with a set path string.

Full Changelog: https://github.com/LartTyler/doctrine-query-document/compare/1.7.0...1.8.0

1.6.0

Changelog

  • Replaced deprecated usage of Doctrine\DBAL\Types\Type with Doctrine\DBAL\Types\Types.
1.5.1

Changelog

  • Fixed $eq and $neq operators not allowing null values to pass validation.
1.5.0

Changelog

  • PHP version requirement updated to allow PHP 8 (in addition to PHP 7.x).
1.4.1

Changelog

  • Fixed a bug wherein using the $or operator would cause all items in all sub-documents to be joined by an OR instead of AND.
1.4.0

Changelog

  • Added $contains and $ncontains operators, which can be used to test if a value is in a collection valued association or an embedded JSON document.
1.3.0

Changelog

  • The $size operator now works when targeting JSON objects (via the JSON_LENGTH function). This behavior is supported for fields with the json type, as well as fields embedded in a JSON field.
1.2.0

Changelog

  • Added the $size operator. Please refer to the docs for more information.
1.1.0

Changelog

  • The operators $gt, $gte, $lt, and $lte now allow strings as their value.
1.0.0

Changelog

  • Initial production-ready release.
  • Added support for applying projections to result sets. Please see the README for documentation.
0.2.4

Changelog

  • Fixed a bug where fields mapped using reverse mapping (e.g. "other.field" > "otherField") would resolve with extra path nodes appended.
0.2.3

Changelog

  • Field mapping in the form of "field.path.key" can now be mapped to concrete fields (e.g. "related.count" > "relatedCount").

Known Bugs

  • Reverse mapping adds extra path nodes to the end of the resolved field name. Use v0.2.4 instead.
0.2.2

Changelog

  • Fixed a bug wherein queries that referenced JSON fields directly (i.e. did not search child nodes) would not resolve properly.
  • Fixed a bug wherein queries that referenced associations directly would not resolve properly and would throw an exception.
0.2.1

Changelog

  • Fixed a bug wherein querying fields on embedded objects would throw an exception.
0.2.0

Changelog

  • Added field mapping to resolver.
0.1.12

Changelog

  • Added a suggests entry to Composer for syslogic/doctrine-json-functions.
0.1.11

Changelog

  • Fixed a bug wherein the $exists operator could not be negated.
0.1.10

Changelog

  • Updated unknown operator exception to describe which operator was not recognized, instead of the field key that the operator was found at.
  • Added $exists operator.
0.1.9

Changelog

  • Fixed a bug wherein using the $like operator would cause the server to respond with an error message.
0.1.8

Changelog

  • Added $between operator.
0.1.7

Changelog

  • Added support for compound filter documents.
  • Added $and operator.
  • Added $eq operator.
0.1.6

Changelog

  • Fixed a bug wherein QueryDocument was not implementing the new isApplied() method.
0.1.5

Warning

This release is broken, as the built-in QueryDocument object does not implement the isApplied() method that was added in this release. Please skip to 0.1.6 instead of using this release.

Changelog

  • Fixed a bug wherein nested calls to QueryDocumentInterface::process() would fail to process correctly.
  • Added QueryDocumentInterface::isApplied().
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor