[wp-trac] [WordPress Trac] #36335: Next generation: core autoloader proposal
WordPress Trac
noreply at wordpress.org
Sat Aug 27 09:15:02 UTC 2016
#36335: Next generation: core autoloader proposal
-----------------------------+------------------
Reporter: dnaber-de | Owner:
Type: feature request | Status: new
Priority: normal | Milestone: 4.7
Component: General | Version:
Severity: normal | Resolution:
Keywords: has-patch | Focuses:
-----------------------------+------------------
Comment (by wonderboymusic):
In [changeset:"38399"]:
{{{
#!CommitTicketReference repository="" revision="38399"
Bootstrap: Autoload classes using a Composer-generated PHP 5.2-compatible
Autoloader.
* `wp-admin` and `wp-includes` are scanned for classes to autoload
* Several 3rd-party and Ryan McCue-shaped libraries are excluded when the
classmap is generated, see `composer.json`: `autoload.exclude-from-
classmap`
* `wp-vendor/autoload_52.php` is included at the top of `wp-settings.php`
- no changes need to be made to unit tests to include the autoloader
* An avalanche of `require()` and `require_once()` calls that loaded class
files have been removed from the codebase.
The following files have been added to `svn:ignore` - they are not
5.2-compatible and fail during pre-commit:
* src/wp-vendor/autoload.php
* src/wp-vendor/composer/autoload_real.php
* src/wp-vendor/composer/autoload_static.php
* src/wp-vendor/composer/ClassLoader.php
We favor these files instead:
* src/wp-vendor/autoload_52.php
* src/wp-vendor/composer/autoload_real_52.php
* src/wp-vendor/composer/ClassLoader52.php
When new PHP classes are added to the codebase, simply run `composer
install` or `composer update` from the project root to update the
autoloader.
The future is now.
See #36335.
}}}
--
Ticket URL: <https://core.trac.wordpress.org/ticket/36335#comment:87>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list