Summary of the release
We’re now calling for testing of 0.7 Release Candidate 1 (v0.7-RC1) which continues to address user-reported issues for the WordPress AMP plugin. This release adds features and fixes to v0.7-beta1 and should be the last beta before 0.7 is released.
In v0.7-beta1, we added support for Native AMP (previously called “AMP Canonical”), added support for all default widgets and embeds, enabled native commenting support in AMP, and introduced AMP notifications for when posts that contain content that trigger validation errors, or when themes or plugins add invalid AMP markup that similarly cause issues.
In this release, we also extended the work with comments from 0.7-beta1. We also added expanded AMP core support, allowing you to use several new AMP components. Finally, we also spent a lot of time with error surfacing, both by making fixes to under-the-hood sanitization/validation and by providing a UI for debugging validation errors, complete with source stack traces for invalid AMP markup.
For more details on the v0.7-RC1 release, scroll down to the full list of changes. To see this plugin on a live site, including the Native AMP experience in full effect, check out the AMP Conf Theme demo site. (Further details regarding our AMP Conf demo theme, built to demo AMP features, can be found in the theme repo.)
Call for beta testers
We’re really close to releasing the next milestone release v0.7, but before we do, we need your help to test v0.7-RC1. By testing, you’ll be able to get an early look at the features that will improve your AMP workflow and help us ship better software.
We encourage you to download the pre-release (amp.zip) and take it for a spin. While we want you to test, this software is still in development, so we don’t recommend you run it on a production site just yet.
Found a bug? Please open an issue on the AMP Plugin Repository.
List of changes
Below you will find a complete list of all items included in the v0.7-RC1 release.
1. Improved Comment Support
Native WordPress commenting is possible in fully valid AMP with ‘amp’ theme support, since 0.7-beta1 (#871, #909). We’ve also built another option for themes to use using <amp-live-list> to display comments. This improves user experience by dynamically notifying a user when new comments are posted to a given post and also avoids full-page refreshes after a user submits comments (#1029). As a part of these enhancements, we’ve also added comment sorting support (#1024), which leverages a brand new feature in AMP (which is largely the reason for the delay for RC1).
2. Expanded AMP core support
AMP is fast, powerful and feature packed: As the open source AMPhtml project continues to evolve and adds new components, so does the AMP for WordPress plugin. Here are a few highlighted additions you’ll find in this release:
- Run spec update to add support for amp-mathml, amp-riddle-quiz, amp-wistia-player, amp-byside-content, and amp-bind-macro (#943), among other new components and attributes.
- Support native AMP audio and video playlists (#841, #954).
- Remove ‘sizes’ attribute for <amp-iframe> and <amp-video>. (#937).
3. Improved error surfacing
We’ve made a few key under-the-hood improvements and built a few ways to inform users of what’s wrong and why.
To make AMP happen on WordPress, we use a sanitizer to convert theme page templates to valid AMP markup. As introduced in 0.7-beta1, we’ve created a UI interface for the validator to programatically find and identify errors.
These issues and pull requests describe some of the most recent efforts to help users render valid AMP by default, without errors, and understand errors when they do come up:
- An initial UI for listing validation errors, including invalid tags and attributes including the ability for you to identify what’s causing issues, whether by a given plugin or theme, with tracking sources for enqueued scripts and styles, shortcodes, and widgets (#971). We are actively developing this feature and intend to refine and expand on it for upcoming releases.
3. Other fixes to note
The hard work by contributors doesn’t stop here. Several community pull requests were submitted during this period since v0.7-beta1:
- Add validation of URL host names (#983).
- Facilitate using AMP components outside of AMP documents (AMP in PWA, “dirty AMP”) (#1013).
- Prevent schema.org duplicates (#992).
- Fix: Sanitize <img> tags when src attribute contains only spaces (#1030).
- Fix: Refine handling of 0 and empty height/width attributes (#979).
- Eliminate use of safecss_filter_attr() in processing style attributes since redundant and lossy (#1004).
- Add sanitization support default stylesheet for theme support (#964).
- Add customizer theme support (#952).
- Set AMP_QUERY_VAR fallback when AMP is inactive; introduce amp_get_slug() (#986).
- For media widgets, prevent MediaElement.js scripts and styles from being enqueued (#1061).
- Fix: Remove AMP admin meta box from non-public post types (#957).
- Fix: Focus first radio button in AMP status (#973).
- Fix: Backtrack Limit Exhausted (#993).
For an even more comprehensive look at all changes made and issues that were resolved during the v0.7-RC1 development period, please visit the GitHub repo. Please open an issue if you find a problem in testing, and we are excited to share the work we’ve done so far with you.
Contributors in this release, including design, development, testing, and project management: Adam Silverstein (adamsilverstein), Alberto Medina (amedina), Christian Chung (christianc1), Claudio Sossi, David Cramer (DavidCramer), Davis Shaver (davisshaver), Douglas Paul (douglyuckling), Jason Johnston (jhnstn), Joshua Wold (jwold), Kaitlyn (kaitnyl), Leo Postovoit (postphotos), Mackenzie Hartung (MackenzieHartung), Maxim Siebert (MaximSiebert), Mike Crantea (mehigh), Mohammad Jangda (mjangda), Oscar Sanchez (oscarssanchez), Philip John (philipjohn), Renato Alves (renatonascalves), Rubén (rubengonzalezmrf), Ryan Kienstra (kienstra), Thierry Muller (ThierryA), vortfu, Weston Ruter (westonruter), Ziga Sancin (zigasancin). Thank you all.