Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
* 1952498 Add DbCacheClassLoader.
* d2d842b Move test modules from VirtualFilesystem into real files in tests/fixtures/.modules.
* e5cfe91 Change libraries integration.
* b9a788f remove StaticCallLog stuff from where it doesn't belong.
* d3eb1cb Add a @see docblock.
* 7ee0916 Don't let ProxyClassFinder initialize twice.
* 6d96777 Document that AbstractCachedClassLoader::checkRequirements() returns true or false and does not throw an exception.
* 52f8f5b cleanup: linebreak at end of class.
a6edb89 Fix hardcoded paths in DiscoveryTest::testWildcardFile
7fd74a7 The ServiceContainerInterface should have a __get() method.Finder().
0f70254 Add docblock and rename a parameter for Main::registerExtension() and Main::registerExtensionPsr4().
Fix MissingDirPlugin_DrupalExtensionPrefix, for module names with underscores.
This fixes a bug where the classloader breaks if you move a module around.
- Add xautoload_test_3 module in the web tests.
- Introduce CommonRegistrationInterface, so stuff like addPsr4() can be shared between class finder and adapter.
xautoload loader should come after the core loaders, but before classloader.
Also, add an unregister() method to all loaders.
Only in unit tests need we prepend the class loader, to avoid hitting a malconfigured database with the core loader.
Features:
- If you use registerPrefixRoot('My_Prefix', 'mypath'), it will now also register the file 'My_Prefix.php' at the root level.
Bug fixes:
- Fixed a bug in xautoload_InjectedAPI_hookXautoload, that would prevent registered prefixes from working correctly.
Code improvements:
- Change the MapEvaluator architecture. It does no longer behave recursive. Also, the confusing variable name '$path_prefix_symbolic' has been replaced by '$first_part' in the map evaluator.
- Some documentation improvements for ClassLoader.
Major new features:
- Introduction of hook_xautoload()
- Support for PSR-0 in sites/all/libraries with hook_libraries_info()
- Support discovery of test classes, including those in disabled modules.
Further changes:
- Added xautoload.api.php for documentation.
- Example module to demonstrate test loading
- Some trivial code changes and bug fixes
Various additions:
- more comments
- variations of file_exists(): checkNothing, and checkIncludePath. This allows xautoload to be used for CiviCRM.
- avoid errors on first install, due to hook_boot implementation not being recognized yet.