All pull requests should target the development branch.
| Change | Repository |
|---|---|
| EasyLibrary core, module system, components, or utility APIs | This repository |
| A bundled library (e.g., LibCommand, LibForm, LibWorld) | The respective standalone repository |
| Documentation or examples | This repository |
- Keep public APIs backward compatible unless a breaking release is explicitly planned.
- Add focused tests for new module system features, components, or utility helpers.
- Update
README.mdand the current changelog for user-visible changes. - Run linting:
find src -name '*.php' -print0 | xargs -0 -n1 php -l
composer validate --strictEach bundled library lives in its own standalone repository. Changes to a
library's source code, API, or behavior should target that repository's
development branch. The EasyLibrary repository mirrors those sources.
When a change in a standalone library affects EasyLibrary's embedded copy:
- Open the pull request in the standalone repository first.
- After merge, update the embedded source in EasyLibrary to match.
When proposing changes to the module system:
- Update
BaseModuleandModuleManagerinterfaces if needed. - Add test modules in a test scaffold for lifecycle coverage.
- Document new manifest properties or lifecycle hooks in
docs/modules.md. - Verify that module enable, disable, reload, and dependency resolution work correctly with both hard and optional dependencies.
composer installValidate before submitting:
find src -name '*.php' -print0 | xargs -0 -n1 php -l
composer validate --strict