Problem/Motivation

This module has been made D9 compatible via:

#3042631: Drupal 9 Deprecated Code Report for LinkIt module
#3094598: Set core_version_requirement and resolve remaining deprecation for 8.7 & fix test location
#3094545: ConfigurablePluginInterface is deprecated

but there is no release with the Drupal 9 changes and the project page doesn't reflect the Drupal 9 status.

Proposed resolution

Create a new release which will then show the Drupal 9 version compatibility.

This could be a D8 style release, e.g.

8.x-5.0-beta11

or a semantic version release, e.g.

6.0-beta1

per https://www.drupal.org/node/3108648

or both.

Remaining tasks

  1. Tag new release
  2. Review project page to make sure ^9 shows up

User interface changes

API changes

Data model changes

Release notes snippet

CommentFileSizeAuthor
#15 3138818-15.patch1.01 KBjoseph.olstad

Comments

Kristen Pol created an issue. See original summary.

kristen pol’s picture

Issue summary: View changes
jeroent’s picture

+1.

tkruger’s picture

+1

d70rr3s’s picture

Also worth checking the automated reports #3140981: Automated Drupal 9 compatibility fixes

jeroent’s picture

@d70rr3s,

The issue you mention fixes deprecations for linkit 8.x-4.x. The 8.x-5.x-branch is already Drupal 9 compatible.

bramdriesen’s picture

+1 :)

munish.kumar’s picture

+1 for the tag release.

anon’s picture

Added a git tag, but I can not add a release for it.

Added 6.0.0-beta1 and 8.x-5.0-beta11.

anon’s picture

Status: Active » Fixed
bramdriesen’s picture

Awesome! Thanks :)

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.

joseph.olstad’s picture

Drupal 9 compatibility is still broken in the latest beta12 release, not sure if you're aware of it but go to the linkit configuration page and manage your 'matchers'

it will crash...

Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: You have requested a non-existent service "path.alias_manager". Did you mean this: "path_alias.manager"? in Drupal\Component\DependencyInjection\Container->get() (line 151 of core/lib/Drupal/Component/DependencyInjection/Container.php).

grep alias_manager * -R
src/Plugin/Linkit/Matcher/EntityMatcher.php: public function __construct(array $configuration, $plugin_id, $plugin_definition, Connection $database, EntityTypeManagerInterface $entity_type_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info, EntityRepositoryInterface $entity_repository, ModuleHandlerInterface $module_handler, AccountInterface $current_user, SubstitutionManagerInterface $substitution_manager, AliasManagerInterface $alias_manager, ConfigFactoryInterface $config_factory) {
src/Plugin/Linkit/Matcher/EntityMatcher.php: $this->aliasManager = $alias_manager;
src/Plugin/Linkit/Matcher/EntityMatcher.php: $container->get('path.alias_manager'),

joseph.olstad’s picture

here's a change that might help:

diff --git a/src/Plugin/Linkit/Matcher/EntityMatcher.php b/src/Plugin/Linkit/Matcher/EntityMatcher.php
index f4619f9..4abeb9b 100644
--- a/src/Plugin/Linkit/Matcher/EntityMatcher.php
+++ b/src/Plugin/Linkit/Matcher/EntityMatcher.php
@@ -14,7 +14,7 @@ use Drupal\Core\Entity\EntityTypeManagerInterface;
 use Drupal\Core\Entity\Query\QueryInterface;
 use Drupal\Core\Extension\ModuleHandlerInterface;
 use Drupal\Core\Form\FormStateInterface;
-use Drupal\Core\Path\AliasManagerInterface;
+use Drupal\path_alias\AliasManagerInterface;
 use Drupal\Core\Session\AccountInterface;
 use Drupal\Core\Url;
 use Drupal\language\Plugin\LanguageNegotiation\LanguageNegotiationUrl;
@@ -151,7 +151,7 @@ class EntityMatcher extends ConfigurableMatcherBase {
       $container->get('module_handler'),
       $container->get('current_user'),
       $container->get('plugin.manager.linkit.substitution'),
-      $container->get('path.alias_manager'),
+      $container->get('path_alias.manager'),
       $container->get('config.factory')
     );
   }
joseph.olstad’s picture

StatusFileSize
new1.01 KB
sj.suraj’s picture

@anon - Just wanted to understand what's the difference between 6.0.x and 8.x-5.x releases?