Change record status: 
Project: 
Introduced in branch: 
7.x-2.x
Introduced in version: 
7.x-2.x-dev
Description: 

Upgrade path

  1. Ensure none of the removed functions are used within your codebase.
  2. Download 2.x version of the module
  3. Remove old version and replace it with newly downloaded
  4. Run drush autoload-rebuild and drush cc all

Removed functions

  1. autoload_paths()
  2. autoload_paths_recompute()
  3. autoload_seek_classes()
  4. autoload_namespace_to_path()
  5. autoload_path_to_namespace()

New functions

  1. autoload() - returns the AutoloadCache object which implements \Countable, \ArrayAccess and \Iterator interfaces.

How to replace the autoload_seek_classes()?

It's easier than you may think.

$modules = module_list();
$plugins = [];

foreach (autoload() as $namespace => $data) {
  if (
    // Class provider enabled.
    isset($modules[$data['provider']]) &&
    // Class implements required interface.
    is_subclass_of($namespace, 'YOUR_BASE_CLASS_OR_INTERFACE') &&
    // Class not abstract.
    (new \ReflectionClass($namespace))->isInstantiable()
  ) {
    $plugins[$namespace] = $data + [
      'implements' => class_implements($namespace),
    ];
  }
}
Impacts: 
Module developers