[wp-trac] [WordPress Trac] #36335: Next generation: core autoloader proposal

WordPress Trac noreply at wordpress.org
Wed Aug 31 18:49:59 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 johnjamesjacoby):

 > In "pluggable.php" this is the intended behaviour, and the design is
 bad.

 The design in `pluggable.php` is /bad/ because it only allows 1
 opportunity to intercept, with no additional way to verify or override the
 decisions made before you.

 The audience of developers actually needing to dig this deep is -
 admittedly - infinitesimal; but to them, the design of `pluggable.php` is
 a critical aspect of their WordPress powered application; they couldn't do
 what they need to do without a hundred other bespoke actions & filters.

 What's a bigger maintenance burden: hundreds of tiny decisions, or 1 big
 one? I think it's maybe a-horse-a-piece.

 FWIW, huge swaths of both BuddyPress & bbPress can internally be gutted &
 swapped out, but (anecdotally) I've yet to see breakage or complaints (or
 even really communicate the need for this functionality above the high-
 availability environments I've been involved in that have directly
 required it.)

 {{{
 // For example...
 define( 'BP_PLUGIN_DIR', 'anywhere/you/want' );         // BuddyPress
 add_filter( 'bbp_includes_dir', 'anywhere/you/want/' ); // bbPress
 }}}

 Will this cause advanced developers to think outside of the box?
 Absolutely. Hopefully. The alternative is standing in the way of
 creativity, and enforcing artificial constraints into a system that is
 largely defined by it's flexibility already.

--
Ticket URL: <https://core.trac.wordpress.org/ticket/36335#comment:138>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list