Repository navigation
Conversation
Wrap the CodeIgniter update workflow in a host command: resolve the installed and latest versions, print the release notes links, list skeleton file changes from the GitHub compare API, run tatter/patches on the host only when skeleton files changed, then run composer update, ddev test, and ddev check. Point the README section at the command.
Security release covering file cache deleteMatching() path traversal, Model::replace() mass assignment, sanitize_filename() path traversal, and named bind substitution inside quoted SQL. None of the breaking changes apply here: the only replace() call is a Query Builder replace, and the raw queries use no binds. No skeleton files changed in this release.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
deleteMatching()path traversal,Model::replace()mass assignment,sanitize_filename()path traversal, and named bind substitution inside quoted SQL. None of the breaking changes apply here: the onlyreplace()call is a Query Builder replace inFeedIngestionService, and the raw queries use no binds. No skeleton files changed in this release, so tatter/patches was not needed.ddev framework-update [--check] [version], a host command that scripts the README's manual update workflow: resolve the installed and latest versions, print the changelog and upgrade note links, list skeleton file changes from the GitHub compare API, run tatter/patches on the host only when skeleton files changed, then runddev composer update codeigniter4/framework,ddev test, andddev check. It stops before committing.--checkis a read-only dry run..ddev/config.yamlcommit that moves the web container to Node 24.Testing
--checkon a clean branch exits 0 after reporting the skeleton delta, and passing the current version exits 0 with "already on".