All pull requests should target the development branch.
| Change | Repository |
|---|---|
| EasyLibrary core, module system, components, or utility APIs | This repository |
| An official library package (e.g., LibCommand, LibForm, LibWorld) | The respective standalone/package 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 official library lives in its own repository. Changes to a library's
source code, API, or behavior should target that repository's development
branch.
EasyLibrary 3.x does not embed official library source. When a library changes:
- Open the pull request in the standalone repository first.
- Update package metadata, docs or release assets if EasyLibrary needs to install or describe the new version.
- Do not copy library source back into
EasyLibrary/src/imperazim.
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