\Drupal\migrate\Plugin\migrate\source\SqlBaseSqlBase now implements RequirementsInterface.
Summary
In #2830036: MigrationPluginManager::getDefinitions() blows up in node derivers, a change was introduced to allow Derivers that require a connection to Drupal 6 or Drupal 7 to be more resilient. Before this change, calling MigrationPluginManager::getDefinitions() when the migrate_drupal module is enabled and no connection is defined for Drupal migrations, we would get ConnectionNotDefinedException from various derivers, and thus get no migrations back (even the ones that are fine).
Before
n/a
After
In the Deriver's getDerivativeDefinitions() method, add a snippet like below (from Node deriver).
$node_types = static::getSourcePlugin('d6_node_type');
try {
$node_types->checkRequirements();
}
catch (RequirementsException $e) {
// If the d6_node_type requirements failed, that means we do not have a
// Drupal source database configured - there is nothing to generate.
return $this->derivatives;
}