[wp-trac] [WordPress Trac] #47837: Proposal: Componentized Upgrades

WordPress Trac noreply at wordpress.org
Mon Aug 5 15:58:02 UTC 2019


#47837: Proposal: Componentized Upgrades
--------------------------+------------------------------------------------
 Reporter:  mdwolinski    |      Owner:  (none)
     Type:  enhancement   |     Status:  new
 Priority:  normal        |  Milestone:  Awaiting Review
Component:                |    Version:
  Upgrade/Install         |
 Severity:  normal        |   Keywords:  dev-feedback needs-design-feedback
  Focuses:                |
--------------------------+------------------------------------------------
 Recently there has been some talk about the cadence of updates for
 components of WordPress compared to the core updates.  The current
 practice is that new functionality is added into subversions (5.1, 5.2,
 etc) and only bug fixes are in minor versions (5.2.1, 5.2.2, etc).

 However there are components that are having releases quicker then core,
 meaning that users may not see additional functionality until the next
 version release, which can be months away.  This proposal, at a high
 level, is intended to propose a solution that allows for a user to update
 components outside of the core updates.

 === Mockup
 '''Important''': this is just a concept mockup for discussion purposes to
 highlight some of the functionality.


 === Accessibility Note
 The mockup above and the functionality described below is most likely not
 the ideal way to implement the functionality in a completely accessible
 way.  Those who are more knowledgable on the subject should be consulted
 to modify the functionality in a way that works for all users.

 === Functionality
 The main concept is to have the ability to update components independently
 from core if they become available.  The mockup above represents a
 timeline between the currently installed version of Core (v5.2.2 above)
 and the currently planned version (v5.3).

 The '''WordPress Core''' line, by default is collapsed and would not show
 the components below it.  This would then function as the current upgrade
 functionality does and update all components at the same time.  Expanded,
 this allows the user to upgrade individual components as they wish.

 In the mockup:
 * '''Black Dots''' indicate the current installed version for Core and
 components.
 * '''Green Dots''' are versions available to install.
 * '''Red Dots''' are unavailable to install (see more below).
 * '''Yellow Dots''' are next versions in development with estimated
 release schedule.
 * '''Red Line''' Current Day.
 * '''Dotted Line''' future.
 * '''Solid Line''' past.

 === Reading The Version State
 The user has the '''Wordpress Core''', '''Customizer''', '''Site
 Health''', and '''Passwords''' installed at v5.2.2.  They have 4 newer
 versions of Gutenberg installed and one newer version of the Rest API
 installed.

 If the user upgraded Core to v5.2.3, it would update all components to
 that point, meaning that Core defines the minimum version for all
 components.

 On the Gutenberg line, for example, the user has a version installed and
 can, if they wish, go back up to two versions (two grey dots), however,
 because of an update change in the version + 2 (first grey dot), they are
 unable to back port the version before that (two red dots).  Perhaps a DB
 change or something.  The user can, however, upgrade an additional version
 (which was released the same day at v5.2.3 core) but the next newer
 version requires core to be at v5.2.3 so it is unavailable to update (or
 another reason, who knows).

 The '''Site Health''' component is unable to be updated because it might
 require the newer version of '''Rest API''' as an example.

 Hovering or clicking on the dots allows the user (either via popup, tool
 tip or another means) to see details on that release, upgrade to it if
 available, and link to release notes.  On future releases (yellow dots),
 the information can show the estimated release date, etc.

 === Expanded Plugin Support
 The concept above could also be expanded to third-party plug-ins and
 themes.

 Integration with Site Health could be included as well, for example, if
 5.2.4 required a newer version of PHP then is currently installed, the dot
 for it would go red and allow the user to see what is blocking the upgrade
 to it before the release of it.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/47837>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list