-
Notifications
You must be signed in to change notification settings - Fork 5
garp composer
Garp has been made into an official Composer package.
That means the old subtree style is deprecated and Garp should be included in a project as a Composer dependency.
To help the migration, a Golem script was created.
After updating golem, the following oneliner will move you to the new setup:
g composer migrate
You have to manually delete the garp
directory from the root of your project. Just make sure there are no changes left in there you wish to keep.
Note: Composer can be a bit whiney sometimes and you might want to add "minimum-stability": "dev"
to the host project's composer.json
.
Also, historically google/apiclient
might be a dependency in the host project. Its version might conflict with Garp's dependent version, but you can safely remove it.
The migration script fixes known references to garp in the old location. For instance the inclusion of init.php
in public/index.php
or the inclusion of Garp's routes file in application/configs/routes.ini
.
If your project references /garp
in a non-traditional way you will have to change it manually to reference /vendor/grrr-amsterdam/garp3
.
One known place that you probably have to update by hand that just can't be done with a migration script is the cron job on your project's servers.
❗ Make sure you go into the server and fix the cronjobs after migrating Garp!
Changes to Garp are no longer pushed from a host project (git subtree style), but should be made directly to the Garp3 repo.
Garp3 has its own master
/ develop
setup as you would expect from all our projects. The usual git flow
rules apply: master
should be stable, develop
contains ongoing development. Releases are done thru git flow release start
and should update .semver
in the root.
Note that Packagist (the package repository for Composer) looks for tags in your repo to allow installation of specific versions. The above workflow using git flow
provides such tags but you have to push them to the remote yourself:
git push origin --tags
This allows implementing authors to freeze Garp at a specific version.
More info on Contributing to the Garp codebase.