Problem/Motivation
In preparation to expose Drupal Components outside of Drupal we added a composer.json file to every component.
But right now Symfony requirement declarations are out of date/ conflicting: drupal/core requires ~2.8 and has a replace section declaring that it fulfills the requirements for the drupal components which is a lie right now because it's impossible with the two conflicting requirements.
Examples:
- drupal/core-event-dispatcher declares "symfony/event-dispatcher": "2.7.*"
; drupal/core requires "symfony/event-dispatcher": "~2.8"
- drupal/core-dependency-injection declares "symfony/dependency-injection": "2.7.*"
; drupal/core requires "symfony/dependency-injection": "~2.8"
.
- drupal/core-dependency-injection declares "symfony/expression-language": "2.7.*"
Proposed resolution
- Update the components composer.json to not conflict with drupal/core symfony requirements in this respect.
Comment | File | Size | Author |
---|---|---|---|
#28 | 2744357-28.patch | 1.01 KB | rajeshwari10 |
#26 | interdiff-2744357-12-25.txt | 2.32 KB | rajeshwari10 |
#26 | 2744357-25.patch | 2.45 KB | rajeshwari10 |
#18 | drupal_core_components_sympfony_requirements-2744357-18.patch | 2.45 KB | pashupathi nath gajawada |
#12 | 2744357-12.patch | 2.45 KB | rajeshwari10 |
Comments
Comment #2
Eric_A CreditAttribution: Eric_A commentedComment #3
Eric_A CreditAttribution: Eric_A commentedComment #4
chishah92 CreditAttribution: chishah92 at Blisstering Solutions commentedThe components are already updated , PFA Screenshot
Comment #5
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commentedupdated composer.json.
Comment #7
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commentedresolving issue.
Comment #9
Eric_A CreditAttribution: Eric_A commented@chishah92, @rajeshwari10,
This issue is about
drupal/core-*
components, which are located atcore/lib/Drupal/Component/
.Any symfony/*
2.7.*
requirement needs to be updated to~2.8
.Comment #10
chishah92 CreditAttribution: chishah92 at Blisstering Solutions commentedThanks Eric , i will adding a patch for this .
Comment #11
chishah92 CreditAttribution: chishah92 at Blisstering Solutions commentedComment #12
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commentedComment #13
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commentedAdding the patch with appropriate changes.
Thanks!
Comment #14
Eric_A CreditAttribution: Eric_A commentedThanks!
I think it would be logical to commit this bug fix now to both branches. (And it also does not conflict with #2712647: Update Symfony components to ~3.2.)
After this 2.7.* to ~2.8 bug fix is in 8.2.x and 8.1.x, we can either expand the 8.2.x patch in #2712647: Update Symfony components to ~3.2 (most logical if you ask me) or wait for that to get into 8.2.x and bug fix after the fact again.
Comment #15
Eric_A CreditAttribution: Eric_A commentedComment #16
Eric_A CreditAttribution: Eric_A commentedComment #17
alexpottDiscussed with @bojanz in IRC.
I think we should try to have our components on the minimum version for as long as possible. Given #2611816: Update to symfony 2.8 only changed the dependency injection component I think that is the only one that requires ~2.8 - the others should be changed to ~2.7. In #2712647: Update Symfony components to ~3.2 we should discuss updating the components that have been changed to something for Symfony 3 and the other unchanged components to maybe >= 2.7.
Comment #18
pashupathi nath gajawada CreditAttribution: pashupathi nath gajawada as a volunteer and at Melity commentedHi @Eric_A,
I have updated the patch with as suggested.
Only updated the dependency injection component to ~2.8
Please find the attached patch.
Thanks,
Comment #19
pashupathi nath gajawada CreditAttribution: pashupathi nath gajawada as a volunteer and at Melity commentedComment #20
Eric_A CreditAttribution: Eric_A commentedAt first I did not grok this, but I guess the point is that there could be 2.7.* projects out there that require component replacement packages out there that require 2.7.* instead of the ~2.8 from drupal/core.
Anyway, let's just fix the conflicts and the one proven ~2.8 dependency here and have separate issues for the other stuff.
Comment #21
Eric_A CreditAttribution: Eric_A commentedShameless plug: note that the symfony/expression-language hunk is not actually relevant. See #2747083: drupal/core-dependency-injection wrongly requires symfony/expression-language.
Comment #22
alexpottCommitted c4b8088 and pushed to 8.1.x and 8.2.x. Thanks!
Comment #25
alexpottComment #26
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commentedadding new patch for 8.1.x. along with the changes said in #17.
Thanks!!
Comment #28
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commentedchanging ~2.7 to 2.7.*
Comment #30
rajeshwari10 CreditAttribution: rajeshwari10 as a volunteer and at Blisstering Solutions commented@Eric_A
Don't know why the patch is failing please guide
Thanks!!
Comment #31
Eric_A CreditAttribution: Eric_A commented@rajeshwari10, the fix is already pushed to 8.1.x and 8.2.x.