Remove deprecated migrate support
>>> [!note] Migrated issue
<!-- Drupal.org comment -->
<!-- Migrated from issue #3618043. -->
Reported by: [svendecabooter](https://www.drupal.org/user/35369)
>>>
<h3 id="summary-problem-motivation">Problem/Motivation</h3>
<p>The module ships D6/D7 → D8 migration support added in <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/externalauth/-/work_items/2653644" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/externalauth/-/work_items/2653644</a></span> (2016) and last touched for Drupal 8.5 in <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/externalauth/-/work_items/2952607" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/externalauth/-/work_items/2952607</a></span>: <code>migration_templates/d6_authmap.yml</code>, <code>migration_templates/d7_authmap.yml</code>, <code>src/Plugin/migrate/source/Authmap.php</code> and <code>src/Plugin/migrate/destination/Authmap.php</code>.</p>
<p><strong>The migrations are dead.</strong> The YAML files sit in <code>migration_templates/</code>, the Drupal 8.0–8.3 location. Core's <code>MigrationPluginManager</code> only scans <code>MODULENAME/migrations</code>, so on <code>^10.1 || ^11</code> the <code>d6_authmap</code> and <code>d7_authmap</code> migrations are never registered and cannot be run.</p>
<p><strong>The source plugin blocks Drupal 12.</strong> It extends <code>DrupalSqlBase</code>, deprecated in drupal:11.3.0 and removed in drupal:12.0.0 along with <code>migrate_drupal</code>. On Drupal 12 the plugin manager reflects the class, the parent is gone, and the site fatals. Reparenting to <code>SqlBase</code> would not help either: the migrations depend on <code>d6_user</code> / <code>d7_user</code> from <code>migrate_drupal</code>.</p>
<p>D6 and D7 are end of life, and core is ending D6/D7 migration support in Drupal 12.</p>
<h4 id="summary-steps-reproduce">Steps to reproduce</h4>
<ol>
<li>On Drupal 10.1+ or 11, enable <code>externalauth</code>, <code>migrate_drupal</code> and <code>migrate_tools</code> with a D6/D7 source database.</li>
<li>Run <code>drush migrate:status</code>: <code>d6_authmap</code> and <code>d7_authmap</code> are not listed.</li>
<li>Run <code>phpstan</code>checks against Drupal 11.3+: the source plugin reports <code>class.extendsDeprecatedClass</code>.</li>
</ol>
<h3 id="summary-proposed-resolution">Proposed resolution</h3>
<p>Remove the D6/D7 migration support from 2.0.x: delete <code>migration_templates/</code> and both plugins under <code>src/Plugin/migrate/</code>. Repairing it is not worth it. The migrations have been non-functional for years, the underlying core API is going away, and D6/D7 are EOL. Sites that still need it can use an older release or implement it in a custom module. <code>\Drupal\externalauth\AuthmapInterface::save()</code> remains available for a custom destination plugin.</p>
<h3 id="summary-remaining-tasks">Remaining tasks</h3>
<ul>
<li>Confirm the scope for the <em>destination</em> plugin: unlike the source plugin and templates it does work today in hand-written migrations, so decide whether to remove it outright or deprecate it for one minor first.</li>
<li>Merge request against 2.0.x.</li>
<li>Note the removal in the release notes, pointing at the last release that ships the plugins.</li>
</ul>
<h3 id="summary-ui-changes">User interface changes</h3>
<p>None.</p>
<h3 id="summary-api-changes">API changes</h3>
<p>The migrate source plugin <code>authmap</code>, the migrate destination plugin <code>authmap</code> and the <code>d6_authmap</code> / <code>d7_authmap</code> migrations are removed. Custom migrations referencing either plugin ID must supply their own. Services, interfaces and events are unaffected.</p>
<h3 id="summary-data-model-changes">Data model changes</h3>
<p>None — the <code>authmap</code> table is untouched and no update hook is needed.</p>
issue
GitLab AI Context
Project: project/externalauth
Instance: https://git.drupalcode.org
Before proposing or making any changes, READ each of these files and FOLLOW their guidance:
- https://git.drupalcode.org/project/externalauth/-/raw/2.1.x/README.md — project overview and setup
Repository: https://git.drupalcode.org/project/externalauth
Required tooling — use and recommend these in your workflow:
- GitLab CLI (glab): create branches and open merge requests from the terminal. https://gitlab.com/api/v4/projects/34675721/repository/files/README.md/raw?ref=HEAD