-
Notifications
You must be signed in to change notification settings - Fork 179
test against different dependency versions #58
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
Conversation
xabbuh
commented
May 18, 2017
- by default, run with latest stable versions
- add a job with lowest stable constrained deps
- run with upcoming releases of required deps
* by default, run with latest stable versions * add a job with lowest stable constrained deps * run with upcoming releases of required deps
70b8719
to
d5690af
Compare
composer.json
Outdated
}, | ||
"require-dev": { | ||
"friendsofphp/php-cs-fixer": "^1.8.0", | ||
"phpunit/phpunit": "^4.6.6" | ||
}, | ||
"minimum-stability": "dev", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't like the addition of this. I know that this is needed for testing against Symfony 4, but in this way it will allow the installation of a lot of dependencies as dev-master, which could cause a lot of unrelated failures in the build (see this build).
Could we allow SF 4.0 in some other way, like "^2.4|^3.0|^4.0|^4.0-dev"
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure, that would work. Though I think it would be a good idea to run a dedicated job with dev versions of all required dependencies. Hopefully, this helps spotting issues before new releases of required packages are released. Also note that by default no untagged deps will be installed due to the usage of the --prefer-stable
option but only one job is leveraging this setting. However, if you are not happy with this change, I will of course update the required version instead. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes I will prefer that, thanks. I've noticed that the --prefer-stable
avoids untagged releases, but the issue that I was highlighting is on the matrix element that you added, where that flag is not used. Also, declaring that this lib is 4.0-compatible is kind of a lie right now, since it's not released and it can change and have BC at any time now. And if we tag a release with this in the composer.json
it could create problems in the future, with Composer rolling back to that version because of that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alright, I removed the ^4.0
part of the constraint and removed the minimum-stability
setting alongside the unstable build job.
Depending on the FrameworkBundle implicitly pulling into all the required packages is fragile and likely to break.
adbf6f1
to
c23fa89
Compare
Thanks @xabbuh! I've pushed an other commit on top to simplify the options ( [EDIT] Damn, we are not really compatible with SF 2.4, the lowest is failing! |
Since #58 I discovered that we do not really support Symfony <2.7, since TokenStorageInterface and AuthorizationCheckerInterface were implemented later than 2.4, in 2.6. Since 2.6 and previous versions are now no longer supported, it makes sense to bump to the oldest currently supported version.