Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

composer.{json,lock} - Make the "tplaner/when" exception for old PHP reproducible #15732

Merged
merged 2 commits into from
Nov 5, 2019

Conversation

totten
Copy link
Member

@totten totten commented Nov 5, 2019

Overview

The library tplaner/when has an inaccurate dependency on php71 and requires special work to deploy on php70.

Before

The composer.lock file was manually edited to make it runnable on php70.
However, if you rm composer.lock && composer install, then it fails.

After

The composer.json and composer.lock are more repeatable. If you run
rm composer.lock && composer install, then it works.

Comments

This adds a fairly ugly section. However, the good news is that it should
be more transparent - which should make it easier to understand/remove
later.

As a general rule, we don't want to have civicrm-core.git depend on
packages/versions that aren't published. This is a somewhat unusual
edge-case - this package/version is published via packagist.org. If you
run without this on php71+, then you still get a valid/equivalent package.
All that we've done is to enable running on php70 (when civicrm-core is
a root project).

To head off MC's, I based this on top of another #15730 which also touches composer.lock.

seamuslee001 and others added 2 commits November 5, 2019 14:47
…reproducible

Overview
--------

The library `tplaner/when` has an inaccurate dependency on php71 and
requires special work to deploy on php70.

Before
------

The `composer.lock` file was manually edited to make it runnable on php70.
However, if you `rm composer.lock && composer install`, then it fails.

After
-----

The `composer.json` and `composer.lock` are more repeatable.  If you run
`rm composer.lock && composer install`, then it works.

Comments
--------

This adds a fairly ugly section.  However, the good news is that it should
be more transparent - which should make it easier to understand/remove
later.

As a general rule, we don't want to have `civicrm-core.git` depend on
packages/versions that aren't published.  This is a somewhat unusual
edge-case - this package/version is published via `packagist.org`.  If you
run without this on php71+, then you still get a valid/equivalent package.
All that we've done is to enable running on `php70` (when `civicrm-core` is
a root project).
@civibot civibot bot added the master label Nov 5, 2019
@civibot
Copy link

civibot bot commented Nov 5, 2019

(Standard links)

@seamuslee001
Copy link
Contributor

Yeh its not great workaround but if Jenkins is ok with it i am ok with it, it at least means the transition to the normal package then will be simpler and also it should also mean that people can run composer update easier

@totten totten merged commit 302c4f9 into civicrm:master Nov 5, 2019
@totten totten deleted the master-tplaner-when branch November 5, 2019 06:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants