[wp-trac] [WordPress Trac] #22316: Plugin Dependencies (Yet Another Plugin Dependencies Ticket)
WordPress Trac
noreply at wordpress.org
Sat Dec 29 14:06:12 UTC 2012
#22316: Plugin Dependencies (Yet Another Plugin Dependencies Ticket)
--------------------------+------------------------------
Reporter: Viper007Bond | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Plugins | Version: 3.4.2
Severity: normal | Resolution:
Keywords: dev-feedback |
--------------------------+------------------------------
Comment (by jltallon):
SUMMARY PROPOSAL:
1.- plugin-dependencies (w/ versioned dependencies and theme dependencies)
into core
2.- Class Loader (we can certainly even use the UniversalClassLoader from
Symfony here) into core
3.- "Library" plugins have one index.php file which just registers their
(sub-)namespace with the ClassLoader. All later loading is demand-based.
The declare "Provides:" and "Version:" à la Debian
4.- Functionality plugins work as usual (perfect backwards compatibility),
though they can (and should, IMHO) use "libraries" when possible. They
declare dependencies if at all posible, so that we can fail gracefully if
pre-conditions are not met (as opposed to just WSOD'ing)
5.- Themes can optionally depend on certain functionalities to be present
(via de same "Depends" mechanism). The theme chooser UI would need to be
refreshed to include some feedback for this, though.
Ideally, and with the auto-loader within core, quite some of WordPress'
itself can be demand-loaded: most of the admin (e.g. WP_Table/WP_List),
RSS functionality, image processing, etc.
The performance boost can indeed be huge (we have benchmarked the
performance gain of doing this with plugins, I expect the gain for WP
itself to be even more noticeable)
--
Ticket URL: <http://core.trac.wordpress.org/ticket/22316#comment:58>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software
More information about the wp-trac
mailing list