Problem/Motivation
Hello project maintainers,
This is an automated issue to help make this module compatible with Drupal 10.
To read more about this effort by the Drupal Association, please read: The project update bot is being refreshed to support Drupal 10 readiness of contributed projects
Patches will periodically be added to this issue that remove Drupal 10 deprecated API uses. To stop further patches from being posted, change the status to anything other than Active, Needs review, Needs work or Reviewed and tested by the community. Alternatively, you can remove the "ProjectUpdateBotD10" tag from the issue to stop the bot from posting updates.
The patches will be posted by the Project Update Bot official user account. This account will not receive any issue credit contributions for itself or any company.
Proposed resolution
You have a few options for how to use this issue:
- Accept automated patches until this issue is closed
If this issue is left open (status of Active, Needs review, Needs work or Reviewed and tested by the community) and the "ProjectUpdateBotD10" tag is left on this issue, new patches will be posted periodically if new deprecation fixes are needed.
As the Drupal Rector project improves and is able to fix more deprecated API uses, the patches posted here will cover more of the deprecated API uses in the module.
Patches and/or merge requests posted by others are ignored by the bot, and general human interactions in the issue do not stop the bot from posting updates, so feel free to use this issue to refine bot patches. The bot will still post new patches then if there is a change in the new generated patch compared to the patch that the bot posted last. Those changes are then up to humans to integrate.
- Leave open but stop new automated patches.
If you want to use this issue as a starting point to remove deprecated API uses but then don't want new automated patches, remove the "ProjectUpdateBotD10" tag from the issue and use it like any other issue (the status does not matter then). If you want to receive automated patches again, add back the "ProjectUpdateBotD10" tag.
- Close it and don't use it
If the maintainers of this project don't find this issue useful, they can close this issue (any status besides Active, Needs review, Needs work and Reviewed and tested by the community) and no more automated patches will be posted here.
If the issue is reopened, then new automated patches will be posted.
If you are using another issue(s) to work on Drupal 10 compatibility it would be very useful to other contributors to add those issues as "Related issues" when closing this issue.
Remaining tasks
Using the patches
- Apply the latest patch in the comments by Project Update Bot or human contributors that made it better.
- Thoroughly test the patch. These patches are automatically generated so they haven't been tested manually or automatically.
- Provide feedback about how the testing went. If you can improve the patch, post an updated patch here.
Providing feedback
If there are problems with one of the patches posted by the Project Update Bot, such as it does not correctly replace a deprecation, you can file an issue in the Drupal Rector issue queue. For other issues with the bot, for instance if the issue summary created by the bot is unclear, use the Project analysis issue queue.
| Comment | File | Size | Author |
|---|---|---|---|
| #39 | Screen Shot 2022-11-03 at 7.45.12 PM.png | 63.91 KB | nx2611 |
| #39 | Screen Shot 2022-11-03 at 7.44.24 PM.png | 107.95 KB | nx2611 |
| #37 | Missing plugin config.png | 115.83 KB | ameymudras |
| #37 | Content matcher.png | 173.53 KB | ameymudras |
| #37 | Profile edit.png | 113.82 KB | ameymudras |
Issue fork linkit-3288339
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
project update bot commentedThis is an automated patch generated by Drupal Rector. Please see the issue summary for more details.
It is important that any automated tests available are run with this patch and that you manually test this patch.
Drupal 10 Compatibility
According to the Upgrade Status module, even with this patch, this module is not yet compatible with Drupal 10.
Currently Drupal Rector, version 0.12.0, cannot fix all Drupal 10 compatibility problems.
This patch does not update the
info.ymlfile for Drupal 10 compatibility.Leaving this issue open, even after committing the current patch, will allow the Project Update Bot to post additional Drupal 10 compatibility fixes as they become available in Drupal Rector.
Debug info
This patch was created using these packages:
Comment #3
project update bot commentedThis is an automated patch generated by Drupal Rector. Please see the issue summary for more details.
It is important that any automated tests available are run with this patch and that you manually test this patch.
Drupal 10 Compatibility
According to the Upgrade Status module, even with this patch, this module is not yet compatible with Drupal 10.
Currently Drupal Rector, version 0.13.0, cannot fix all Drupal 10 compatibility problems.
This patch does not update the
info.ymlfile for Drupal 10 compatibility.Leaving this issue open, even after committing the current patch, will allow the Project Update Bot to post additional Drupal 10 compatibility fixes as they become available in Drupal Rector.
Debug info
This patch was created using these packages:
Comment #4
project update bot commentedThis is an automated patch generated by Drupal Rector. Please see the issue summary for more details.
It is important that any automated tests available are run with this patch and that you manually test this patch.
Drupal 10 Compatibility
According to the Upgrade Status module, even with this patch, this module is not yet compatible with Drupal 10.
Currently Drupal Rector, version 0.13.1, cannot fix all Drupal 10 compatibility problems.
This patch does not update the
info.ymlfile for Drupal 10 compatibility.Leaving this issue open, even after committing the current patch, will allow the Project Update Bot to post additional Drupal 10 compatibility fixes as they become available in Drupal Rector.
Debug info
This patch was created using these packages:
Comment #5
immaculatexavier commentedHi! As part of Drupal 10 porting day, I am testing this patch.
Comment #6
immaculatexavier commentedReviewed the patch:
1 Downloaded and installed the "Project Update Bot" patch - #4.
2. Examined the module based on Upgrade Status
3. Errors were discovered in the Upgrade Status report.
In summary, the #4 patch appears to be a D10 incompatibility module.
The attache patch #6, which corrects the problems to make the D10 module compatible with the D9 environment, is attached.
The attached problems have not yet been fixed .It has to be fixed in a D10 environment.
Comment #7
immaculatexavier commentedComment #8
kristen pol@immaculatexavier Thank you for participating in porting day and updating the patch with clear steps on what you did and what's left to do!
Moving to needs work for the rest of the deprecations.
Comment #9
wim leersOn top of everything in #6, I'm seeing this:
→ Change record: https://www.drupal.org/node/3143286.
Next up:
→ Change record: https://www.drupal.org/node/3201242
Then:
→ Change record: https://www.drupal.org/node/3000490
Finally:
→ that permission was unnecessary!
Finally,
linkit_testwas not yet marked as compatible with Drupal 10.All
KernelandFunctionaltests should now pass.Comment #10
wim leersI made a mistake — #9 does not include #6 🙈
Comment #12
wim leersOn Drupal 9.3:
→ because https://www.drupal.org/node/3000490 happened in 9.4.
I think it's reasonable to require Drupal >=9.4 at this time, since the whole point of this issue is Drupal 10 compatibility. Then this module would be compatible with 9.4, 9.5 and 10.0.
While at it, I removed
composer.jsontoo, since exactly the same file would be generated by the Drupal.org composer facade — and it was already out of sync with the information in the*.info.yml, which is exactly why it's better to just leave it to the facade.Comment #13
wim leersMissed one
FILE_STATUS_PERMANENTspot.And added a test-only dependency on https://www.drupal.org/project/ckeditor, to allow testing on Drupal 10.
Comment #14
damienmckenna+1 for requiring 9.4, if that's what's needed to make this compatible with D10.
Comment #15
wim leersApparently DrupalCI does not like a
composer.jsonexisting in HEAD but not in the patch. W/E, restoring it. 🤷♀️Comment #16
johnwebdev commented#16 Can remove composer.json through a separate issue if that helps.
Comment #17
wim leersA >=9.5-only failure occurs in
LinkitEditorLinkDialogTest:… which does not actually get changed here. It is most likely failing since https://www.drupal.org/node/3293540
Comment #19
wim leers🚀 consistent failures on all versions! 🥳
This causes
→ Change record: https://www.drupal.org/node/3156376
⇒ should now use https://www.drupal.org/project/jquery_ui_autocomplete — let's find out how that works!
Related: #3076171-174: Provide a new library to replace jQuery UI autocomplete.
… and next up, this will cause problems.
→ Change record: https://www.drupal.org/node/3273118
Comment #20
wim leersComment #22
wim leersComment #23
berdir> While at it, I removed composer.json too, since exactly the same file would be generated by the Drupal.org composer facade — and it was already out of sync with the information in the *.info.yml, which is exactly why it's better to just leave it to the facade.
Beside not being able to remove it, I'd vote to keep it anyway. test_dependencies should not be used anymore, use require-dev in composer.json instead. It works immediately in patches, test_dependencies only works after being committed when it's then essentially translated to require-dev. And only a having a composer.json allows per patch/MR override of core dependencies, allowing to run tests against D10.
> +1 for requiring 9.4, if that's what's needed to make this compatible with D10.
It's fairly simple to wrap it in a method exists check and have a fallback, which I've done in quite a few modules. But yes, the closer we get to 9.3 EOL, the more ok it is to require 9.4, fine by me.
Comment #24
wim leers🙈
Comment #26
wim leersWe cannot continue here until #3288098: Automated Drupal 10 compatibility fixes is fixed… 😬
Comment #27
berdirWell, jquery_ui stuff is quite a painful dependency with #3277748: Drupal 10 compatibility. That said, I don't think this should be set to postponed, at least that's not how I've worked those kind of issues. I've committed patches that weren't yet testable on D10, although that mostly was about test-only dependencies. And usually there were at least patches that could be tested locally.
Also, #22 hasn't been addressed yet, you really want to use require-dev, not test_dependencies.
Comment #28
berdirThat said, per #3277748: Drupal 10 compatibility, this might go in a direction where there is only jquery_ui and all other modules are deprecated, which honestly would make a lot of sense to me and would require that this patch changes, so probably waiting indeed makes sense.
Comment #30
project update bot commentedUpdating bot issue summary.See #3313904: Update project bot templates for RTBC status support and human interaction tips
Comment #31
wim leersActually, I do see a way forward to allow this to not be blocked on #3277748: Drupal 10 compatibility 🤓🥳
This uses
core/drupal.autocompleteto avoid a dependency on a contrib module with no D10-compatible release. It updates the code for compliance with https://www.drupal.org/node/3158256 and https://www.drupal.org/node/3273118.Comment #32
wim leersComment #33
wim leersFYI this fixes the test failures in #24.
All other changes in #31 are for D10 compatibility.
Comment #34
wim leersShould be green now!
Comment #35
wim leersLinkitUpdateTest::testLinkitUpdate8500was marked as being only for Drupal 8 more than a year ago, and Drupal 8 is unsupported at this point, so … no more need for that test!Comment #37
ameymudras commentedTested MR#9 with Drupal 10.0.x and php 8.1
- Was able to install the Linkit module without any issues
- The default profile appears and was able to save default profile
- Created a new profile and added matchers
- On /admin/config/content/formats basic formats I don't see any option to select profile like that of older versions
Moving to NW for this but I might be wrong on this one
Comment #38
wim leers#37: that's because you're using CKEditor 5. This issue is not dealing with CKEditor 5 support, just to make Linkit + CKEditor 4 (which requires https://www.drupal.org/project/ckeditor on Drupal 10) work as it did before.
For CKEditor 5 support, see #3232190: CKEditor 5 readiness.
Could you test again with CKEditor 4? 😊🙏
Comment #39
nx2611 commentedTested #35 in Drupal 10.1.x using gitpod.io. This is working for me. Here are the tests I took.
Comment #40
ameymudras commentedThanks Wim, tested again with the steps in #39 and it LGTM.
Comment #45
johnwebdev commentedThanks!
Comment #46
wim leersYay, thanks @johnwebdev! See you next in #3232190: CKEditor 5 readiness 🤓
Comment #47
wim leers@johnwebdev Could you please set up automated tests for
6.0.x-devat https://www.drupal.org/node/719864/qa? 🙏Comment #48
anon@Wim Leers
I added automated tests agains D10 now.
Comment #49
wim leers@anon Thanks for creating that, but https://www.drupal.org/pift-ci-job/2517134 is configured to use PHP 5.3, whereas Drupal 10 requires PHP 8.1 or newer 🤓 Could you tweak it? 🙏
Comment #50
johnwebdev commentedChanged to PHP 8.1 and MySQL 8
Comment #51
gambryWhat's the plan for releasing D10 compatibility?
It seems to be landed on 6.0.x branch, but a release hasn't been created yet.
Comment #52
wim leersIndeed, a
beta4would be nice 🤓Comment #53
kristen polThanks!
Comment #55
acbramley commentedBump, a beta4 would be much appreciated! Looking at the diff it looks like mostly D10 compat changes
Comment #56
roaldnel commentedAgreed, we would really appreciate an D10 compatibility update as well. Thanks to those that have contributed so far!
Comment #57
anybody@johnwebdev could we please have a tagged release? :) This blocks D10 upgrades.
Comment #58
rajab natshahThank you, John, Emil, for having time to maintain Linkit. The important editorial module.
Hoping for a soft tag release (
pre-release), to ease testing with physical Drupal 10 sites.Testing now with the
6.0.x-devdevelopment branch.Comment #59
loopy1492 commentedLooking good in our site as well. Thanks. Looking forward to a non-dev release.
Comment #60
fenstratNote @mark_fullmer has offered to co-maintain in #3338953: Offering to co-maintain LinkIt. Hopefully that'll help get out a new beta4 release.
Comment #61
anybodySadly still no release... @Maintainers any plans?
Comment #62
mark_fullmerPending the resolution of #3338953: Offering to co-maintain LinkIt, I plan to make a D10-compatible release, 6.0.0-alpha1. That will be followed shortly with a subsequent release that includes #3232190: CKEditor 5 readiness.
Comment #63
thomwilhelm commentedModule is currently at 6.0.0-beta3, so 6.0.0-alpha1 would be a backwards version.
Or do you mean 7.0.0-alpha1?
Comment #64
mark_fullmerHa. Thanks for keeping me honest! The D10-compatible release should be 6.0.0-beta4. There should be no reason to do a 7.x branch/release for D10 compatibility, given that it doesn't introduce backwards-compatibility-breaking changes.