Slide 1

Slide 1 text

I found a bug! What next? Bryan Petty [email protected] github.com/tierra

Slide 2

Slide 2 text

Types of Bugs ● Security Flaw ● Plugin or Theme Bug ● WordPress Core Bug

Slide 3

Slide 3 text

Security Issues ● Your site being hacked is not necessarily a security issue (but can be if you know how it was hacked). ● Responsibly and Privately Disclose ○ [email protected] ● Exploit Scanner Plugin

Slide 4

Slide 4 text

Plugins and Themes ● Disable plugins and themes one at a time (try switching to one of the default themes included with WordPress) ● If one is guilty, don’t report it to the WordPress issue tracker (Trac). ● WP.org plugins and themes have dedicated support forums for issues. ● Check with your marketplace for reporting issues with premium plugins and themes.

Slide 5

Slide 5 text

WordPress Core Bugs ● If the bug can be reproduced on a clean installation of the latest version of WordPress without any plugins installed and using a default theme, it’s a core bug. ● Core bugs reported in Trac

Slide 6

Slide 6 text

Steps for Reporting a Core Bug 1. Ensure it’s actually a bug in core. ○ Fresh installation, or use Debug Bar plugin 2. Search Trac for a similar report of the same bug before submitting a ticket. 3. Consider discussing the issue first on IRC or on the support forums. 4. Submit your bug to Trac: ○ http://core.trac.wordpress.org/newticket

Slide 7

Slide 7 text

Trac Ticket Fields ● Summary or Title ● Description ● Type ○ defect (bug), enhancement, feature request ● Version ● Keywords ● Component ● Severity

Slide 8

Slide 8 text

Filling out Ticket Description ● What steps should be taken to consistently reproduce the problem? ● What is the expected output? What did you see instead? ● Include environment details: ○ Browser, Operating System, Server OS, PHP Version, MySQL Version

Slide 9

Slide 9 text

Patches Welcome ● Version Control: Subversion ● TortoiseSVN on Windows, Cornerstone on OS X, command line on Linux ● Repository Checkout URL: ○ https://develop.svn.wordpress.org/trunk ● Patch Demo Time!

Slide 10

Slide 10 text

Coding Standards ● HTML, PHP, CSS, and JavaScript Coding standards help avoid common coding errors, improve the readability of code, and simplify modification. They ensure that files within the project appear as if they were created by a single person. Following the standards means anyone will be able to understand a section of code and modify it, if needed, without regard to when it was written or by whom. http://make.wordpress.org/core/handbook/coding-standards

Slide 11

Slide 11 text

Effective Communication ● Subscribe to Trac bug report updates ○ Configure email in Trac profile, use CC field for existing issues, and/or subscribe to wp-trac ● Address issues and refresh patches. ● Bring up tickets in IRC for discussion (but not during meetings). ● Follow up on tickets with feedback on how you’ve tested patches. ● Don’t be afraid to ask questions.

Slide 12

Slide 12 text

Beyond Bugs: Feature Plugins ● New features being developed by the core team, except within official plugins. ● Integrate plugins into core releases starting from version 3.8. ● Very open and focused teams with dedicated meetings and lead reps. ● Follow team updates on: ○ http://make.wordpress.org/ ● Small features still developed in patches on the issue tracker (Trac).

Slide 13

Slide 13 text

Questions speakerdeck.com/u/tierra Bryan Petty [email protected] github.com/tierra