The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site forย general updates, status reports, and the occasional code debate. Thereโs lots of ways to contribute:
Found a bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.?Create a ticket in the bug tracker.
What does the CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. team do?
Core is made up of contributors from many different areas and teams across WordPress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/. Because Core is made up of many different components and parts, there is a ton of overlap with the other Make teams (polyglots, themes, plugins, metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress., etc.). It is an exciting and dynamic place to observe or contribute.
The team holds a weekly developer chat in the Make WordPressย #coreย channel on SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/ every Wednesday at 20:00 UTC.
New Contributor Meetings are held in the same channel on the 2nd and 4th Wednesdays just prior to the weekly developer chat at 19:00 UTC.
What areas of Core will I be able to work on at WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what theyโve learned throughout the year and share the joy. Learn more. Europe 2023?
The Core team and the Core WordPress software is segmented in a number of ways. While there will be some community leaders present representing some specific parts of the Core team, you can contribute to any of these segments at Contributor DayContributor DayContributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/ and there will likely be several contributors experienced in these areas. These are the most common ways that youโll see Core divided.
Components
Currently, there are 62 components and sub-components within Core. These represent overarching categories of functionality within the code base. Some examples of these are Database, External Libraries, TaxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies., Feeds, etc. A handful of components also have sub-components. For example, Embeds, Gallery, and Upload are sub-components of the Media component.
Focuses
In TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress., there are also several focuses. Focuses are disciplines or concepts that span many components, or even the entire Core code base. Some examples of these are accessibility, coding-standards, rest-api. Contributors that specialize in these focuses often work with many different component maintainers.
Sub Teams
There are also a few contributor groups that are still technically under Core, but operate as their own team. Some examples of this are Editor, Performance, AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both โdirect accessโ (i.e. unassisted) and โindirect accessโ meaning compatibility with a personโs assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility). These sub teams will each be represented by table leads at contributor day.
Preparing for Contributor Day before leaving home
Register for a WordPress.org profile and the WordPress.org Slack instance
The large majority of the communication around contributing to the WordPress open sourceOpen SourceOpen Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. projects happens on WordPress.org or in the WordPress Slack instance. Your first step should be to register for both in that order.
A majority of the Core components and sub teams also have their own channels within the WordPress Slack instance.
Install required software to contribute to the code
For those who would like to contribute by way of writing or checking code, the most popular method is by having a local development environment installed on your system.
Installing local environments are likely to be easier and quicker before you arrive at the conference venue. Conference WiFi can often be unreliable or be over-burdened. Getting set up before the event can help reduce the time you will spend installing and setting up the software on the day. You can then get onto more interesting things when you are at the conference!
In order to contribute to Core from a development perspective, you will need the following software installed on your machine:
GitGitGit 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/ or SVNSVNSubversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. (whichever you prefer)
NodeJS (WordPress currently requires NodeJS 14.x)
npm (comes bundled with NodeJS)
Composer (optional, but highly recommended)
Additionally, you will need to choose one of the following:
For those who would like to contribute by way of writing or checking code, the most popular method is by having Vagrant & VVV (Varying Vagrant Vagrants) installed on your system.
Once you are ready, move on toย https://varyingvagrantvagrants.org/docs/en-US/installation/ย where you will find all the relevant information on how to get set-up and ready to run a local version of WordPress. Where you will be able to edit plugins, themes and core WordPress files.
Note: There are other tools that can be used to set up a local development environment (such asย Local), but the two above are the ones maintained and have official support.
Decide how youโre going to work with the codebase
Thereโs a few options for you to work with theย wordpress-developย codebase.
Note:ย if you chose the Vagrant/Virtualbox/VVV option above, the default is the third option below, but you can change that later.
Forking WordPress/wordpress-develop on GitHubGitHubGitHub 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 by the repository owner. https://github.com/
This option will allow you to submit and work within a pull request on GitHub. When using this option, all of the configured automated testing will run on your code to help verify your change. You canย read more about this option in the Core Handbook.
Using WordPress/wordpress-develop directly
With this option, youโll clone theย wordpress-develop repositoryย locally and use that as your codebase. You wonโt be able to push any changes or submit pull requests, but you will be able to create patches with your changes to submit on Trac.
Using SVN to check out WordPress
With this option, youโll checkout the `trunktrunkA directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision.` branchbranchA 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". of theย develop.svn.wordpress.orgย repository to use as your local WordPress site. Any changes you make need to be submitted as patches.
Docker Option
Below are the basic steps to get started with the local Docker environment:
Clone your repository of choice from the previous section. If youโre using a fork that you created, the command will look like this:ย git cloneย git@github.com:{your GitHub username}/wordpress-develop
Runย cd wordpress-developย to move into the directory created by the git clone.
Runย npm installย to install dependencies
Runย npm run env:startย to start the development environment
Runย npm run env:installย to set up clean installation with the userย adminadmin(and super admin)ย and the passwordย password
Runningย npm install,ย vagrant up, orย npm run env:startย can be networknetwork(versus site, blog) intensive. Run these at home before you leave for the event and confirm everythingโs working as expected. Depending on what you work on during Contributor Day, you may need to run these commands again. But having dependencies, virtual boxes, and containers cached locally will greatly decrease the time they take to run at the event.
Try creating patches or a PR ahead of time. If youโre able to start working on a ticketticketCreated for both bug reports and feature development on the bug tracker. before the event, contributors at the event can give you feedback on your work so far.
Many thanks to all the contributors who helped with materials for this post โ as ever with WordPress, it is a real team effort! Special thanks to @desrosj who collected much of the preparation information, toย @wpscholarย for sharing his more detailed document from a previous WordCamp, and to @webcommsat who pulled together the material from different editions. Thanks also to @sergeybiryukov, @jeffpaul and @webcommsat for review and contributions, and to @audrasjb, @paulbearne, @mark99, @vimes1984, @meher, @oglekler for contributions and review for material used from previous editions of this post. Thanks to @davidbaumwald, @joemcgill for review of the checklist.
After WordCamp Europe, a version of this post will be added to the Core Team Handbook.
If youโre planning on attending Contributor DayContributor DayContributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/ for #WCAsia, CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.CommittercommitterA developer with commit access. WordPress has five lead developers and four permanent core developers with commit access. Additionally, the project usually has a few guest or component committers - a developer receiving commit access, generally for a single release cycle (sometimes renewed) and/or for a specific component. and long time Core Contributor Jonathan Desrosiers (@desrosj) has created a wonderful checklist and list of things to expect.
List of โgood first bugsโ to get started in TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. and a similar list of โgood first issuesโ for Gutenberg.
There will be two working groups: โ Coding working group (coordinated by @garrett-eclipse); โ Non-coding working group (coordinated by @carike).
Pre-event office hours:
โ 3 June 2020 at 10:00 UTC; โ 3 June 2020 at 19:00 UTC.
Pre-event office hours are to help onboard new contributors. This primarily involves making sure that they have access to the tools necessary for the day.
StreamYard: Privacy Policy: https://streamyard.com/resources/docs/privacy/ Terms of Service: https://streamyard.com/resources/docs/tos/ We will be using StreamYard, as a number of experienced contributors in coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.-privacy have expressed an unwillingness to use Zoom due to privacy considerations.
Core TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. (coding working group): Privacy Policy: https://wordpress.org/about/privacy/
GitHubGitHubGitHub 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 by the repository owner. https://github.com/ (coding working group): Privacy Policy: https://help.github.com/en/github/site-policy/github-privacy-statement Terms of Service: https://help.github.com/en/github/site-policy/github-terms-of-service
How to participate:
As a host: If you are interested in hosting one or more topics, please comment below. You can contact @carike on Slack if you would like more information.
As a guest via StreamYard: You DO NOT need to register a StreamYard account in order to enter the stream as a guest. You DO NOT need to download any program in order to use StreamYard. It is an in-browser solution. You DO NOT need to appear on-screen if that is not something you are comfortable with. An audio-only option is available. Weโre going to be using a very practical approach, so Iโm going to be screen-sharing most of the time anyway. We will provide new contributors with instructions on joining StreamYard as a guest via e-mail. Instructions can also be found here: Guest Instructions: https://streamyard.com/resources/docs/guest-instructions/ We will provide new contributors with a link to join the stream via Direct Message (DM) on Slack, as there can only be six contributors โonscreenโ (or via audio) at any one time (i.e. two hosts and four new contributors), with up to four additional new contributors in the โwaiting roomโ.
As a guest via YouTube: You DO NOT need to register an account with YouTube in order to watch the stream. You DO need to register an account and be logged in to YouTube in order to participate in the live chat. StreamYard supports integrating live chat messages from YouTube. This will allow for more real-time input and also allow participation among those who do not want to use audio, or appear onscreen. We are trying to recruit experienced contributors to help moderate the YouTube live chat to ensure compliance with the WCEU Code of Conduct, as well as to highlight any questions, comments and suggestions to the hosts. Please comment below if you are able to help with YouTube live chat moderation. You can find a copy of the WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what theyโve learned throughout the year and share the joy. Learn more. Europe Online 2020 here: https://2020.europe.wordcamp.org/code-of-conduct/
Via Trac (coding working group): You DO need to register an account with WordPress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ in order to comment on Trac tickets.
Via GitHub (coding working group): You DO need to register an account with GitHub in order to create / comment on issues or to create / comment on Pull Requests (PRs).
On the day:
Coding working group:
13:00 โ 16:00 UTC (coding working group) Garrett will be available on Slack during this time.
The coding working group will participate via Slack, Core Trac and GitHub. @garrett-eclipse is going through the list of privacy-related tickets to mark them with the โgood first bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.โ tagtagA directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) where applicable. For the more adventurous, there is the option to contribute to โhelp wantedโ tickets for the next major releasemajor releaseA release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope. (WordPress 5.5.). An overview of current privacy tickets can be found here: https://make.wordpress.org/core/components/privacy/
Non-coding working group:
The non-coding working group will have two two-hour sessions.
13:30 โ 15:00 UTC How to market without destroying user privacy (working title only). Hosts: @carike and @jonoaldersonwp During this session, we hope to identify online marketing best-practices that can be implemented even when users have opted-out (or not opted-in, depending on the jurisdiction) to being tracked with the view of creating actionable Trac tickets and / or to provide a resource for content marketing. Topics will include: โ What is informed consent in a marketing context? โ Which digital marketing strategies were employed pre-the-ability-to-track-across-platforms and how may we able to adapt these? โ Which data points may still remain available for analytics if a user opts out of / does not opt in to the collection of their PPI. Jono is โspecial opsโ at Yoast SEO and we are very excited to have him participate.
16:00 โ 18:00 UTC A case study in the application of the Privacy Workflow Document and the Disclosures and Permissions (DPT) tabs. Hosts: @carike and @pepe In this session, we will be attempting to harmonize the Privacy Workflow Document and the Disclosures and Permissions (DPT) tabs and apply them practically to the WP Job Manager pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party.. The desired outcome for this session is an action plan for an education drive among plugin and theme authors regarding the proposed disclosures.json file. Pepe has previously presented at WordCamp, is very involved with the #core-privacy team and was helped to create the draft Privacy Workflow Document. His insight will be invaluable to this session.
You can view the Slack logs here: https://wordpress.slack.com/archives/C9695RJBW/p1589396619341400 In order to view the logs, you will first need a WordPress.org account: https://login.wordpress.org/register You will then need to register a Slack account: https://make.wordpress.org/chat/
Change log: 14 May 2020 at 14:15 UTC โ @carike added GitHub information. 14 May 2020 at 17:45 UTC โ @carike updated formatting in the Slack links. 16 May 2020 at 11:35 UTC โ @carike switched out the non-coding session starting at 16:00 UTC, as Pepe has agreed to co-host. 18 May 2020 at 18:05 UTC โ @carike added the times Garrett will be available on Contributor Day. 1 June 2020 at 13:55 UTC โ @carike changed the start time for the first non-coding session in order to accommodate the WCEU introductions. 3 June 2020 at 19:40 UTC โ @carike added details for the workgroup sessions and removed the third session.
As part of the coming online/virtual WCEU, weโve been asked to plan for how CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. will handle anย online Contributor Day.ย The specific items weโve been asked to consider:
Ensure new contributor meeting happens between 25 May and 3 June, alerting the WCEU Contributor Day teamย via comment
Record a video intro about the Core team, similar to the live intros usually given in-person
Confirming list of good-first-issues and experience-issues for Contributor Day
Identifying 2+ experienced contributors to help facilities during Contributor Day
Plan for a live intro session at the beginning of Contributor Day
So Iโm looking to you all to help here: who can help cover any of these tasks and help during the actual WCEU Contributor Day event? Please comment on this post noting which of the bulleted needs above are items you can assist with, thanks!
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. editor team released Gutenberg version 6.8.
Dev chat meeting time
Like every year, with end of DST (daylight saving time), the meeting time should be moved from 20:00 UTC to 21:00 UTC.
Two options are proposed:
Moving on Wednesday November 13th (the day after WP 5.3 is going to be released)
Moving on Wednesday November 20th (one week later)
Please share your thoughts in this postโs comments.
WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what theyโve learned throughout the year and share the joy. Learn more. US Contributor DayContributor DayContributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/
WordCamp USโs contributor day is planned for Sunday 3rd November.
5.3 was branched last week, so contributors will be able to work on WordPress 5.4 milestone since trunk is now version 5.4-alpha.
@earnjam and @wpscholar will be leading the core table, Helping people get set up, learn how to get started, find places to focus on work, etc. They also should have several component leads present that can split off and focus on their areas for people who are interested.
Upcoming Releases
WordPress 5.3 Release Candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 4 is scheduled next Tuesday if needed.
@azaozz regrets that things werenโt reported much earlier, during betaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process.. By the way, two tickets have patches already, one is almost there, and one may be a candidate for 5.3.1. As 5.3 was branched, all fixes are probably going to be committed to trunktrunkA directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision. (5.4-alpha) but hold on on merging to 5.3 for couple of days to allow easier testing and review. All are (possible) regressions with the way some plugins use particular hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. around image post-processing and image metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. updates.
@joyously reported a feedback found in Alpha/Beta support forum. It was already merged to Gutenberg and looks fixed in 5.3 blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor code. @youknowriad was pinged as Editor focus lead for WP 5.3.
Open floor
@joyously asked about backporting security fixes to old versions requestโs status.
@desrosj added that there was a very large amount of feedback. @chanthaboune and others are working to compile all that feedback so that all of it can receive proper consideration.
If you need access to Make/Flow, ask in #coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.-flow on SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/ or around the physical room youโre in (if itโs full of contributors).
Observe screens, actions, and results throughout the network admin.
This can happen during or after step 1. You can also just do this without the first step.
Look for things that donโt make sense, visual errors, pieces that are difficult on mobile, etcโฆ
This can be with or without a TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.ticketticketCreated for both bug reports and feature development on the bug tracker.. With or without a screenshot.
Acts as a note so that we know that to come back to as part of the overall admin UIUIUser interface improvement effort.
Open a ticket if there is none. Add screenshots if there are none. Confirm/deny the issue.
And patchpatchA special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing.. If thereโs a ticket on the screen sweep sheet that you can patch, submit away.
While this is an ordered list, you do not need to treat it like one. Pick a step that feels comfortable and concentrate on that. If you need guidance, there are folks in Slack that are always happy to help.
By all means, if you have a device that is already captured, donโt hesitate to capture it in your own way or to skip step 1 entirely and start observing.