All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Add missing instructions for creating
MERGE_TOKEN
tomerge-me.yml
GitHub Action file.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- By default, assign permissions to upload security reports
- Add comment about permissions for security events to continuous integration workflow file.
- Nothing.
- Nothing.
- Nothing.
- Disable rendering Code of Conduct messages if None selected.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
-
Remove code supporting old versions of symfony/process.
-
Improve checks for line-endings.
-
Add an option for version 2.1 of the Contributor Covenant
-
Update GitHub workflows to support auto-merging of Dependabot pull requests
-
Update ramsey/devtools to version 2.0
-
Increase minimum PHP version to 8.1
- Nothing.
- Nothing.
- Stop passing
starter-kit
command name to avoid confusing newer versions of symfony/console.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Use a new instance of the Symfony Finder for each use.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Bump codecov/codecov-action to v2.1.0
- Add the
allow-plugins
property to composer.json. - Tell Dependabot to update GitHub Actions.
- Run GitHub Actions CI builds only on pushes to
main
and PRs based onmain
.
- Remove "deps" as a type from conventional commits configuration.
- Nothing.
- Nothing.
- Use v2 of ramsey/composer-install.
- Fix a few package compatibility issues with PHP 8.1.
-
Allow use of an existing answers file when creating new projects.
When using Composer's
create-project
command, users may now provide an environment variable (STARTER_KIT_ANSWERS_FILE
) to indicate the location of an already-existing answers file to use when setting up a new library. This must be a JSON file including properties defined inRamsey\Dev\LibraryStarterKit\Answers
. To completely turn off the question prompts, include the propertyskipPrompts: true
.For example:
STARTER_KIT_ANSWERS_FILE=/path/to/answers.json composer create-project ramsey/php-library-starter-kit YOUR-PROJECT-NAME
-
Include a builder task (
Ramsey\Dev\LibraryStarterKit\Task\Builder\FixStyle
) that fixes any style issues before instantiating the new repository. This avoids coding standards errors caused by out-of-orderuse
statements, etc.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Remove description case from Conventional Commits configuration, since the lowercase requirement causes confusion
- Remove PHPStan and Psalm checks from pre-commit hook, since these can result in false positives/negatives when analyzing only a few files at a time
- Use https in URLs
- Use the correct branch name in GitHub URLs
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fix link to SECURITY.md
- Provide Creative Commons Zero v1.0 Universal as a license option
- Nothing.
- Nothing.
- Nothing.
- Write a Coordinated Disclosure section to the README if choosing to include a security policy
- Move the pull request template so that GitHub will use it
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Detect author name and email using Git config
- Use the author name and email address for git config, if necessary
- Require the author email address
- Nothing.
- Nothing.
- Nothing.
- Set the branch name after the initial commit to avoid errors on older versions of Git
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Support older versions of Git that do not implement the
-b
option forgit init
- Improve exception handling to aid with debugging
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Add missing newline to end of generated composer.json file
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Make sure CaptainHook installation runs after the repository initialization
- Allow users to exit the wizard and restart it later, saving their answers
- Use ramsey/devtools instead of
vnd:*
scripts in the localcomposer.json
- Use CaptainHook to manage Git hooks
- Enforce the use of Conventional Commits
- Validate and check normalization of
composer.json
in pre-commit hook - Run syntax, style, and static analysis checks in pre-commit hook
- Run
composer install
on post-merge and post-checkout hooks - Run
composer test
in pre-push hook
- Add option to include a security policy (vulnerability disclosure policy) as part of the wizard
- Add GitHub Actions configuration for CI workflows
- Add Codecov configuration for viewing code coverage reports
- Use ramsey/coding-standard
- Rename from ramsey/php-library-skeleton to ramsey/php-library-starter-kit
- Major re-working of the library to use symfony/console
- Nothing.
- Remove dependencies on NodeJS and npm packages
- Remove all
vnd:*
scripts fromcomposer.json
- Remove
bin/repl
, since ramsey/devtools uses ramsey/composer-repl - Remove Travis CI configuration, in favor of GitHub Actions
- Remove Coveralls configuration, in favor of Codecov
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Remove package name from license file, since it caused conflicts with GitHub's automatic license-detection software
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fix case of incorrect license used in generated package.json
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fix typo in
export-ignore
directives in.gitattributes
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fix links to code of conduct and contributing guide
- Nothing.
- Rename phpstan.neon to phpstan.neon.dist
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fix typo in CONTRIBUTING.md.
- Nothing.
- Pretty much a full re-write
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fixed PSR-12 coding standards violations.
- Nothing.
- Moved the
README.md
file to the project root to support packages that will not be placed on GitHub. - Upgraded to the latest versions of dev tools:
- PHPStan
^0.11
- PHPUnit
^8
- PHPStan
- Now using
--no-suggest
when installing packages after finishing the wizard.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- The
.gitattributes
file continues to be problematic when using the zip distribution, so this release removes the file entirely.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Fixed a problem where using
composer create-project
was not properly creating a project from the 1.0.0 release because the.gitattributes
file was too liberal, failing to include important skeleton files in the release zip bundle.
This is the initial release of ramsey/php-library-starter-kit, with the ability to quickly generate a PHP library including all the starting files that I (@ramsey) prefer to have in my projects. Future versions of this project may expand on this and allow for more generic options.
To create the starting point for a PHP library using this project, run the following:
composer create-project --remove-vcs ramsey/php-library-starter-kit target-directory
You will be walked through a series of questions, and your PHP library source
files will be located in target-directory
, when completed. Change to that
directory, git init
, and off you go!
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.