All Versions
62
Latest Version
Avg Release Cycle
38 days
Latest Release
794 days ago

Changelog History
Page 3

  • v4.0.3 Changes

    January 26, 2020

    πŸš€ The CakePHP core team is happy to announce the immediate availability of CakePHP 4.0.3. This is a maintenance release for the 4.0 branch that fixes several community reported issues.

    πŸ›  Bugfixes

    πŸ‘€ You can expect the following changes in 4.0.3. See the changelog for every commit.

    • πŸ›  Fixed password hashing being skipped when password field was null. This prevents a potential timing sidechannel should an application store users with null passwords.
    • i18n extract now skips writing files if no strings have changed.
    • 🐎 If identifier quoting is disabled, queries will no longer have column aliases quoted. This helps improve performance of the ORM. Postgres still quotes aliases to prevent alias casing issues.
    • FormProtectionComponent no longer fails validation when PSR7 file upload objects are used.
    • Year widgets created with FormHelper now accept DateTime instances as their value.
    • πŸ‘Œ Improved error message copying from exception pages.

    Contributors to 4.0.3

    πŸš€ Thank you to all the contributors that helped make this release happen:

    • ADmad
    • Corey Taylor
    • Edgaras JanuΕ‘auskas
    • Ian den Hartog
    • JosΓ© Lorenzo RodrΓ­guez
    • Marc WΓΌrth
    • Mark Scherer
    • Mark Story
    • Michael Hoffmann

    πŸ“š As always, we would like to thank all the contributors that opened issues, created pull requests or updated the documentation.

  • v4.0.2 Changes

    January 12, 2020

    πŸš€ The CakePHP core team is happy to announce the immediate availability of CakePHP 4.0.2. This is a maintenance release for the 4.0 branch that fixes several community reported issues.

    πŸ›  Bugfixes

    πŸ‘€ You can expect the following changes in 4.0.2. See the changelog for every commit.

    • πŸ‘» An exception is now raised in development mode if the generated alias name for a table + column would exceed the maximum identifier length for your database platform.
    • FormProtectionComponent now checks unlockedFields correctly.
    • 🚚 The deprecation warning in RequestHandlerComponent for parsing request bodies was removed. Conditionally triggering it had too many edge cases and was confusing users.
    • πŸ‘Œ Improved formatting of API documentation examples.
    • 🐎 The ORM more efficiently traverses and transforms query objects improving performance for all ORM operations.
    • Associations that use formatResults and change the associated entities no longer result in records being marked as dirty when records are read.
    • 🌲 Cache and Log now handle numeric engine names correctly.
    • ⚠ Errors and warnings emitted while DebugKit is active now reference the correct file and line.
    • πŸ“¦ Dependencies on abandoned zendframework packages are now referencing the Laminas project.
    • Using contain() with a field list on a BelongsToMany association now works correctly.
    • πŸ‘ Session cookies now have SameSite=Lax instead of strict to better emulate how session cookies worked in the past.
    • View element caching now works when elements are in subdirectories.
    • PaginatorHelper::first() and last() now apply the url option when the title parameter is a string.

    Contributors to 4.0.2

    πŸš€ Thank you to all the contributors that helped make this release happen:

    • ADmad
    • Corey Taylor
    • Edgaras JanuΕ‘auskas
    • Mark Scherer
    • Mark Story
    • gregs
    • o0h
    • othercorey
    • saeideng

    πŸ“š As always, we would like to thank all the contributors that opened issues, created pull requests or updated the documentation.

  • v4.0.1 Changes

    December 30, 2019

    πŸš€ The CakePHP core team is happy to announce the immediate availability of CakePHP 4.0.1. This is a maintenance release for the 4.0 branch that fixes several community reported issues.

    πŸ›  Bugfixes

    πŸ‘€ You can expect the following changes in 4.0.1. See the changelog for every commit.

    • ⬆️ The upgrade tool has a smaller install footprint and should have fewer conflicts with application code now.
    • βœ‚ Removed the typehint on Event data payload, as it can be any type.
    • βœ‚ Removed the empty string default value for console options. This fixes Argument::hasOption() always returning true for optional options.
    • CSRF tokens are now set on redirect and basic diactoros response objects.
    • ⚠ URL generation no longer emits a type warning when route elements have a regex pattern and parameters are integers.
    • Loading joinable associations with contain() now emit errors when foreign keys are not selected. This may cause existing queries to start emitting errors, but those queries were previously silently failing to load associated data as requested.
    • SQLServer fixtures now handle the restrict foreign key action now.
    • The datetime abstract type once again uses the DATETIME column type in SQLServer. Using DATETIME2 created microsecond overflow issues for some users.
    • βœ… TestCase::loadRoutes() was added to ease writing unit tests for classes like mailers which often need routes loaded.
    • ConsoleIo::createFile() no longer returns false when the created file has 0 bytes.
    • When generating URLs, routes with controller and action placeholders no longer strip these these keys when they are undefined. Instead routes missing the controller and action keys will fail to match.
    • Optional routing placeholders now work consistently for both braced placeholders and colon placeholders.
    • FunctionsBuilder once again allows mixed types for the $expression parameter as many expressions accept objects that implement __toString().
    • 🌲 ErrorLogger no longer fails to log messages for errors which no file or line.
    • πŸ‘Œ Improved API doc blocks.

    Contributors to 4.0.1

    πŸš€ Thank you to all the contributors that helped make this release happen:

    • ADmad
    • Corey Taylor
    • Edgaras JanuΕ‘auskas
    • Kaliel
    • Mark Scherer
    • Mark Story
    • Matthias Wirtz

    πŸ“š As always, we would like to thank all the contributors that opened issues, created pull requests or updated the documentation.

  • v4.0.0 Changes

    June 30, 2019

    πŸš€ The CakePHP core team is proud to announce the first beta release of CakePHP 4.0.0. Since the previous alpha we've been hard at work converting the various Shell classes into Commands, and adapting to the most recent changes in psalm. If your application or plugins extend shell classes in CakePHP you will need to update your code.

    πŸš€ The majority of breaking changes for 4.0 are complete. For the next beta release we'll be focusing on improving stability, updating the remaining CakePHP managed plugins and continuing to improve error messages.

    πŸ†• New Features

    ⬆️ The migration guide has a complete list of what's new in 4.0.0. We recommend you give that page a read when upgrading as it notes the various breaking changes present in 4.0.

    How you Can Help

    You can help deliver 4.0 by contributing in one of many ways:

    πŸ“š 1. Check the documentation for mistakes, outdated, unclear or broken examples. We've been trying to update everything but may have not caught everything. βœ… 2. Try it out! Give CakePHP 4.0 a test drive in a non-production application. We'd love to hear how converting a small application went and what was harder than it should have been.

    1. File issues for regressions in existing features, or suggest new features. While we're not likely to greatly expand the scope of 4.0, we would like input on what should be a part of 4.1 and 4.2.
    2. Let us know about unclear error messages or silent failures in CakePHP.

    Contributors to 4.0.0-beta1

    πŸš€ Thank you to all the contributors that have helped since the alpha1 release:

    πŸš€ As always, a huge thanks to all the community members that helped make this release happen by reporting issues and sending pull requests.

  • v4.0.0-RC2 Changes

    December 02, 2019

    πŸš€ The CakePHP core team is happy to announce the immediate availability of CakePHP 4.0.0-RC2. This is the second and hopefully final release candidate for 4.0.0, and contains all the major features that are planned for 4.0.0. If no major issues are reported a stable release will be packaged in two weeks.

    ⚑️ Updating to the RC

    ⬆️ You can use composer to upgrade to the beta version of CakePHP 4.0.0:

    php composer.phar require --update-with-dependencies "cakephp/cakephp:4.0.0-RC2"
    

    πŸš€ We would greatly appreciate it if you temporarily upgraded your application, and ran your tests. By opening issues for any regressions in the release candidate, we can help ensure a smoother release of 4.0.0 before the stable release.

    What's new in 4.0.0?

    ⬆️ The migration guide has a complete list of what's new in 4.0.0, and what has been deprecated. We recommend you give that page a read when upgrading.

    πŸ”„ Changes since 4.0.0-RC1

    • Validation::compareFields() now works with null values.
    • Email attachments now URL encode filenames with non-ascii characters.
    • βž• Added assertRedirectEquals() to allow assertions without the base path being added.
    • βœ‚ Removed Http\Server::setRunner(), as the runner can be provided as a constructor argument now.
    • πŸ‘Œ Improved error messages from QueryExpressions when null is used with an incompatible operator.
    • βž• Added deprecation warnings for Validator::allowEmpty() and Validator::notEmpty().
    • 🚚 The safe option was removed from HtmlHelper::script() and scriptBlock(). This option is not needed in an HTML5 context.
    • 🚚 HtmlHelper::docType() is removed.
    • πŸ“¦ The console package was more thoroughly tested in isolation and several problems were fixed.
    • FormProtectionComponent now works with applications in sub-directories.
    • πŸ—„ Validator::errors() was deprecated and is replaced by validate().

    Contributors to 4.0.0-RC2

    πŸš€ Thank you to all the contributors that helped make this release happen:

    • ADmad
    • Chetan Varshney
    • Corey Taylor
    • Edgaras JanuΕ‘auskas
    • Mark Scherer
    • Mark Story
    • Martin Matthaei
    • gregs
    • othercorey
    • saeideng

    πŸ“š As always, we would like to thank all the contributors that opened issues, created pull requests or updated the documentation.

  • v4.0.0-RC1 Changes

    November 16, 2019

    πŸš€ The CakePHP core team is happy to announce the immediate availability of CakePHP 4.0.0-RC1. This is the first release candidate for 4.0.0, and contains all the major features that are planned for 4.0.0. If no major issues are reported a stable release will be packaged in a few weeks.

    ⚑️ Updating to the RC

    ⬆️ You can use composer to upgrade to the beta version of CakePHP 4.0.0:

    php composer.phar require --update-with-dependencies "cakephp/cakephp:4.0.0-RC1"
    

    πŸš€ We would greatly appreciate it if you temporarily upgraded your application, and ran your tests. By opening issues for any regressions in the release candidate, we can help ensure a smoother release of 4.0.0 before the stable release.

    What's new in 4.0.0?

    ⬆️ The migration guide has a complete list of what's new in 4.0.0, and what has been deprecated. We recommend you give that page a read when upgrading.

    πŸ”„ Changes since 4.0.0-beta4

    • A new compact route _path format has been added to Router::url(). This new format accepts the same Controller::action format that route definition can use.
    • πŸ“¦ The http and console libraries have had standalone packages created.
    • πŸ‘» Development error pages now preserve inline code highlighting and newlines in exception messages.
    • πŸ—„ SecurityComponent is now deprecated, and replaced by the FormProtectionComponent.
    • πŸ“¦ The ConsoleErrorHandler was moved to the Error package.
    • Validation::time() now accepts microseconds.
    • πŸ‘ SameSite cookie support was added for PHP>7.3.0
    • πŸ†• New database types for char, datetimefractional and timestampfractional were added. The new datetime types allow representation of time values including microseconds.
    • InstanceConfigTrait::getConfigOrFail() was added.
    • πŸ†• New isLinkedTo and isNotLinkedTo rules were added to ORM\RulesChecker.
    • 0️⃣ Date and FrozenDate objects now use the default timezone instead of UTC. This fixes problems where 'today' would not always be today depending on your distance from UTC.
    • πŸ”¨ Controller action dispatching was refactored to make adding a DI container in the future easier.
    • 🚚 Routing prefixes are now PascalCased instead of under_scored. This removes some inflection and normalizes the representation of prefixes.

    Contributors to 4.0.0-RC1

    πŸ“š We'd like to welcome othercorey to the core team. They have been contributed a number of documentation improvements and driven multiple improvements around how CakePHP handles microseconds across both CakePHP and Chronos.

    πŸš€ Thank you to all the contributors that helped make this release happen:

    • ADmad
    • Corey Taylor
    • Edgaras JanuΕ‘auskas
    • Jorge GonzΓ‘lez
    • Karma Dice
    • Mark Scherer
    • Mark Story
    • dan
    • itosho
    • ndm2
    • othercorey
    • saeideng

    πŸ“š As always, we would like to thank all the contributors that opened issues, created pull requests or updated the documentation.

  • v4.0.0-beta4 Changes

    October 10, 2019

    πŸš€ The CakePHP core team is proud to announce the fourth beta release of CakePHP 4.0.0. Since the previous beta we've completed several tasks:

    • The requireSsl features of SecurityComponent are available as middleware in the HttpsEnforcerMiddleware.
    • ⚑️ Migrations has been updated to use Commands instead of Shells.
    • 4.x has adopted the PSR-12 formatting standard.
    • πŸ“¦ A new Asset class has been added to the routing package, making it easier to generate static asset URLs across your application.
    • 🚚 The internal request stack in Router has been removed. With requestAction() removed this feature provided little value.
    • πŸ‘ Email attachments now support UploadedFileInterface objects.

    πŸ†• New Features

    ⬆️ The migration guide has a complete list of what's new in 4.0.0. We recommend you give that page a read when upgrading as it notes the various breaking changes present in 4.0.

    How you Can Help

    You can help deliver 4.0 by contributing in one of many ways:

    πŸ“š 1. Check the documentation for mistakes, outdated, unclear or broken examples. We've been trying to update everything but may have not caught everything. βœ… 2. Try it out! Give CakePHP 4.0 a test drive in a non-production application. We'd love to hear how converting a small application went and what was harder than it should have been.

    1. File issues for regressions in existing features, or suggest new features. While we're not likely to greatly expand the scope of 4.0, we would like input on what should be a part of 4.1 and 4.2.
    2. Let us know about unclear error messages or silent failures in CakePHP.

    Contributors to 4.0.0-beta4

    πŸš€ Thank you to all the contributors that have helped since the beta2 release:

    • ADmad
    • Corey Taylor
    • Edgaras JanuΕ‘auskas
    • Erwane Breton
    • Iftekhar Ahmed Eather
    • Jason Horvath
    • Littley Lv
    • Mark Scherer
    • Mark Story
    • Rachman Chavik
    • Val Bancer
    • andrii-pukhalevych
    • bancer
    • detinkin
    • kawaguchi masaki
    • mirko-pagliai
    • saeideng

    πŸš€ As always, a huge thanks to all the community members that helped make this release happen by reporting issues and sending pull requests.

  • v4.0.0-beta3 Changes

    September 07, 2019

    πŸš€ The CakePHP core team is proud to announce the third beta release of CakePHP 4.0.0. Since the previous beta we've completed a few milestones:

    • πŸ“¦ Another pass with psalm and improved type handling throughout the database and ORM packages. Type mappers handle empty values and nulls more consistently.
    • πŸ”¨ We've also done refactoring in the
      πŸ“¦ Mailer package which has resulted in Cake\Mailer\Email becoming a backwards compatible proxy for other classes.
    • 0️⃣ Uploaded files are now accessed using the PSR7 interface by default. A compatibility flag has also been added to preserve the 3.x behavior.
    • πŸ”§ Work on the cakephp4 rector configuration has been started.

    πŸ†• New Features

    ⬆️ The migration guide has a complete list of what's new in 4.0.0. We recommend you give that page a read when upgrading as it notes the various breaking changes present in 4.0.

    How you Can Help

    You can help deliver 4.0 by contributing in one of many ways:

    πŸ“š 1. Check the documentation for mistakes, outdated, unclear or broken examples. We've been trying to update everything but may have not caught everything. βœ… 2. Try it out! Give CakePHP 4.0 a test drive in a non-production application. We'd love to hear how converting a small application went and what was harder than it should have been.

    1. File issues for regressions in existing features, or suggest new features. While we're not likely to greatly expand the scope of 4.0, we would like input on what should be a part of 4.1 and 4.2.
    2. Let us know about unclear error messages or silent failures in CakePHP.

    Contributors to 4.0.0-beta3

    πŸš€ Thank you to all the contributors that have helped since the beta2 release:

    • ADmad
    • Alex
    • Edgaras JanuΕ‘auskas
    • Ethan Pooley
    • Jorge GonzΓ‘lez
    • Mark Scherer
    • Mark Story
    • Val Bancer
    • ndm2

    πŸš€ As always, a huge thanks to all the community members that helped make this release happen by reporting issues and sending pull requests.

  • v4.0.0-beta2 Changes

    August 16, 2019

    πŸš€ CakePHP 4.0.0-beta2 Released

    πŸ›  The CakePHP core team is proud to announce the second beta release of CakePHP 4.0.0. Since the previous beta we've finished upgrading migrations to 4.x, cleaned up how booleans and nulls are handled by the database layer, improved generated javascript snippets, made the development error pages better, finished migrating all core shells to commands and merged all bugfixes for 3.x in.

    πŸš€ The majority of breaking changes for 4.0 are complete. For the next beta release we'll be focusing on improving stability, improving error messages and plugins and continuing to add quality of life improvements.

    πŸ†• New Features

    ⬆️ The migration guide has a complete list of what's new in 4.0.0. We recommend you give that page a read when upgrading as it notes the various breaking changes present in 4.0.

    How you Can Help

    You can help deliver 4.0 by contributing in one of many ways:

    πŸ“š 1. Check the documentation for mistakes, outdated, unclear or broken examples. We've been trying to update everything but may have not caught everything. βœ… 2. Try it out! Give CakePHP 4.0 a test drive in a non-production application. We'd love to hear how converting a small application went and what was harder than it should have been.

    1. File issues for regressions in existing features, or suggest new features. While we're not likely to greatly expand the scope of 4.0, we would like input on what should be a part of 4.1 and 4.2.
    2. Let us know about unclear error messages or silent failures in CakePHP.

    Contributors to 4.0.0-beta2

    πŸš€ Thank you to all the contributors that have helped since the beta1 release:

    • ADmad
    • Albert Cansado SolaΜ€
    • Anne van de Venis
    • Bogdan SOOS
    • Brandon Kelly
    • Edgaras JanuΕ‘auskas
    • Hideki Kinjyo
    • Mark Scherer
    • Mark Story
    • Mauri Kujala
    • Robert PustuΕ‚ka
    • Walther Lalk
    • andrii-pukhalevych
    • bancer
    • gregs
    • mirko-pagliai
    • ndm2
    • saeideng

    πŸš€ As always, a huge thanks to all the community members that helped make this release happen by reporting issues and sending pull requests.

  • v4.0.0-beta1 Changes

    June 30, 2019

    πŸš€ The CakePHP core team is proud to announce the first beta release of CakePHP 4.0.0. Since the previous alpha we've been hard at work converting the various Shell classes into Commands, and adapting to the most recent changes in psalm. If your application or plugins extend shell classes in CakePHP you will need to update your code.

    πŸš€ The majority of breaking changes for 4.0 are complete. For the next beta release we'll be focusing on improving stability, updating the remaining CakePHP managed plugins and continuing to improve error messages.

    πŸ†• New Features

    ⬆️ The migration guide has a complete list of what's new in 4.0.0. We recommend you give that page a read when upgrading as it notes the various breaking changes present in 4.0.

    How you Can Help

    You can help deliver 4.0 by contributing in one of many ways:

    πŸ“š 1. Check the documentation for mistakes, outdated, unclear or broken examples. We've been trying to update everything but may have not caught everything. βœ… 2. Try it out! Give CakePHP 4.0 a test drive in a non-production application. We'd love to hear how converting a small application went and what was harder than it should have been.

    1. File issues for regressions in existing features, or suggest new features. While we're not likely to greatly expand the scope of 4.0, we would like input on what should be a part of 4.1 and 4.2.
    2. Let us know about unclear error messages or silent failures in CakePHP.

    Contributors to 4.0.0-beta1

    πŸš€ Thank you to all the contributors that have helped since the alpha1 release:

    πŸš€ As always, a huge thanks to all the community members that helped make this release happen by reporting issues and sending pull requests.