Parent issue: #2337283: Add a composer.json file to every component
Problem/Motivation
Part of the parent parent issue: #1826054: [Meta] Expose Drupal Components outside of Drupal
Each of the \Drupal\Component\ namespaces need their own composer.json file, so that they can eventually be offered to the world as a library.
Proposed resolution
Add the LICENSE.txt, README.txt, TESTING.txt, and composer.json files from the template in this patch: https://www.drupal.org/node/2337283#comment-9706563
Verify the various dependencies of the component, so they can be included as requirements.
Add the component's directory to \Drupal\Tests\ComposerIntegrationTest:: getPaths().
Use composer validate in the component directory to make sure the composer.json file is valid.
Remaining tasks
User interface changes
API changes
| Task | Novice task? | Contributor instructions | Complete? |
|---|---|---|---|
| Create a patch | Instructions | ||
| Reroll the patch if it no longer applies. | Instructions | ||
| Update the issue summary noting if allowed during the rc | Template | ||
| Update the patch to incorporate feedback from reviews (include an interdiff) | Instructions | ||
| Manually test the patch | Novice | Instructions | |
| Review patch to ensure that it fixes the issue, stays within scope, is properly documented, and follows coding standards | Instructions |
Postponed until
Framework manager and BDFL signoff for #1826054: [Meta] Expose Drupal Components outside of Drupal
| Comment | File | Size | Author |
|---|---|---|---|
| #8 | interdiff-2600718-1-7.txt | 991 bytes | rakesh.gectcr |
| #8 | 2600718-7.patch | 20.72 KB | rakesh.gectcr |
| #2 | 2600718-1.patch | 20.67 KB | rakesh.gectcr |
Comments
Comment #2
rakesh.gectcrComment #3
mile23Ugh. The testing instructions here are wrong, because the template was wrong. It should be:
...since that's how it is in the linked instructions.
It'll be like this for all these composer.json issues.
Comment #4
dawehnerThe alternative for the testing could be ...
Comment #5
mile23I'd prefer that, but then we'd have to change the docs at https://www.drupal.org/node/2116263 and I'm not sure whether this issue warrants that.
Comment #6
rakesh.gectcrComment #7
rakesh.gectcr@dawehner && @Mile23
I have done the above mentioned changes, the changes are
If this is ok , I will update other similar issues as well? Ones after the confirmation from you guys.
Comment #8
rakesh.gectcrComment #9
mile23Looks good. It's still different from the documentation we're linking to, but let's allow a maintainer figure out if it's a big deal. :-)
Comment #11
rakesh.gectcrComment #12
xjmI believe this is 8.1.x material now. Thanks for the patch!
Comment #13
xjmComment #14
dawehnerCan you explain why this is 8.1.x material? IMHO exposing our libraries doesn't cause any change for runtime code.
Comment #15
dawehnerAh I guess things are just not explained properly on https://www.drupal.org/core/d8-allowed-changes#minor I guess.
Comment #16
mile23It is a completely non-disruptive change which allows for greater use of the code by everyone.
This is a step along the way towards a subtree split which allows the PHP community at large to use the code, find bugs, and fix them.
There are tests in place to check the veracity of the
composer.jsonfile, and in fact the patch adds the file to the testing regime.It's not a feature request.
See the parent issue where wide community support is in evidence: #2337283: Add a composer.json file to every component
This novice implementation detail issue is not the place to discuss which branch it should be in. That conversation should happen here: #1826054: [Meta] Expose Drupal Components outside of Drupal
Comment #17
xjmPlease review https://www.drupal.org/core/d8-allowed-changes#patch. According to current policy, the only changes specifically allowed for patch releases are:
This is not any of these things. Moving back to 8.1.x. This doesn't mean committing it would be postponed for ages, just that we are not deploying it to production sites in two weeks.
Comment #18
xjmAlso tagging for framework manager review. I'll tag the parent that way as well.
Comment #19
xjm@Mile23 is right that we should make sure to keep the discussion in the meta issue. Based on that, I'm actually postponing this pending framework manager and BDFL review of the overall plan. Once that's there we can set this issue back to RTBC against 8.1.x. Thanks!
Comment #20
xjmComment #21
xjm(Fixing issue credit to include @Mile23 and @dawehner.)
Comment #22
alexpottIncluding composer.json files has been approved by Dries in #2176065-33: Introduce a composer.json for Drupal\Component\Utility. Discussed with @xjm and we agreed that these tasks should be committed to 8.1.x
Comment #23
alexpottCommitted d62a0a6 and pushed to 8.1.x. Thanks!