Dev Chat Summary: August 31 (4.7 week 2)

This post summarizes the dev chat meeting from August 31st (agenda, Slack archive).

Holidays & Scheduling

  • Reminder to announce meeting moves or cancellations (e.g., Monday is US Labor Day holiday, Monday after is Eid al Adha)

Update on 4.6.1

  • 4.6.1-RC1 planned for release tomorrow (Thursday, September 1). Provides a nice window for testing before the planned release date of September 7.
  • Status:

#36335: Autoloader and #37699: Globals

  • Discussion framing: see these as being feature projects in their own right, examples of when features can’t be actual plugins and why it’s better to think of them as projects. How can these be worked on effectively?
  • Discussion:
    • New project on GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ that’s a clone of the WP GitGit Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance. Most modern plugin and theme development is being done with this version control system. https://git-scm.com/. repo
    • grunt patch allows you to use GitHub PR URLs, which can help facilitate testing for people that prefer using SVNSVN Subversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. or are using SVN for their trunk installs.
    • TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. + SVN workflow seems to work best when we’re dealing with patches and discussion leading to an individual commit; is probably a pretty poor option without some additional tools.
    • Creating feature branches for wide-ranging work seems to be a better fit and allows for less churn of the code in trunk at the same time as other major work.
    • Nice to review & collaborate on a big feature on a GitHub feature branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". as opposed to wrangling conflicting and amending patches on Trac
  • Suggestion to @wonderboymusic: fork @jorbin‘s GitHub mirror, use GH issues and develop in various branches as makes sense (or even separate forks entirely if issues become unwieldy across very different projects), and use PRs to run existing CI setup. PRs can then be used as patches in grunt patch
    • If treated as a feature project, all of that project’s management happens wherever the lead feels best serves that project. There should also be weekly meetings with updates posted on Make/CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. @wonderboymusic to determine a meeting time and post about it next week.
    • @wonderboymusic@helen in agreement on approach; GitHub repo created
  • Related question: How do we determine what sort of tasks should be feature projects? Who decides that? And when?
    • Some things to think about – is it a lot of churn? Does it need to span multiple releases and/or is it a “done when it’s done” process? Is there a lot of design and user testing involved? They exist whenever somebody has a thing they believe belongs in core and wants to run with it in that way. Getting feedback is an evolving process.

4.7 Project/Feature Proposals

  • Goal: come out of this with the start of a list of projects and a point person for that project, to be fleshed out with more participants and meeting times over the next week.
  • @johnbillionHTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information.
  • @celloexpressions – Customize component project & owner
    • Create page-based nav menus without leaving live preview – #34923@celloexpressions (follow up tickets forthcoming)
    • A new experience for themes in the customizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.#37661@celloexpressions
    • Code-editing gateways, via CSSCSS Cascading Style Sheets.#35395@johnregan3
    • Customizer browser history – #28536@westonruter
    • Refactoring sliding panels UIUI User interface#34391@delawski
    • (maybe) Customize transactions (with no UI) – #30937@westonruter
    • will track all of the Customize projects with the weekly Customize component meetings and Make/Core posts usually posted on Thursdays starting this week
  • @krogsgardREST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.
    • had a productive start on Monday and will have a summary up shortly
  • @boonebgorges – #20875
    • work with cache drop-in authors so that we can start leveraging across WP
  • @davidakennedy – #19627
  • @helen – there needs to be a dedicated theming APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways./support team because there will be a Twenty Seventeen; actual details on that next week. There will need to be really robust teams on both the theme and theme support pieces, likely with subteams even.
    • @karmatosed: splitting core themes as a bucket for all theme into, core themes and theme functionality
    • @helen: noting that theme functionality will spill over into other components (media seems incredibly likely)
    • @themiked: interested in theming work, on the API/support side if that’s whats needed
  • @joemcgill – Media focus candidate & owner; will shepherd these through regular #core-images meetings
    • Media library organization improvements (@mike/@joemcgill)
    • Improved full size image optimizations – #37840 (@mike/@joemcgill)
    • Core Media WidgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user.#32417 (@sheri)
    • HTTPS issues (which @johnbillion already mentioned)
    • PDF Thumbnails – #31050 (@markoheijnen)
  • @azaozz – will publish “4.7 editor wishlist” by the end of the week
    • to include Nonce refresh/saving without page reload, and few others
  • @sc0ttkclark – Fields API

Ways YOU Can Help!

  • Please comment below if there are things that didn’t get mentioned that you’d like to lead.
  • Design help and user test coordination (alongside @karmatosed) desired on #37661 by @celloexpressions, please respond if you’re open to help on this.

#4-7, #core, #dev-chat, #summary