|
| 1 | +CakePHP 5.4.0-RC1 Released |
| 2 | +============================ |
| 3 | + |
| 4 | +The CakePHP core team is happy to announce the first release candidate for |
| 5 | +CakePHP 5.4.0. The 5.4 release includes several behavior changes to increase |
| 6 | +correctness and new features. The highlights of those include: |
| 7 | + |
| 8 | + |
| 9 | +What's new in 5.4.0 |
| 10 | +------------------- |
| 11 | + |
| 12 | +The `migration guide |
| 13 | +<https://book.cakephp.org/5.next/en/appendices/5-4-migration-guide.html>`_ has |
| 14 | +a complete list of what's new in 5.4.0. We recommend you give that page a read |
| 15 | +when upgrading as it notes the behavior changes present in 5.4.0. |
| 16 | + |
| 17 | +- The default eager loading strategy for ``HasMany`` and ``BelongsToMany`` associations |
| 18 | + has changed from ``select`` to ``subquery``. If you need the previous behavior, |
| 19 | + explicitly set ``'strategy' => 'select'`` when defining associations. |
| 20 | +- ``Model.afterSaveCommit`` and ``Model.afterDeleteCommit`` events are now fired |
| 21 | + when ``save()`` or ``delete()`` is called inside an outer transaction. |
| 22 | +- ``Collection`` had ``keys()``, ``values()``, ``implode()``, ``when()`` and |
| 23 | + ``unless()`` methods added. |
| 24 | +- Commands now have ``$this->io`` and ``$this->args`` set by CakePHP. This will |
| 25 | + become the default in 6.0, and ``execute()`` will no longer receive io & args |
| 26 | + parameters. |
| 27 | +- Database queries now support ``notBetween()``, ``inOrNull()``, |
| 28 | + ``notInOrNull()``, ``isDistinctFrom()``, ``isNotDistinctFrom()``, |
| 29 | + ``except()``, ``exceptAll()``, and ``stringAgg()`` operators/functions added. |
| 30 | +- Support for ``brin``, ``hash``, ``gin``, and ``spgist`` indexes for postgres |
| 31 | + was added. |
| 32 | +- ``TestCase::mockModel()`` has been added to enable mocking of table classes |
| 33 | + using Mockery. |
| 34 | +- New filesystem utilities were added for fluent file discovery with pattern |
| 35 | + matching, and cross-platform path manipulation was added. |
| 36 | +- ``Security::encrypt()`` can now be configured to use longer keys with separate |
| 37 | + encryption and authentication keys that are derived from the provided key. |
| 38 | +- Added ``Text::mask()`` method which masks a portion of a string with |
| 39 | + a repeated character. |
| 40 | + |
| 41 | +How you Can Help |
| 42 | +---------------- |
| 43 | + |
| 44 | +You can help deliver 5.4.0 by contributing in one of many ways: |
| 45 | + |
| 46 | +#. Check the `documentation <https://book.cakephp.org/5.next/en/>`_ for mistakes, |
| 47 | + outdated, unclear or broken examples. We've been trying to update the |
| 48 | + documentation as we go, but there are likely examples or sections we've |
| 49 | + missed. |
| 50 | +#. Try it out! Give CakePHP 5.4.0 a test drive. Let us know how upgrading |
| 51 | + went and if there were any rough spots. |
| 52 | +#. File issues for regressions in existing features, or suggest new features. |
| 53 | + Even if those features don't make it into 5.4.0, we're early in the process |
| 54 | + of planning 5.5 and 6.0 and value community feedback. |
| 55 | + |
| 56 | +Contributors to 5.4.0-RC1 |
| 57 | +------------------------- |
| 58 | + |
| 59 | +Thank you to all the contributors that have contributed to this release: |
| 60 | + |
| 61 | +- ADmad |
| 62 | +- Application-drop-up |
| 63 | +- celsowm |
| 64 | +- Jamison Bryant |
| 65 | +- Jasper Smet |
| 66 | +- Joachim Rey |
| 67 | +- Kevin Pfeifer |
| 68 | +- Mallik Hassan |
| 69 | +- Mark Scherer |
| 70 | +- Mark Story |
| 71 | +- Masatoshi Ogiwara |
| 72 | +- othercorey |
| 73 | + |
| 74 | +As always, a huge thanks to all the community members that helped make this |
| 75 | +release happen by reporting issues and sending pull requests. |
| 76 | + |
| 77 | +Download a `packaged release on github |
| 78 | +<https://github.com/cakephp/cakephp/releases>`_. |
| 79 | + |
| 80 | +.. author:: markstory |
| 81 | +.. categories:: news |
| 82 | +.. tags:: release,news |
0 commit comments