[buddypress-trac] [BuddyPress Trac] #6642: BP Template Versioning

buddypress-trac noreply at wordpress.org
Fri Oct 2 10:04:50 UTC 2015


#6642: BP Template Versioning
-----------------------------------------+--------------------------
 Reporter:  hnla                         |      Owner:
     Type:  enhancement                  |     Status:  new
 Priority:  normal                       |  Milestone:  2.4
Component:  Appearance - Template Parts  |    Version:
 Severity:  minor                        |   Keywords:  dev-feedback
-----------------------------------------+--------------------------
 This ticket introduces a new feature for 2.4 which provides BuddyPress
 with the ability to stamp it's templates with a version header allowing
 the checking of user overloaded templates.

 Background:
 This feature originally stemmed from a very brief idea I brought up on
 slack [https://wordpress.slack.com/archives/buddypress/p1425032322000019],
 later I discussed at greater length the principle with imath at WCLND in
 March, where we both felt there was some merit in the idea. Lately with
 some of the great features imath has been introducing that require
 template adjustments it became clear this template versioning would help
 with these features and imath has realised the original concepts in some
 solid code which in it's current form is pretty much fully working , and
 there was a discussion in Wednesdays devchat [https://github.com/imath/bp-
 template-checker] around implementing this feature thus we are now adding
 this ticket.

 The Benefits:
 Being able to know what a templates version is greatly helps us keep users
 up to date with any changes we may make from time to time with templates.
 We can use these checks to alert the user to new features introduced and
 the fact that their templates will
 need updating to take advantage of these features.

 * End users can keep track and have updated templates.
 * Theme designers can easily know what they need to update very quickly
 just by checking the settings screen.
 * Plugin developers can be confident templates will be up to date.
 * Core developers can safely build great new features.
 * Support can have a new means of establishing whether an issue is
 template related.

 This is a big win all round!

 The Implementation:
 Each template has a version header.
 A json file  maintains our version blocks with reference to changes  -
 changelog.json
 e generate a new tab screen in BP settings to display all templates that
 are checked and found not to match to the current template version
 whereupon we notify the user which template is outdated and list the
 changelog  features and when they were introduced.


 Currently imath has produced the feature as a plugin available on his
 github [https://github.com/imath/bp-template-checker]

 To avoid possible worry to non technical users seeing messages about
 outdated templates this feature is only activated if `define('WP_DEBUG',
 true);`

 Could all core developers and anyone else interested download and run the
 plugin, and leave any comments and suggestions on this ticket.
 [https://github.com/imath/bp-template-checker.git]

 We can have this added for the 2.4 release quite easily as most of the
 work is completed with really only fine detail to be looked at.

 Questions RFC:

 * Is this the correct or best approach putting headers into {@internal}}
 inline comments - comments and thoughts on this approach are sought.

 Todo:

 * Link the critical notified changes to our codex pages for code
 example/snippets for upgrading?
 * Need to browse trac for each template and navigate into their history to
 fetch changes in order to ba able to build the json changelog.
 * Each existing core template will need to have this internal version
 stamp added.

 Lastly we need  to thank imath  for realising what was a concept into
 really solid implementation so quickly.

--
Ticket URL: <https://buddypress.trac.wordpress.org/ticket/6642>
BuddyPress Trac <http://buddypress.org/>
BuddyPress Trac


More information about the buddypress-trac mailing list