Security
- install:
module:installno longer passes the module name, version, path or repository URL through the shell, which allowed command injection from the CLI or a committedmodules.json. A failed install now exits with an error instead of runningmodule:update(#2174, 25c4847)
Features
- boost: Add Laravel Boost support: a core guideline and a
laravel-modules-developmentskill, by @rupeshstha (#2156, 63d90fa, 8dc6deb)
Bug Fixes
- migrations:
module:migrate-freshasks for confirmation in production before wiping the database (#2173, 9c27d35) - migrations:
module:migrate <Module>no longer runs the app's migrations or those of another module with a similar name (#2171, 4917d29) - migrations: Honour
--pretendonmodule:migrate-rollbackandmodule:migrate-reset, and ask for confirmation before a rollback in production (#2175, d7bab5e) - translations: Fix module translation loading missing its namespace, by @joaopluis (#2154, aed5d54)
Maintenance
- ci: Add the release workflows and a Conventional Commits check on pull requests (#2176, 99c5d08)
- ci: Modernize the CI workflow, stop duplicate runs, and remove the Travis CI and Scrutinizer config (6f30986, 65444f8)
- tests: Bump phpunit in the Recipe test fixture to a patched version (#2172, cab48f1)
- docs: Add
AGENTS.mdagent guidance and fixFUNDING.ymlso both sponsor accounts show (fe7e532, 178ca04)