We welcome contributions to Strata.
All contributors must agree to our Code of Conduct.
Strata is released under the MIT license and is copyright Studio 24 Ltd. All contributors must accept these license and copyright conditions.
All contributions must be made on a branch and must pass unit tests and coding standards.
Please create a Pull Request to merge changes into the main
branch, these will be automatically tested by
GitHub Actions.
All Pull Requests need at least one approval from the Studio 24 development team.
We follow semantic versioning. This can be summarised as:
- MAJOR version when you make incompatible API changes (e.g. 2.0.0)
- MINOR version when you add functionality in a backwards compatible manner (e.g. 2.1.0)
- PATCH version when you make backwards compatible bug fixes (e.g. 2.1.1)
During pre-1.0 release a MINOR version can include backwards incompatible API changes. Please ensure these are
documented in UPGRADE-PRE-1.0.md
.
Once version 1.0 is reached any upgrade notes should be added to UPGRADE.md
.
To create a new release do the following:
- Update CHANGELOG.md with a summary of the changes.
- Create a new release at GitHub. This will automatically create a new release at Packagist so code can be loaded via Composer.
Please add unit tests for all bug fixes and new code changes.
Run PHPUnit tests via:
vendor/bin/phpunit
Strata follows the PSR-12 coding standard. You can check this with:
vendor/bin/phpcs
Where possible you can auto-fix code via:
vendor/bin/phpcbf
Please ensure you declare strict types at the top of each PHP file:
declare(strict_types=1);
See docs