Closed (fixed)
Project:
Drupal core
Version:
8.0.x-dev
Component:
base system
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Issue tags:
Reporter:
Created:
4 Nov 2015 at 12:50 UTC
Updated:
3 Dec 2015 at 17:54 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #2
webflo commentedComment #3
webflo commentedComment #4
webflo commentedThe stability-flags have been added in #2380389: Use a single vendor directory in the root. This is another bug which has been fixed.
Comment #5
webflo commentedComment #6
dawehnerAh great!
Comment #7
bojanz commentedThe 1.3.0 release of merge plugin was just tagged, guessing that affects this patch?
Comment #8
webflo commentedNew patch with the tagged release.
Comment #10
webflo commentedComment #11
bojanz commentedStill good.
Comment #14
hussainwebI am mainly rerolling here, but I made a small change to composer.json and I'd like for someone to review it. It essentially means the same but IMO, gives a clearer meaning.
Comment #15
hussainwebJust FYI, the reroll conflict was probably because of #2609110: Update Twig to 1.23.1.
Comment #16
andypostAccording https://getcomposer.org/doc/articles/versions.md#caret
"allow non-breaking updates"
so this change allows 1.* without checking compatibility... not sure that right
Comment #17
hussainweb@andypost: Re #16. If you interpret the versions correctly,
^1.3.0is identical to~1.3. This is what they translate to:^1.3.0=>">=1.3.0, <2.0"~1.3=>">=1.3, <2.0"That is if the project follows semantic versioning (which many do). Both constraints will allow 1.* from 1.3 onwards. As per semantic versioning, there shouldn't be any breaking changes in 1.* at all, which means both constraints should not break. If there happens to be a breaking change down the line (unlikely), we would have to constraint the version in both cases.
So, why change? This discussion is actually the proof why. Many are confused by the caret operator and that is why it is better to switch it to the more readable representation if possible. See Twig's version constraint for example. ^1.23.1 translates to ">=1.23.1, <2.0" whereas ~1.23.1 would translate to ">=1.23.1, <1.24". They are quite different.
I hope this helps understand the caret operator and why "~1.3" is identical to "^1.3.0".
Comment #18
andypost@hussainweb thanx for explanation!
that works
Comment #19
mile23+1 on the RTBC as it stands. But it would also be nice to use the new
requiresection forcore/composer.json.Comment #20
alexpottCommitted 7485eaa and pushed to 8.0.x. Thanks!
@Mile23 I don;t think this should go in
core/composer.json because I think it needs to be in the root composer.json as this is how merging actually worksComment #22
mile23I meant: Currently the root
composer.jsonfile hasextra.include.core/composer.json. It *could* haveextra.require.core/composer.json, which would error out if that file isn't present.No worries though.
Comment #23
andypost