|
1 | 1 | # Changelog |
2 | 2 |
|
| 3 | +## [4.0.0](https://github.com/seb-jean/postgresql-for-doctrine/compare/v3.0.2...v4.0.0) (2025-04-23) |
| 4 | + |
| 5 | + |
| 6 | +### ⚠ BREAKING CHANGES |
| 7 | + |
| 8 | +* refactor exceptions handling for `JsonbArray` in the style used for the network types ([#311](https://github.com/seb-jean/postgresql-for-doctrine/issues/311)) |
| 9 | +* preserve the type of booleans, floats, integers & scientific notations when transforming back and forth between PostgreSQL and PHP ([#304](https://github.com/seb-jean/postgresql-for-doctrine/issues/304)) |
| 10 | + |
| 11 | +### Features |
| 12 | + |
| 13 | +* Add (limited) support for `json_exists`, `json_query`, `json_scalar`, `json_serialize` and `json_value` ([#277](https://github.com/seb-jean/postgresql-for-doctrine/issues/277)) ([4a26400](https://github.com/seb-jean/postgresql-for-doctrine/commit/4a264003aa6ce58c65335b708dc1036d02217f08)) |
| 14 | +* Add `NULL` value support for `array_append()`, `array_replace()`, `array_prepend()`, `array_remove()` and improve test scenarios for `NULL` ([#322](https://github.com/seb-jean/postgresql-for-doctrine/issues/322)) ([396856f](https://github.com/seb-jean/postgresql-for-doctrine/commit/396856f81c40b2eefed801995c1fced455e8a8dd)) |
| 15 | +* Add limited support for `json_build_object` and `jsonb_build_object` ([#268](https://github.com/seb-jean/postgresql-for-doctrine/issues/268)) ([2605f5a](https://github.com/seb-jean/postgresql-for-doctrine/commit/2605f5accfedb23b5aa31afe5349ada77cd50258)) |
| 16 | +* Add multiple arguments support for `ARRAY` ([#279](https://github.com/seb-jean/postgresql-for-doctrine/issues/279)) ([7f2b05d](https://github.com/seb-jean/postgresql-for-doctrine/commit/7f2b05d21a665d44d5fac07ac0f03f1ff99647bf)) |
| 17 | +* Add support for `any_value()` ([#323](https://github.com/seb-jean/postgresql-for-doctrine/issues/323)) ([19ee3db](https://github.com/seb-jean/postgresql-for-doctrine/commit/19ee3dbd4497195bbcd3b4df7608232de0f32b8a)) |
| 18 | +* Add support for `array_shuffle()` ([#324](https://github.com/seb-jean/postgresql-for-doctrine/issues/324)) ([90a9b9e](https://github.com/seb-jean/postgresql-for-doctrine/commit/90a9b9e84f8ec9a0dc9fd81b2d80ae48b59f2e57)) |
| 19 | +* Add support for `DATE_ADD()`, `DATE_SUBTRACT()` and `DATE_BIN()` ([#345](https://github.com/seb-jean/postgresql-for-doctrine/issues/345)) ([c3cb08d](https://github.com/seb-jean/postgresql-for-doctrine/commit/c3cb08d6af36057a0ce88fd184f91c243bcab5da)) |
| 20 | +* Add support for `DISTINCT` and `ORDER BY` clauses to `json_agg()` and `jsonb_agg()` ([#317](https://github.com/seb-jean/postgresql-for-doctrine/issues/317)) ([4cdc638](https://github.com/seb-jean/postgresql-for-doctrine/commit/4cdc638841b23449daa9d9c0a5f9e53e15724fa3)) |
| 21 | +* Add support for `DISTINCT` clause to `array_agg()` ([#316](https://github.com/seb-jean/postgresql-for-doctrine/issues/316)) ([3c46021](https://github.com/seb-jean/postgresql-for-doctrine/commit/3c4602109754b345277e292e86ffd03200d91fa8)) |
| 22 | +* Add support for `JSONB_PATH_EXISTS()`, `JSONB_PATH_MATCH()`, `JSONB_PATH_QUERY()`, `JSONB_PATH_QUERY_ARRAY()` and `JSONB_PATH_QUERY_FIRST()` ([#346](https://github.com/seb-jean/postgresql-for-doctrine/issues/346)) ([0cda902](https://github.com/seb-jean/postgresql-for-doctrine/commit/0cda90218c4330b78c2a94f757e30e4045c70768)) |
| 23 | +* Add support for `ORDER BY` clause for `array_agg()` ([#267](https://github.com/seb-jean/postgresql-for-doctrine/issues/267)) ([7c64742](https://github.com/seb-jean/postgresql-for-doctrine/commit/7c64742d5e3f52bb350fa630efda1ef9ac98d352)) |
| 24 | +* Add support for `REGEXP_COUNT()`, `REGEXP_INSTR()` and `REGEXP_SUBSTR()` and extend support for `REGEXP_REPLACE()` ([#352](https://github.com/seb-jean/postgresql-for-doctrine/issues/352)) ([9959476](https://github.com/seb-jean/postgresql-for-doctrine/commit/995947610b8538e35b5a5a5233a04b22dd202bd5)) |
| 25 | +* Add support for `xmlagg()` ([#318](https://github.com/seb-jean/postgresql-for-doctrine/issues/318)) ([0b4db8a](https://github.com/seb-jean/postgresql-for-doctrine/commit/0b4db8a930964b9292e7d6f79678dbc76b9d841a)) |
| 26 | +* Add support for arrays of `REAL` and `DOUBLE PRECISION` ([#307](https://github.com/seb-jean/postgresql-for-doctrine/issues/307)) ([1db35ac](https://github.com/seb-jean/postgresql-for-doctrine/commit/1db35ac6f73b12e2691ca35fc6c63b0b8a3c4b28)) |
| 27 | +* Add support for network types `inet`, `_inet`, `cidr`, `_cidr`, `macaddr`, `_macaddr` ([#310](https://github.com/seb-jean/postgresql-for-doctrine/issues/310)) ([ba3f9f2](https://github.com/seb-jean/postgresql-for-doctrine/commit/ba3f9f2833fc68f4e36ae7202396794fc43ecb63)) |
| 28 | +* Add support for range functions ([#263](https://github.com/seb-jean/postgresql-for-doctrine/issues/263)) ([2fa8434](https://github.com/seb-jean/postgresql-for-doctrine/commit/2fa8434f517f3bf3ecb4873956bd134b4df8112b)) |
| 29 | +* Extend existing function support with optional boolean parameters ([#347](https://github.com/seb-jean/postgresql-for-doctrine/issues/347)) ([67265cc](https://github.com/seb-jean/postgresql-for-doctrine/commit/67265cc84313b6cb447f6ec3a67f3b99dba4bde2)) |
| 30 | +* Extend support of `REGEXP_LIKE()`, `REGEXP_MATCH()` and `REGEXP_REPLACE()` while deprecating the legacy limited flagged variations of `FlaggedRegexpLike`, `FlaggedRegexpMatch` and `FlaggedRegexpReplace` ([#357](https://github.com/seb-jean/postgresql-for-doctrine/issues/357)) ([ef688dc](https://github.com/seb-jean/postgresql-for-doctrine/commit/ef688dc2d62c702fbcb85c8474e15f687de82ea5)) |
| 31 | +* Preserve the type of booleans, floats, integers & scientific notations when transforming back and forth between PostgreSQL and PHP ([#304](https://github.com/seb-jean/postgresql-for-doctrine/issues/304)) ([c584099](https://github.com/seb-jean/postgresql-for-doctrine/commit/c584099652b612cc4a89f24573fddcd7060bb4fe)) |
| 32 | +* Refactor exceptions handling for `JsonbArray` in the style used for the network types ([#311](https://github.com/seb-jean/postgresql-for-doctrine/issues/311)) ([0058d1c](https://github.com/seb-jean/postgresql-for-doctrine/commit/0058d1cd657675bbea402787205db5c0e71f26ac)) |
| 33 | + |
| 34 | + |
| 35 | +### Bug Fixes |
| 36 | + |
| 37 | +* Add support for Lexer v1 (allowed by ORM < v2.15) ([#300](https://github.com/seb-jean/postgresql-for-doctrine/issues/300)) ([16fd227](https://github.com/seb-jean/postgresql-for-doctrine/commit/16fd227d1841eccfff2ffe62a4d4c0b81c9fc3e3)) |
| 38 | +* Avoid infinite parsing loop for `GREATEST()` and `LEAST()` by using `SimpleArithmeticExpression` ([#338](https://github.com/seb-jean/postgresql-for-doctrine/issues/338)) ([169192b](https://github.com/seb-jean/postgresql-for-doctrine/commit/169192bb6aafc1a8851e6ab38737c27c87706bf8)) |
| 39 | +* Improve BC by deprecating `customiseFunction` instead of renaming it straight away ([#294](https://github.com/seb-jean/postgresql-for-doctrine/issues/294)) ([910d328](https://github.com/seb-jean/postgresql-for-doctrine/commit/910d3289fe9cb0e605765cf301ae4e86c5845e63)) |
| 40 | +* Restore support for unquoted string values stored in `text[]` ([#333](https://github.com/seb-jean/postgresql-for-doctrine/issues/333)) ([339e988](https://github.com/seb-jean/postgresql-for-doctrine/commit/339e988dd6669d6930a39deb4ad7be74ffecc78d)) |
| 41 | +* Wrap up ORM v3 throwable when parsing fails in variadic functions ([#285](https://github.com/seb-jean/postgresql-for-doctrine/issues/285)) ([59a8cb9](https://github.com/seb-jean/postgresql-for-doctrine/commit/59a8cb9ed84a45a8ea7da2f19e05e921400c934b)) |
| 42 | + |
| 43 | + |
| 44 | +### Code Refactoring |
| 45 | + |
| 46 | +* Allow multiple node mapping patterns to be used and their arguments to be validated in variadic functions ([#350](https://github.com/seb-jean/postgresql-for-doctrine/issues/350)) ([e111dd2](https://github.com/seb-jean/postgresql-for-doctrine/commit/e111dd28da6985324d0b9b181daf73dcbc97bb00)) |
| 47 | +* Allow node mapping in variadic functions to have different patterns, thus opening the path to a combination of node types (compared to the previous single type support) ([#349](https://github.com/seb-jean/postgresql-for-doctrine/issues/349)) ([6a5ba9e](https://github.com/seb-jean/postgresql-for-doctrine/commit/6a5ba9ef21b24b0e6107d85e67725a4c96f3ab8a)) |
| 48 | +* Introduce `BaseRegexpFunction` and `ParserException` ([#269](https://github.com/seb-jean/postgresql-for-doctrine/issues/269)) ([fed0367](https://github.com/seb-jean/postgresql-for-doctrine/commit/fed0367baa8cedffe309bd25e1885fb23f6449c8)) |
| 49 | +* Modernise the validation in active code and the associated tests when dealing with integer arrays ([#308](https://github.com/seb-jean/postgresql-for-doctrine/issues/308)) ([67c344e](https://github.com/seb-jean/postgresql-for-doctrine/commit/67c344e11e16529049422b9fe9024310594a0392)) |
| 50 | +* Stricter method argument types when handling variadic functions ([#343](https://github.com/seb-jean/postgresql-for-doctrine/issues/343)) ([553a30c](https://github.com/seb-jean/postgresql-for-doctrine/commit/553a30c2e26c4b8e69b14ad4d791dd7f7d0670d8)) |
| 51 | +* Validate that variadic functions have only the expected count of arguments ([#274](https://github.com/seb-jean/postgresql-for-doctrine/issues/274)) ([019f84d](https://github.com/seb-jean/postgresql-for-doctrine/commit/019f84d23df6e85c7f5658b94c5992699e8082e3)) |
| 52 | + |
3 | 53 | ## [3.0.2](https://github.com/martin-georgiev/postgresql-for-doctrine/compare/v3.0.1...v3.0.2) (2025-04-11) |
4 | 54 |
|
5 | 55 |
|
|
0 commit comments