Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use custom SQL instead of transient for queue lock #5239

Merged
merged 6 commits into from Oct 3, 2016

Conversation

gravityrail
Copy link
Contributor

@gravityrail gravityrail commented Oct 2, 2016

It seems that sometimes transients don't work the way we expect - in essence, the expiry is too unreliable for our purposes, and can leave sync queues permanently locked.

This PR implements the sync queue lock in pure SQL in order to avoid caching and other weirdness.

cc @lezama

Proposed changelog

Use SQL for queue lock as transients have had caching and infinite timeout issues

@gravityrail gravityrail added [Status] Needs Review To request a review from Crew. Label will be renamed soon. [Team] Poseidon [Package] Sync labels Oct 2, 2016
@gravityrail gravityrail added this to the 4.3.2 milestone Oct 2, 2016
@gravityrail gravityrail self-assigned this Oct 2, 2016
return set_transient( $this->get_checkout_transient_name(), $checkout_id, 5 * 60 ); // 5 minute timeout
global $wpdb;

$expires = time() + ( 5 * 60 );
Copy link
Contributor

@lezama lezama Oct 2, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

( 5 * 60 ) could be a constant in Jetpack_Sync_Defaults, there's a global MINUTE_IN_SECONDS constant in WP that we could use for this

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. Also going to update timeout to one minute.


if ( ! $updated_num ) {
$wpdb->query(
$updated_num = $wpdb->prepare(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you mean $updated_num = $wpdb->query :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

if ( ! $updated_num ) {
$wpdb->query(
$updated_num = $wpdb->prepare(
"INSERT INTO $wpdb->options ( option_name, option_value ) VALUES ( %s, %s )",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we try to INSERT first?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed in Slack, updating in place and never deleting is a better strategy for MySQL performance (we think) so going to leave this ordering as-is.

@lezama lezama added [Status] Needs Author Reply We would need you to make some changes or provide some more details about your PR. Thank you! and removed [Status] Needs Review To request a review from Crew. Label will be renamed soon. labels Oct 2, 2016
@lezama
Copy link
Contributor

lezama commented Oct 2, 2016

nice! left a couple of comments

@gravityrail gravityrail removed the [Status] Needs Author Reply We would need you to make some changes or provide some more details about your PR. Thank you! label Oct 3, 2016
Copy link
Member

@enejb enejb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great. I think we should add a way to clean up the value of the option when the user deletes jetpack.

delete_transient( $this->get_checkout_transient_name() );
global $wpdb;
// rather than delete, which causes fragmentation, we update in place
$wpdb->query(
Copy link
Member

@enejb enejb Oct 3, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not just delete the value from the DB?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because it turns out updates in place are typically faster than inserts+deletes in MySQL, if you expect to be doing them a lot.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That makes sense :)

$updated_num = $wpdb->query(
$wpdb->prepare(
"INSERT INTO $wpdb->options ( option_name, option_value ) VALUES ( %s, %s )",
$this->get_lock_option_name(),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should set the option to not be auto loaded here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh damn! Great catch.

@lezama
Copy link
Contributor

lezama commented Oct 3, 2016

Looks great to me. 🚢 once tests pass!

@gravityrail gravityrail merged commit 61c0242 into master Oct 3, 2016
@gravityrail gravityrail deleted the fix/use-option-for-sync-queue-lock branch October 3, 2016 22:26
jeherve added a commit that referenced this pull request Oct 12, 2016
samhotchkiss pushed a commit that referenced this pull request Oct 13, 2016
* Changelog: add #5140

* Changelog: add #5209

* Changelog: add #5042

* Changelog: add #5125

* Changelog: add #5119

* Changelog: update release date.

* Bump stable tag, move changes to changelog.txt

diff --git a/changelog.txt b/changelog.txt
index 1b45682..cb711d2 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -2,12 +2,12 @@

 = 4.3.1 =

-* Release date: September 7, 2016
+* Release date: September 8, 2016

-**Enhancements**
+**Support Enhancements**

-* Sync data on the host being used by any given site so that we can provide better support when things break.
-* Update inline docs to match version numbers. #5089
+* We're now syncing data about hosts so that we can provide better support when needed.
+* Minor update to inline docs to match version numbers.

 **Bug Fixes:**

@@ -15,6 +15,8 @@
 * Admin Page: fix error when Post By Email could not be enabled when the browser's dev console was enabled.
 * Admin Page: make sure all translated strings are encoded properly.
 * Admin Page: only use POST requests for updating the state of Jetpack, to avoid issues on servers not allowing PUT requests.
+* Admin Page: search icon no longer overlaps the global notices.
+* Admin Page: make sure that non-admins can also modify Spellchecking settings.
 * General: Improve random number generation for compatibility with more hosts.
 * General: Add deprecated PHP file (class.jetpack-landing-page.php) back as an empty file, to avoid generating fatal errors on sites with aggressive caching.
 * General: Ensure concatenated CSS is generated for RTL languages.
@@ -22,6 +24,7 @@
 * Stats: fix display for sites with pretty permalinks disabled.
 * Subscriptions: ensure that no email is sent when updating a published post.
 * Sync: To improve performance, add snapTW to the list of post meta data that won't be synchronized for each post.
+* Sync: do not schedule a full sync after each import.
 * Verification Tools: in the Settings card, use appropriate link for each service.

diff --git a/readme.txt b/readme.txt
index fbdcf09..9ff5d5b 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,7 +1,7 @@
 === Jetpack by WordPress.com ===
 Contributors: automattic, adamkheckler, aduth, akirk, allendav, alternatekev, andy, annezazu, apeatling, azaozz, batmoo, barry, beaulebens, blobaugh, cainm, cena, cfinke, chaselivingston, chellycat, csonnek, danielbachhuber, davoraltman, daniloercoli, designsimply, dllh, drawmyface, dsmart, dzver, ebinnion, eliorivero, enej, eoigal, ethitter, gcorne, georgestephanis, gibrown, goldsounds, hew, hugobaeta, hypertextranch, iammattthomas, iandunn, jacobshere, jblz, jeherve, jenhooks, jenia, jgs, jkudish, jmdodd, Joen, johnjamesjacoby, jshreve, koke, kraftbj, lamdayap, lancewillett, lschuyler, macmanx, martinremy, matt, matveb, mattwiebe, maverick3x6, mcsf, mdawaffe, michael-arestad, migueluy, mikeyarce, mkaz, nancythanki, nickmomrik, obenland, pento, professor44, rachelsquirrel, rdcoll, ryancowles, richardmuscat, richardmtl, roccotripaldi, samhotchkiss, scarstocea, sdquirk, stefmattana, stephdau, tmoorewp, Viper007Bond, westi, yoavf, zinigor
 Tags: WordPress.com, jet pack, comments, contact, gallery, performance, sharing, security, shortcodes, stats, subscriptions, widgets
-Stable tag: 4.3
+Stable tag: 4.3.1
 Requires at least: 4.5
 Tested up to: 4.6.1

* Add info for #5166

* Add section for 4.3.2

* Changelog: add #5172, #5190, #5194, #5171

* Changelog: add #5173

* Revert "Add section for 4.3.2"

This reverts commit 81a43088ad8308ffa4bfb57f1c75c6b7d638d572.

* Changelog: add #5206

* Changelog: add #5204

* Changelog: add #5195

* Changelog: Add #4701

* Changelog: add #5166

* Changelog: add #5224

* Changelog: add #5246

* * Changelog: add #5192

* Changelog: add #5207

* Changelog #5247

* Changelog #5232

* Changelog #5230

* Changelog #5165

* Changelog #5154

* Changelog #5153

* Changelog #5109

* Changelog #5085

* Changelog #5072 and #5079

* Changelog #4997

* Changelog #4797

* Changelog #4595

* Alphabeticalize

* Changelog #5261

* Changelog: add  #5258

* add #5264

* Changelog: clarify #5154

* Fix permissions check #5294

* Changelog: add #5296

* Changelog: add #5285

* Changelog: add #5277

* Changelog: add #5276

* Changelog: add #5288

* Changelog: add #5152

* Changelog: add #5157

* Changelog: add #5185

* Changelog: add #5238

* Changelog: add #5239

* Changelog: add #5257

* Changelog: add #5264

* Changelog: add #5269

* Changelog: add #5275

* Changelog: add #5293

* Changelog: add #5298

* Changelog: add #5299

* Changelog: add #5302

* Changelog: add #5306

* Changelog: add #5245

* Changelog: add #5305

* Changelog: add #5229

* CHangelog: add #5213

* Changelog: add #5205

* Changelog: add #5179

* Bump version

* Nicified Readme

diff --git a/changelog.txt b/changelog.txt
index 9d920a1..78ee043 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -1,1972 +1,38 @@
-<<<<<<< HEAD
 == Changelog ==
-
-= 4.3.1 =
-
-* Release date: September 8, 2016
-
-**Support Enhancements**
-
-* We're now syncing data about hosts so that we can provide better support when needed.
-* Minor update to inline docs to match version numbers.
-
-**Bug Fixes:**
-
-* Admin Page: fix error when Admin Page resources could not be fetched with `wp_remote_get` due to unique host configurations.
-* Admin Page: fix error when Post By Email could not be enabled when the browser's dev console was enabled.
-* Admin Page: make sure all translated strings are encoded properly.
-* Admin Page: only use POST requests for updating the state of Jetpack, to avoid issues on servers not allowing PUT requests.
-* Admin Page: search icon no longer overlaps the global notices.
-* Admin Page: make sure that non-admins can also modify Spellchecking settings.
-* Admin Page: check that a json language file like jetpack-en_US.json is readable before loading its contents and thus avoid a PHP warning.
-* General: Improve random number generation for compatibility with more hosts.
-* General: Add deprecated PHP file (class.jetpack-landing-page.php) back as an empty file, to avoid generating fatal errors on sites with aggressive caching.
-* General: Ensure concatenated CSS is generated for RTL languages.
-* Security: Ensure that all options are included on the security tab.
-* Stats: fix display for sites with pretty permalinks disabled.
-* Subscriptions: ensure that no email is sent when updating a published post.
-* Sync: To improve performance, add snapTW to the list of post meta data that won't be synchronized for each post.
-* Sync: do not schedule a full sync after each import.
-* Verification Tools: in the Settings card, use appropriate link for each service.
-
-
-= 4.3 =
-
-* Release date: September 6th, 2016
-
-**Exciting Performance and UI Improvements:**
-
-* We have launched the all new React powered interface, a year in the making, designed to give you better control of your favorite Jetpack features.
-
-= 4.2.2 =
-
-* Release date: August 19th, 2016
-
-**Bug Fixes:**
-
-* We fixed the code which displays the Facebook share count to accomodate Facebook's new data structure.
-* We fixed an issue which caused PHP notices to get logged for users of the Twenty Fourteen theme.
-* We fixed an issue with the Minileven mobile theme which was preventing it from loading.
-* Improved Sync performance.
-* Increase security by sanitizing a URL used in the SSO process.
-
-= 4.2.1 =
-
-* Release date: August 17th, 2016
-
-**Bug Fixes:**
-
-* We fixed a conflict between Jetpack and W3 Total Cache.
-* We fixed some issues with Publicize and Custom Post Types.
-* Very large Multisite networks with lots of users can now be synchronized with WordPress.com.
-* We improved the synchronization process between your site and WordPress.com.
-
-= 4.2 =
-
-* Release date: August 10th, 2016
-
-**Performance Enhancements:**
-
-* We’ve improved Jetpack’s performance by making calls to the database more efficient; essentially, Jetpack is doing less on each page load, making things faster. #4281, #4316
-* We’ve ensured that every feature uses information that is up to date by completely refactoring the way information was synchronized between your site and WordPress.com.
-* We've improved the way Jetpack queries for information about features, which results in less overall queries.
-
-**Exciting Feature and UI Improvements:**
-
-* We now track your visitor views of Carousel images in stats.
-* You can now customize advanced typographic settings like ligatures in the Custom CSS editor with new support for the `font-feature-settings` property.
-* We’ve improved the experience when you don’t actually have enough posts to Infinitely Scroll.
-* Our Contact Info Widget allows you to enter a Google Maps API Key which is now required by Google if you want to display a map.
-
-**Security:**
-
-* We’re continuing our efforts to harden Jetpack security, by implementing the `hash_equals()` function to avoid timing attacks when comparing strings.  We also improved security on CSVs exported from your contact form.
-
-**Slightly Less Exciting Feature Improvements:**
-
-* The Cartodb shortcode has been changed to match the new product name, Carto.
-* The YouTube shortcode now uses the content width defined by the theme when available, even if an embed size was defined in an old version of WordPress.
-* Breadcrumbs now support hierarchical post types and taxonomies.
-* We’ve added the Portfolio Post Type to the WordPress.com REST API whitelist.
-* There are a few new parameters for the Dailymotion shortcode.
-
-**Improved Compatibility:**
-
-* We now work well with WP Stagecoach staging sites, so you should not see any future impact on production sites.
-* We had some PHP notices popping up in the WooCommerce plugin wizard screen, these are gone.
-
-**Bug Fixes:**
-
-* We stopped loading compatibility stylesheets on the default theme's singular views for Infinite Scroll.
-* Debug tests forwarded through the contact form in the Jetpack Debug menu are now successfully sent to the support team.
-* We’ve removed the PHP notices you might have seen when moderating comments.
-* There are no longer PHP notices cropping up when publishing via Cron.
-* We’ve fixed the official Sharing buttons so they now line up just right.
-* The PHP warnings of Sitemaps stylesheets have been eliminated.
-* We’ve done away with the warnings that appeared when Tonesque processes a file which claims to be one filetype, but is actually another.
-* We’ve exterminated PHP notices that appeared when using Random Redirect, as well as when the author wasn't set.
-
-= 4.1.1 =
-
-* Release date: July 7th, 2016
-
-**Bug Fixes:**
-
-* SSO: Use high-resolution Gravatar images on the log-in form on Retina devices.
-* Publicize: improve reliability of Publicize when publishing new posts.
-
-= 4.1 =
-
-* Release date: July 6th, 2016
-* Release Post: http://wp.me/p1moTy-3jd
-
-**Performance Enhancements:**
-
-* Carousel no longer loads full-size images in the previous and next previews, increasing the speed and performance of slideshows.
-* We’ve improved Jetpack’s performance by making calls to the database more efficient; essentially, Jetpack is doing less on each page load, making things faster.
-* We’ve improved Photon dev mode, eliminating unnecessary attempts to sync images.
-
-**Exciting Feature and UI Improvements:**
-
-* A new look: SSO, redesigned and refactored, provides a new and improved experience.
-* Tracking made simple: quickly view the number of unread feedback submissions in your sidebar.
-* Getting support just got easier! Access improved self-help tools in the Jetpack Debug menu.
-* Greater control over Infinite Scroll: pause and resume Infinite Scroll with two new JavaScript methods.
-* Improved Sharing: we’ve swapped image icons for icon fonts and added Telegram and WhatsApp buttons.
-* Untappd shortcode: now you can sip and share your favorite craft brews. Cheers!
-* Recipes, revamped: we’ve added new recipe shortcodes and options to create more detailed recipes.
-* Improved Gallery Widgets now use Photon to resize and serve images.
-
-**Security:**
-
-* We’re continuing our efforts to harden Jetpack security by implementing the `hash_equals()` function in an effort to avoid timing attacks when comparing strings.
-* We’ve made it easier to use SSL connections on ports `80` and `443`, improving our ability to communicate with an increased number of secure websites.
-* You will now receive a warning for any failed attempts when connecting your website via SSL.
-
-**Slightly Less Exciting Feature Improvements:**
-
-* Updated the Infinite Scroll settings verbiage, which was a bit confusing.
-* Removed Jetpack Audio Shortcode, which is no longer in use.
-* Redesigned Jetpack banner notices to match core notification styles.
-* Added an icon on a connected Jetpack user’s profile page, next to their name.
-* Added the ability to edit Portfolio custom-post-type options in the Customizer.
-* Added a new filter called `jetpack_publicize_capability` which allows you to override user role restrictions for Publicize.
-* Improved the connection process between Jetpack and WordPress.com making it easier to start using Manage.
-* Updated the Top Posts Widget so you can use and display posts that are older than 10 days.
-* Updated the Twitter Timeline Widget to support updates made by Twitter.
-* Improved the VideoPress Shortcode modal.
-* Updated VideoPress, which now defaults to HTML5 videos when the `freedom` shortcode parameter is in use.
-* Improved how Jetpack syncs by removing mock options.
-* Updated the naming convention for feedback posts.
-* Updated several JSON API endpoints to match WordPress.com endpoints, added support for custom taxonomies, and enabled trash as a valid status for the post update endpoint.
-
-**Improved Compatibility:**
-
-* A community member found and fixed a compatibility issue with our Open Graph Meta Tags and Bitly’s older plugin -- we now check to make sure we don’t create conflicts.
-* We’ve fixed a rare scenario where an error would occur when other plugins or sites were using the `JETPACK__GLOTPRESS_LOCALES_PATH` constant.
-
-**Bug Fixes:**
-
-* Comment avatars are now retrieved in a manner more consistent with the login avatar, improving consistency and eliminating the possibility of a future bug.
-* We eliminated PHP notices that were appearing when Custom Content Types were defined without labels or sections.
-* PHP memory limits were reached in rare cases when a website had thousands of revisions of their Custom CSS. The issue is fixed -- happy editing!
-* jQuery deprecated the `size()` function -- as a result, we’ve stopped using it as well.
-* A PHP notice popped up when plugins were updated from the WordPress.com plugin management interface -- these notices will no longer appear.
-* We fixed a bug where Photon wasn’t providing the original size for images that were being used outside of the post content.
-* We eliminated the PHP notices that displayed when posts with slideshows were added to a sitemap.
-* We fixed an error that was showing up in Sitemaps when a website permalink structure used `index.php`.
-* We eliminated JavaScript errors that displayed when tiled galleries were viewed.
-* We fixed an issue where image dimensions weren’t properly saved when added to a new widget.
-* Since Google Maps API keys are now required to use maps, we’ve updated the Contact Info Widget to allow site owners to set up their keys.
-* We fixed a bug where multiple `display` properties weren’t able to be saved in Custom CSS.
-
-= 4.0.4 =
-Release date: June 20th, 2016
-Release Post: http://wp.me/p1moTy-3eT
-
-Security:
-
-* Post By Email: Added an additional layer of security to prevent unauthorized changes to Post By Email settings.
-* Likes: Fixed an XSS vulnerability in the Likes module.
-* REST API/Contact Form:  We've eliminated unauthenticated access to Feedback posts.
-
-Feature Improvements:
-
-* Customizing Protect: We've increased Protect’s response time and added a new filter, `jetpack_protect_connect_timeout`, reducing the likelihood of seeing the fall back form.
-* Connection Process: Your site url and icon are displayed on the Jetpack connection screens to help improve communication.
-* Jetpack for Multisite: It’s now easier to manage your Jetpack connections on the network admin screen.
-* Photon Responsive Image Improvements: We’re now auto-generating new scrset options, improving how images served from Photon are handled.
-* Developing on Kinsta: A new constant has been added to improve developing with Jetpack on a staging environment hosted with Kinsta.
-
-Jetpack UI Improvements:
-
-* Better Access to Our Support Team: We wanted to make it easier for you to get help so we added a contact form in the admin that links directly to our Jetpack Support Team.
-
-Improved Compatibility:
-
-* We’ve stopped adding Open Graph Meta tags if you’re using the SEO Framework plugin.
-* Having both GlotPress and Jetpack active at the same time was causing errors, we’ve eliminated them.
-
-Bug Fixes:
-
-* Fixed the handling of special characters like ampersands in Carousel Titles and Descriptions.
-* When visitors tried to view a Carousel image with a hash in the URL, a JavaScript error would occur; we’ve fixed that.
-* Jetpack Comment form fields now use the default language you’ve set for WordPress, previously the verbiage was always in English.
-* Custom CSS wasn’t handling slashes and quotes properly; we’ve squashed that bug.
-* There were some rare cases where PHP notices were popping up when a Contact Form was submitted. These instances have been identified and eliminated.
-* We’ve replaced a bit of code with a Jetpack native function to fix a bug that was breaking things during an API request for available updates.
-* We accidentally removed the ability for Open Graph to select images from slideshows, it’s up and running again.
-* There was an issue where Open Graph meta tags weren’t being set when your homepage is a “Static Front Page”, it’s working again.
-* In rare cases when developers were customizing Photon they were seeing a PHP notice when arguments were passed as a string rather than an array. This has been fixed.
-* We’ve fixed an issue where Protect’s backup math form wasn’t showing on custom front end login forms.
-* When setting up WooCommerce you might have seen a Related Posts notice which didn’t belong. We’ve eliminated them.
-* If you’ve been using our sharing tool with unofficial sharing buttons you might have noticed your sharing numbers were missing. They’re now back.
-* In unique situations where special characters were used in sitemap stylesheets an error would occur; that has been remedied.
-* We’ve fixed a problem with mismatching HTML tags in our Spelling and Grammar feature.
-* We’ve ensured that the `jetpack_disable_twitter_cards` filter actually removes Twitter cards.
-* We’ve fixed some JavaScript errors that would crop up if you were editing a custom-post-type post that didn’t support the core media editor — say that 10 times fast.
-* We had some JavaScript errors when you were using the customizer to modify widgets. They are no longer with us.
-
-= 4.0.3 =
-Release date: May 26th, 2016
-Release Post: http://wp.me/p1moTy-3hm
-
-* Important security update. Please upgrade immediately.
-
-= 4.0.2 =
-Release date: April 21st, 2016
-
-Bug Fix:
-
-* Addresses an issue where Jetpack 4.0 caused a fatal error on sites with specific configurations.
-
-= 4.0 =
-Release date: April 20th, 2016
-Release Post: http://wp.me/p1moTy-3dL
-
-Performance Enhancements:
-
-* Protect: the routine that verifies your site is protected from brute-force attacks got some love and is more efficient.
-* Contact Forms: cleaning the database of spam form submission records is more efficient.
-
-Feature Improvements:
-
-* VideoPress: edit your VideoPress shortcode in the editor with a fancy new modal options window.
-* Custom Content Types are now classier: a new CSS class on Testimonial featured images — has-testimonial-thumbnail — allows you to customize Jetpack custom post types as you see fit.
-* Sharing: social icons are now placed under the "add to cart” singular product views in WooCommerce, making it easier for customers to share your products on social media.
-* Theme Tools: search engines will now have an easier time knowing what page they are on, and how that page relates to the other pages in your site hierarchy with improved schema.org microdata for breadcrumbs.
-* Widget Visibility: now you can select widgets and when to show or hide them right from custom post type single and archive views.
-
-Jetpack UI Improvements:
-
-* What’s in it for me? We’ve done a better job explaining the benefits of Jetpack and connecting it to WordPress.com.
-* Shortcodes: handy links to shortcode documentation convey the types of media you can quickly and safely embed.
-* Widgets: As of WordPress 4.5, Jetpack widgets now refresh in the customizer without making you refresh the entire page. Live previews, yes indeed.
-
-Bug Fixes:
-
-* Comments: we fixed a mistake where a comment subscription checkbox appeared on custom post types — despite the fact you couldn’t actually subscribe to those types of comments. Our bad.
-* Contact Forms: we fixed a bug where the telephone field (which can only be added manually) rendered incorrectly — breaking some forms in the process.
-* General: we blocked direct access to the Jetpack_IXR_Client class which caused fatal PHP errors in some server setups.
-* Shortcodes: we removed the frameborder attribute in the YouTube embed code. It was deprecated in HTML 5.
-* Unminified responsive-videos.min.js in order to address a false positive virus alert in ClamAV. Expect it to be re-minified in 4.0.3 once we resolve the issue with ClamAV.
-
-= 3.9.6 =
-Release date: March 31st, 2016
-Release Post: http://wp.me/p1moTy-3bz
-
-Bug fix: Shortcodes: fixed incorrect Vimeo embed logic.
-
-= 3.9.5 =
-Release date: March 31st, 2016
-Release Post: http://wp.me/p1moTy-3bz
-
-This release features several WordPress 4.5 compatibility changes that make several Jetpack features work properly in the Customizer view. Big thanks to @westonruter for contributing the code!
-
-Other enhancements and bug fixes:
-
-* Contact Form: no longer calling the datepicker method if it's not available.
-* SSO: settings checkboxes now honor filters and constants that restrict certain sign-in modes.
-* Shortcodes: fixed a problem with Gist fetching.
-* Shortcodes: fixed invalid HTML5 markup in YouTube embed code.
-* Shortcodes: made the Vimeo links work properly in case of multiple mixed uses in one post.
-
-= 3.9.4 =
-Release date: March 10th, 2016
-Release post: http://wp.me/p1moTy-396
-
-Bug fix: Shortcodes: Addresses an issue with embedded Vimeo content
-
-= 3.9.3 =
-Release date: March 9th, 2016
-Release post: http://wp.me/p1moTy-396
-
-Featured:
-
-* Site Logo now supports Custom Logo - a theme tool to be introduced in WordPress 4.5.
-
-Enhancements:
-
-* Carousel: Made the full size image URL use a Photon URL if enabled.
-* Comments: Removed an unnecessary redirect by always connecting via HTTPS.
-* General: Added new actions that fire before automatic updates.
-* Infinite Scroll: Introduced a later filter for settings.
-* Infinite Scroll: Removed code that is now redundant due to WordPress Core.
-* Markdown: Removed deprecated markup from the output.
-* Publicize: Improved handling of featured images in posts.
-* Shortcodes: Added houzz.com support.
-* Sitemaps: Added a language attribute to the news sitemap.
-* Sitemaps: Improved the image retrieval mechanism for posts.
-* Widgets: Added new filters in the Top Posts Widget code.
-* Widgets: Cleaned up the CSS for the Subscription widget.
-
-Bug Fixes:
-
-* Comments: No longer reloading the page on clicking the reply button.
-* Contact Forms: Fixed a fatal error on missing metadata.
-* Contact Forms: Fixed message formatting for plaintext email clients.
-* Shortcodes: Fixed dimensions of Vimeo embeds in certain cases.
-* Shortcodes: Fixed warnings and allowed shorter style Vimeo embeds.
-* Shortcodes: Removed alignment markup from feeds for YouTube embeds.
-* Sitemaps: Made URLs display properly according to the permalink structure.
-* Stats: Fixed non-XHTML-valid markup.
-* Widgets: No longer showing errors when adding new instances of the Display Post Widget.
-
-= 3.9.2 =
-Release date: February 25th, 2016
-Release post: http://wp.me/p1moTy-2Ei
-
-Maintenance and Security Release
-
-Featured:
-
-* Beautiful Math: fix XSS vulnerability when parsing LaTeX markup within HTML elements.
-* Contact Form: do not save private site credentials in post meta. Thanks to @visualdatasolutions.
-
-Enhancements:
-
-* Contact Info: Added two hooks for adding arbitrary information to the widget.
-* Development: Added new possibilities for REST API debugging.
-* Embeds: Added Codepen embeds support.
-* Embeds: Added Sketchfab embeds support.
-* I18n: Added support for translation packages for the Finnish language.
-* Markdown: Added a filter to enable skipping processing of developer supplied patterns.
-* Related Posts: Added a filter to change heading markup.
-* Staging: Added a constant to force staging mode.
-* Staging: Added a notice to make staging mode more obvious.
-* Top Posts Widget: Added a new `[jetpack_top_posts_widget]` shortcode.
-
-Bug Fixes:
-
-* Custom Post Types: Nova: Fixed a JavaScript bug on adding multiple items.
-* Embeds: Allowing embeds from Instagram with a www in an URL.
-* General: Fixed untranslated module names on the Settings screen.
-* General: Improved module descriptions and fixed misleading or broken links in descriptions.
-* General: No more notices on module deprecation on older installations.
-* General: Only showing one prompt to enable Photon when uploading several new images.
-* Multisite: Fixed a problem with site lists for older WordPress installations.
-* OpenGraph: Fixed a bug to properly fallback to a WordPress Site Icon image.
-* Photon: Improve performance for images over a secure connection.
-* Photon: No longer including links from data attributes.
-* Publicize: Fixed problems for en_AU and en_CA locales with Facebook.
-* Related Posts: Fixed a notice on certain requests.
-* Site Logo: It's no longer possible to choose a non-image.
-* Widget Visibility: No longer confusing page IDs and titles in certain cases.
-
-= 3.9.1 =
-Release date: January 21st, 2016
-
-Bug Fixes:
-
-* General: Addresses a namespacing issue which was causing conflicts on some hosting providers.
-* Sitemaps: Added MSM-Sitemap to the list of plugins which, if installed, will prevent Jetpack Sitemaps from being used
-
-= 3.9 =
-Release date: January 20th, 2016
-Release Post: http://wp.me/p1moTy-29R
-
-Featured:
-
-* New sharing button: let users share your content using Skype.
-* New "Social Menu" theme tool that uses Genericons to display Social Links.
-* Sitemap support for better search engine indexing.
-
-Enhancements:
-
-* Contact Form: Added a new filter that allows you to change the "Required" text.
-* General: Hidden archived sites in multisite site list.
-* General: Removed several function calls that would be deprecated in WordPress 4.5.
-* Infinite Scroll: Added a new filter to check if Infinite Scroll has been triggered.
-* Likes: Added a conditional to ensure WordPress 4.5 compatibility.
-* Photon: Improved compatibility with responsive images feature added in WordPress 4.4.
-* Photon: Now enabled by default on sites using HTTPS.
-* REST API: Extended the ability to manage users from WordPress.com.
-* REST API: Increased the performance of the plugin update endpoint.
-* Responsive Videos: Centering videos when they are wrapped in a centered paragraph.
-* Sharing: Added a new filter to customize the default OpenGraph description.
-* Shortcodes: Added Wistia oEmbed support.
-* Shortcodes: Bandcamp: Added support for new attributes for tracks approved by artists.
-* Shortcodes: Improved Medium path format recognition.
-* Slideshow: Improved compatibility with older IE versions.
-* Staging: Improved staging environment detection.
-* Widgets: Added "width" option to the Facebook Page widget.
-* Widgets: Added size parameters to tags in Top Posts to avoid warnings.
-* Widgets: Introduced major performance and stability improvements to the Display Posts Widget.
-* Widgets: Refactored to remove deprecated code patterns.
-
-Bug Fixes:
-
-* AtD: Fixed replacing emojis with images in the text editor in Chrome.
-* AtD: Made pre tags be excluded from spell-checking.
-* CPT: Not registering Nova if it is already registered.
-* Carousel: Fixed a bug where full size images were not always served by Photon.
-* Carousel: Reverted a change that broke direct link to carousel image.
-* Contact Form: Fixed a CSV export bug with multiple choice questions.
-* Contact Form: Fixed notices when creating feedback entries without a contact form.
-* General: Fixed a scrolling bug on modal window closing.
-* Infinite Scroll: Disabled in the Customizer when previewing a non-active theme.
-* Publicize: Fixed notices appearing with bbPress or BuddyPress installed.
-* Publicize: Showing options only to users that can change them.
-* Related Posts: Fixed incorrect URLs generated for posts.
-* Responsive Videos: Fixed warnings in debug mode.
-* Shortcodes: Bandcamp: Fixed a problem with large track IDs.
-* Shortcodes: Fixed a problem with dynamic Gist embeds.
-* Stats: Fixed dashboard widget resize problem.
-* Widgets: Added a fallback to English US when a locale isn't supported by Facebook.
-* Widgets: Fixed layout for Twenty Sixteen.
-
-= 3.8.2 =
-Release date: December 17th, 2015
-Release post: http://wp.me/p1moTy-26v
-
-Jetpack 3.8.2 is here to squash a few annoying bugs.
-
-Bug Fixes:
-
-* Photon: Fixed a bug where some custom thumbnail image sizes weren't being sized properly.
-* Shortcodes: Fixed an incompatibility with how WordPress renders the YouTube shortcode.
-* Shortcodes: Tightened up security in the Wufoo shortcode.
-* Image Widget: Now shows the caption.
-* Fixed typos in inline docs.
-* Very minor fixes to: Carousel, Publicize, Google+, and Infinite Scroll.
-
-= 3.8.1 =
-Release date: December 1st, 2015
-Release post: http://wp.me/p1moTy-23V
-
-Jetpack 3.8.1 is here and is fully compatible with WordPress 4.4.
-
-Featured:
-
-* Photon + Responsive Images FTW.
-* Fully compatible with Twenty Sixteen.
-* More accessibility enhancements.
-* Dropped some weight by optimizing Jetpack's plugin images.
-
-Enhancements:
-
-* Comments: filter to allow disabling comments per post type.
-
-Bug Fixes:
-
-* Carousel: Stop page from scrolling to top when Carousel is closed.
-* Carousel: Browser compatibility fixes with older version of IE.
-* Markdown: Fixed a bug that would strip markdown when saving in "Quick Edit" mode.
-* Single Sign On: Fixed login always redirecting to the admin dashboard.
-* Subscriptions: Filter to allow per-post emails fixed for use in themes.
-
-= 3.8.0 =
-Release date: November 4th, 2015
-Release post: http://wp.me/p1moTy-1VN
-
-We're happy to introduce Jetpack 3.8, which has significant contributions from the Jetpack community. Read more about it here: http://wp.me/p1moTy-1VN
-
-Feature enhancements:
-
-* New Google+ Badge Widget. Display your profile, page, or community Google+ badge.
-* New twitch.tv shortcode embeds. Display a Twitch.tv stream in your posts.
-* Accessibility enhancements.
-* A handful of new filters to allow further customization of Jetpack.
-
-Other enhancements:
-
-* Carousel: Added support to retrieve image dimensions from an image url.
-* Carousel: Simpler algorithm to detect shutter speeds.
-* Contact Form: New "Checkbox with Multiple Items" field available in the Contact Form.
-* Contact Form: Allow pre-filling form fields with URL parameters.
-* Contact Form: Better styling of the emailed form responses.
-* Performance: Replaced some custom-built functions with core's native functions.
-* Related Posts: New filter to add post classes to post's container class.
-* Sharing: New filter to choose if sharing meta box should be shown.
-* Sharing: New filter to allow sharing button markup to be editable.
-* Sharing: New filter to allow you to specify a custom Facebook app ID.
-* Social Media Icons Widget: Added option for YouTube username as well as Channel ID.
-* Social Media Icons Widget: Added Google+ icon.
-* Social Media Icons Widget: New filter to allow you to add your own social media icons and links.
-* Subscriptions: Better errors to your visitors if their subscription sign-up fails.
-* Subscriptions: Removed "widget" class from Subs shortcode form.
-
-
-Bug fixes:
-
-* Carousel: Fixed browser back/forward button behavior.
-* Contact Form: Allow the email field to be set to empty when building form in post editor.
-* Facebook Likebox Widget: Fixed an issue where some languages were not translating.
-* Facebook Likebox Widget: Return a language when none found.
-* General: Fixed some minor styling issues in the Jetpack admin areas.
-* General: Add missing parameter to the_title filter call.
-* General: Prevent scrolling of body when the Jetpack admin modals are opened.
-* General: Update doc to reflect that Open Graph filter jetpack_enable_opengraph has been deprecated in favor of jetpack_enable_open_graph.
-* Infinite Scroll: Fixed an error that sometimes occurred that would stop posts from loading.
-* JSON API: Fixed some undefined notices when publishing a post with the API.
-* Open Graph: Fixed bug where facebook description content was sometimes being polluted by a filter.
-* Sharing: Use full SSL Pinterest url instead of protocol relative.
-* Sharing: Fixed plus signs appearing in tweets shared from iOS.
-* Shortcodes: Prefer HTTPS for video embeds to avoid mixed content warnings.
-* Subscriptions Widget: Fix HTML Validation error.
-* Theme Tools: Check oEmbeds for the presence of a video before adding the responsive videos filter.
-* Tiled Galleries: Add image alt attribute if there is a title set. This was breaking some screen reader functionality.
-
-= 3.7.2 =
-Release date: September 29th, 2015
-Release Post: http://wp.me/p1moTy-1LB
-
-* Bug Fix: REST API: Fixed an error when saving drafts and publishing posts
-
-= 3.7.1 =
-Release date: September 28th, 2015
-Release Post: http://wp.me/p1moTy-1LB
-
-* Enhancement: General: Added inline documentation for various filters and functions
-* Enhancement: General: Added custom capabilities for module management on multi-site installs
-* Enhancement: General: Cleaned up old changelog entries from readme
-* Enhancement: General: Cleaned up unused i18n textdomains
-* Enhancement: General: Updated the new settings page to look better in various translations
-* Enhancement: REST API: Added new endpoints to manage users
-* Enhancement: Sharing: Updated the Google logo
-* Bug Fix: Carousel: Page scroll no longer disappears after closing the carousel
-* Bug Fix: Contact Form: Fields are sent and displayed in the correct order
-* Bug Fix: Contact Form: No longer showing a notice on AJAX actions in feedback lists
-* Bug Fix: Contact Form: Made using more than two notification emails possible
-* Bug Fix: Contact Form: Mitigate a potential stored XSS vulnerability. Thanks to Marc-Alexandre Montpas (Sucuri)
-* Bug Fix: General: Mitigate a potential information disclosure. Thanks to Jaime Delgado Horna
-* Bug Fix: General: Fixed a locale error in the notifications popout
-* Bug Fix: General: Fixed a possible fatal error in the client area
-* Bug Fix: General: Fixed compatibility issues with certain use cases
-* Bug Fix: General: Disabled connection warnings for multisites with domain mapping
-* Bug Fix: General: Updated translations for correct link display in admin notices
-* Bug Fix: REST API: Fixed a fatal error in one of the endpoints
-* Bug Fix: Sharing: Fixed OpenGraph tags for Instagram embeds
-* Bug Fix: Sharing: Fixed compatibility issues with bbPress
-* Bug Fix: Widget Visibility: Fixed a fatal error in case of a missing tag
-
-= 3.7.0 =
-Release date: September 9th, 2015
-Release Post: http://wp.me/p1moTy-1JB
-
-Feature Enhancements:
-
-* New admin page interface to easily configure Jetpack
-* Added staging site support for testing a connected Jetpack site
-
-Additional changes:
-
-* Enhancement: CLI: Added a possibility to change all options with confirmation for some of them
-* Enhancement: Gallery: Added filters to allow new gallery types to be declared
-* Enhancement: General: Added inline documentation for actions, filters, etc.
-* Enhancement: General: Changed class variable declarations keyword from var to public
-* Enhancement: General: Made the Settings page module toggle buttons more accessible
-* Enhancement: General: The admin bar now loads new notifications popout
-* Enhancement: General: Renamed some modules to avoid redundant prefixes
-* Enhancement: General: Switched to the WordPress Core's spinner image
-* Enhancement: General: Updated the bot list
-* Enhancement: Manage: Added the ability to activate a network-wide plugin on a single site from WordPress.com
-* Enhancement: Photon: Added a way to check image URLs against custom domains
-* Enhancement: Photon: Added prompts on the media upload page telling the user about Photon
-* Enhancement: Publicize: Added width and height values to OpenGraph tags for default images
-* Enhancement: Related Posts: Added a filter to allow disabling nofollow
-* Enhancement: REST API: Added new API endpoints to extend API functionality
-* Enhancement: REST API: Added new fields to existing API endpoints
-* Enhancement: Sharing: Added a possibility to opt-out of sharing for a single post
-* Enhancement: Sharing: Added bbPress support
-* Enhancement: Sharing: Added more configuration to the Likes modal
-* Enhancement: Sharing: Made the reddit button open a new tab
-* Enhancement: Sharing: Removed unused files
-* Enhancement: Shortcodes: Added auto embed option inside comments
-* Enhancement: Shortcodes: Added autohide parameter to the YouTube shortcode
-* Enhancement: Subscriptions: added an action that triggers at the end of the subscription process
-* Enhancement: VideoPress: Videos are now embedded using a new player
-* Enhancement: Widget Visibility: Added parent page logic
-* Enhancement: Widget Visibility: Added support for split terms
-* Enhancement: Widgets: Added actions to the Social Media widget
-* Enhancement: Widgets: Switched the Display Posts widget to the new API version
-* Bug Fix: General: Fixed scrolling to top after modal window closing
-* Bug Fix: Infinite Scroll: Added a check for cases when output buffering is disabled
-* Bug Fix: Infinite Scroll: Added translation to the copyright message
-* Bug Fix: Manage: Fixed automatic update synchronization on WordPress multisite network admin
-* Bug Fix: Manage: Redirects back to WordPress.com are allowed from the customizer view
-* Bug Fix: Media: Fixed duplicate images bug in the Media Extractor
-* Bug Fix: Publicize: Made it possible to remove previously set message
-* Bug Fix: Sharing: Added a thumbnail image to OpenGraph tags on pages with DailyMotion embeds
-* Bug Fix: Sharing: Fixed Twitter Cards tags escaping
-* Bug Fix: Sharing: Made OpenGraph tags for title and description use proper punctuation
-* Bug Fix: Sharing: Made sure Likes can be disabled on the front page
-* Bug Fix: Shortcodes: Fixed Facebook embeds by placing the scipt in the footer
-* Bug Fix: Shortcodes: Fixed PollDaddy shortcode issues over SSL connections
-* Bug Fix: Shortcodes: Made responsive video wrappers only wrap video embeds
-* Bug Fix: Shortcodes: Made SoundCloud accept percents for dimensions
-* Bug Fix: Social Links: Fixed a possible conflict with another class
-* Bug Fix: Stats: Made sure the Stats URL is always escaped properly
-
-= 3.6.1 =
-Release Date: July 24, 2015
-
-* Enhancement: Fully compatible with upcoming WordPress 4.3
-* Enhancement: Site Icon: Start to deprecate Site Icon in favor of Core's version (if available)
-* Bug Fix: Subscriptions: You can now use more than one Subscription form on a single page
-* Bug Fix: Quieted PHP notices and warnings with the JSON API, Display Posts Widget and Gallery Widget (slideshow mode)
-* Bug Fix: Correct permissions check for connection panel
-* Hardening: Increase permissions checks
-
-= 3.6 =
-Release Date: July 6th, 2015
-Release Post: http://wp.me/p1moTy-1ua
-
-Feature Enhancements:
-
-* CLI: Add a number of Jetpack CLI improvements: see http://jetpack.com/support/jetpack-cli
-* New Jetpack admin page for connection management
-* New Social Media Icons widget
-* FB Like Box: A visual refresh of the Facebook likebox widget
-* Protect: When your IP is blocked, use a math captcha as a fallback instead of a complete block
-
-Additional changes:
-
-* Enhancement: Custom CSS: Add more Flexbox support and other enhancements
-* Enhancement: Extra Sidebar Widgets: Top Posts Widget: Choose what Post Types to display
-* Enhancement: General: Save on some requests! print CSS inline when there isn't much of it
-* Enhancement: Likes: Likes can now be shown on all post types
-* Enhancement: Minileven: Add Featured Image to Gallery Post Format and Pages
-* Enhancement: Mobile Theme: Add div wrapping View Mobile Site link to allow for easier CSS customizations
-* Enhancement: Omnisearch: Link to edit post in titles
-* Enhancement: Protect: Learn Trusted Headers locally and cache blocks properly
-* Enhancement: REST API: Add locale support
-* Enhancement: Sharing: Retire StumbleUpon
-* Enhancement: Sharing:	Upgrade to reCAPTCHA 2.0 for Email Sharing
-* Enhancement: Shortcode Embeds: Add Mesh oembed support
-* Enhancement: Shortcode Embeds: New Wufoo Shortcode from WordPress.com
-* Enhancement: Shortcode Embeds: Mixcloud: handle accented characters in URLs
-* Enhancement: Site Logo: Adding itemprops to support logo schema.
-* Enhancement: Slideshow Gallery: New parameters *size* and *autostart*
-* Enhancement: Slideshow Gallery: Use more reliable CSS for resizing instead of js
-* Enhancement: Stats: No longer track stats for preview pages
-* Enhancement: Tiled Gallery: Improve the shapes and distributions of shapes in the Tiled Gallery, based on observations for its usage.
-* Enhancement: Protect: Whitelist for multisite globally and locally
-* Enhancement: Sharing: LinkedIn always uses https for share counts. (saved extra http request)
-* Bug Fix: Carousel: Jetpack Carousel now supports HTML5 gallery
-* Bug Fix: Extra Sidebar Widgets: Choose Images button works in accessibility mode
-* Bug Fix: General: Fix: Cannot remove hooks from filter 'jetpack_get_available_modules'
-* Bug Fix: Infinite Scroll: Check that search terms exist before matching against post title. fixes #2075
-* Bug Fix: Likes: Never double show on search results
-* Bug Fix: Notifications: Notifications didn't load on wp-admin/network pages
-* Bug Fix: Sharing: Fix Facebook share button not showing for Australian & Canadian locale
-* Bug Fix: Shortcode Embed: Slideshare Shortcode now fixed
-* Bug Fix: SSO: Hide login no matter what when using the filter to do so
-* Bug Fix: Subs Widget: Don't hide email input if submit failed
-* Bug Fix: Tiled Gallery: Show columns setting for Thumbnail Grid when Tiled Mosaic galleries are the default
-* Bug Fix: Twitter Cards: Remove deprecated card types
-
-= 3.5.3 =
-Release Date: May 6th, 2015
-
-* Security Hardening: Remove Genericons example.html file.
-
-= 3.5.2 =
-Release Date: May 5th, 2015
-
-* Bug Fix: Sharing: Changes Facebook share count endpoint
-
-
-= 3.5.1 =
-Release Date: May 5th, 2015
-
-* Enhancement: Sharing: Changes Facebook share count method per Facebook API change
-* Enhancement: General: Remove .po files to reduce plugin size
-* Bug Fix: General: Remove identity crisis notification
-* Bug Fix: Subscriptions: Correct required input validation
-* Security hardening
-
-= 3.5 =
-Release Date: April 23rd, 2015
-Release Post: http://wp.me/p1moTy-1jF
-
-Jetpack 3.5 introduces the ability to manage your site's menus directly from WordPress.com and several bug fixes and enhancements.  This upgrade is recommended for all users.
-
-* Enhancement: General: Change security reporting to use a transient instead of option to reduce backup load
-* Enhancement: General: Improve module search
-* Enhancement: JSON API: Allow users to manage menus through WordPress.com
-* Enhancement: Sharing: Reduce spam through email sharing
-* Bug Fix: Custom CSS: Improve recall of CSS revisions
-* Bug Fix: Extra Sidebar Widgets: Change class name for Contact Info widget
-* Bug Fix: Extra Sidebar Widgets: Fix errors when adding widgets via the customizer
-* Bug Fix: Extra Sidebar Widgets: Fix PHP notices in RSS widget
-* Bug Fix: General: Fix redirect loop on activation
-* Bug Fix: General: Styling fixes
-* Bug Fix: Protect: Add IP translation fallback when inet_pton is not available
-* Bug Fix: Protect: Always allow login from local IDs
-* Bug Fix: Protect: Sanitize displayed IP after block
-* Bug Fix: Publicize: Prevent generating Facebook profile links for app-scoped user IDs
-* Bug Fix: Subscriptions: Improve error handling
-* Bug Fix: Theme Tools: Include breadcrumb code
-* Misc: Extra Sidebar Widgets: Remove Readmill Widget
-
-= 3.4.3 =
-Release Date: April 20th, 2015
-Release Post: http://wp.me/p1moTy-1jb
-
-* Security hardening.
-
-= 3.4.2 =
-Release Date: April 19th, 2015
-Release Post: http://wp.me/p1moTy-1j6
-
-* Bug Fix: Contact info widget namespacing
-* Bug Fix: Javascript errors on wp-admin due to stats display code
-* Bug Fix: Potential fatal error from improperly called function
-* Bug Fix: Potential fatal error when protect servers are unreachable for WordPress Multisite
-
-= 3.4.1 =
-Release Date: March 19th, 2015
-
-* Bug Fix: General: Modules not displaying properly in non-English installs
-* Bug Fix: Manage: Some installs showing a transient fatal error
-* Bug Fix: Protect: Protect module not auto-activating for users who upgrade
-* Bug Fix: Omnisearch: Some installs not properly reporting WP version number, causing Omnisearch error
-* Bug Fix: Stats: Top posts/pages widget not loading
-* Bug Fix: Contact Info Widget: Fix conflict with Avada theme
-
-= 3.4 =
-Release Date: March 18th, 2015
-Release Post: http://wp.me/p1moTy-1fU
-
-* Enhancement: Config Settings: provide a notification for users that update features settings
-* Enhancement: Config Settings: provide a notification for users that update features settings
-* Enhancement: Contact Form: Use the predefined $title variable in the anchor tag in grunion contact form button
-* Enhancement: Contact Form: Use the predefined $title variable in the anchor tag in the button on admin
-* Enhancement: Custom Content Type: Add all Custom Post Types to Omnisearch
-* Enhancement: Custom Content Type: Add option to add Testimonial Custom Content Type in admin
-* Enhancement: Custom Content Type: bring consistency between the portfolio and testimonial shared codebase
-* Enhancement: Custom Content Type: code cleanup
-* Enhancement: Custom Content Type: register namespaced 'jetpack_portfolio' shortcode/use a prefix for shortcode for Portfolio
-* Enhancement: Custom Content Type: set shortcode image size to 'large' and add jetpack_portfolio_thumbnail_size filter to allow themes to set their own size for Portfolio
-* Enhancement: Custom Content Type: testimonial shortcode enhancement
-* Enhancement: Extra Sidebar Widgets: Add subscription widget wildcard
-* Enhancement: Extra Sidebar Widgets: Likes and Sharing Shortcodes
-* Enhancement: Extra Sidebar Widgets: Minor fixes to Facebook widget plugin for SSL
-* Enhancement: Fix/update jetpack version
-* Enhancement: General: Add DNS Prefetching
-* Enhancement: General: Add Jetpack admin dashboard widget
-* Enhancement: GlotPress: Update GP_Locales and GP_Locale classes
-* Enhancement: Improved control over Nova Theme Menu output markup
-* Enhancement: Infinite Scroll: Adds a `button` wrapper for the infinity handle.
-* Enhancement: Infinite Scroll: Check for response.html before using indexOf
-* Enhancement: Integrate BruteProtect for protection against Brute Force attacks
-* Enhancement: JSON API Manage: Added Mock Jetpack Option to Sync options that don't have to live in the Database
-* Enhancement: JSON API: Add/empty trash days option to sync
-* Enhancement: Jump Start: Add "Jump Start" interface for new users
-* Enhancement: Manage: Add "modified_before" and "modified_after" parameters to /sites/%s/posts/ via JSON API
-* Enhancement: Mobile Theme: Add filter for choosing mobile theme menu
-* Enhancement: Notifications: Changes to load the new notifications client.
-* Enhancement: Protect: Add a filter so that user can add thier own bots
-* Enhancement: Protect: Add security reporting
-* Enhancement: Protect: Add/whitelist endpoints via JSON API for Jetpack Protect
-* Enhancement: Publicize: update connection confirmation message
-* Enhancement: Sharing: Add custom service name as a class
-* Enhancement: Sharing: display name of custom service in link title
-* Enhancement: Sharing: Remove default post types for showing share links
-* Enhancement: Sharing: use Jetpack version number when enqueing sharing.js
-* Enhancement: Shortcodes Team Partnerships: Backport fixes from SoundCloud 2.3.1 through 3.0.2
-* Enhancement: Shortlinks: use HTTPS when possible
-* Enhancement: Stats: Make loading of stats async
-* Enhancement: Subscriptions: Added settings field for comment sub text
-* Enhancement: Subscriptions: Hide Form After Submit
-* Enhancement: Subscriptions: remove label from widget title
-* Enhancement: Subscriptions: Update subscriptions.php
-* Bug Fix: Contact form: Increase CSS specificity for Contact Forms in widgets
-* Bug Fix: Custom Content Type: Testimonial Custom Content Type: use core `WP_Customize_Image_Control` instead of custom...
-* Bug Fix: Extra Sidebar Widgets: add missing & to if statement for widget visibility
-* Bug Fix: Extra Sidebar Widgets: Don't require height/width values in the Twitter Timeline widget
-* Bug Fix: Extra Sidebar Widgets: Upload images from the customizer/Extra Sidebar Widgets Tiled Galleries for Gallery Widget
-* Bug Fix: General: Fix bug that was preventing modules from displaying properly
-* Bug Fix: Manage: When calling /sites/%s/posts/ include all attachments not just the first five via JSON API
-* Bug Fix: Mobile Theme: Minileven; Start after DOM ready
-* Bug Fix: Sharing: Open sharing in same window
-* Bug Fix: Stats language
-* Bug Fix: Subscritpions: fix invalid field when no email address
-
-
-= 3.3.2 =
-Release Date: February 19th, 2015
-
-* Enhancement: Updated translation files.
-* Enhancement: Heartbeat: Correctly stat new datasets.
-* Bug Fix: Widget Visibility: Correct some caching of visibility results that may get evaluated too soon.
-* Bug Fix: Contact Form: Hardening.
-* Bug Fix: Photon: Make sure our gallery filter can parse array inputs as well as the default html.
-
-= 3.3.1 =
-Release Date: February 11th, 2015
-
-* Bug Fix: JSON API: Minor versioning data.
-* Bug Fix: Markdown: Re-run KSES after processing to account for syntax changes.
-* Bug Fix: Media Extractor: Don't call a gallery a gallery if it hasn't got any pictures!
-* Bug Fix: Module Management: Handle a core api change for folks running trunk.
-* Bug Fix: Related Posts: CSS -- better clear rows.
-* Bug Fix: Sharing: Including sharing account on Pinterest unofficial buttons as well.
-* Bug Fix: Sharing: Properly version external assets by Jetpack release version.
-* Bug Fix: Shortcodes: Soundcloud: Backport API compatibility fixes.
-* Bug Fix: Shortcodes: Flickr: Tidy up our regex url pattern matching.
-* Bug Fix: Subscriptions: Don't add 'Email Address' as the value -- we have placeholders!
-* Bug Fix: Widgets: Gallery Widget: Allow folks to upload images from the widget area in the customizer.
-
-= 3.3 =
-Release Date: December 15th, 2014
-Release Post: http://wp.me/p1moTy-1aF
-
-* Enhancement: Adds responsive video support to BuddyPress.
-* Enhancement: Custom Content Types: Added 'order' and 'orderby' options to portfolio shortcode.
-* Enhancement: Display notice when Jetpack Development Mode is on.
-* Enhancement: General: Update compatibility with Twenty Fifteen.
-* Enhancement: Image URL can now be overwritten with the `jetpack_images_fit_image_url_override` filter after dimensions are set by Photon.
-* Enhancement: JSON API: Add Endpoint for trigger Plugin Autoupdates.
-* Enhancement: JSON API: General Improvements. Documentation on http://developer.wordpress.com/
-* Enhancement: Likes: Updated the code to accept arbitrary CPTs.
-* Enhancement: Related Posts: Allow filter by `post_format`.
-* Enhancement: Sharing: add new `jetpack_sharing_counts` filter for option to turn off sharing counts.
-* Enhancement: Sharing: Use the Site Logo Theme Tool and the Site Icon as fallbacks for image tags.
-* Enhancement: Shortcodes: Made the code more readable by using output buffers instead of string concatenation.
-* Enhancement: Site Logo: Add alias functions to provide backward compatibility for themes expecting the old function calls.
-* Enhancement: Slideshow: Add title and alt text to images.
-* Enhancement: Subscription Form: Do not display the logged in user's email address by default.
-* Enhancement: Top Posts Widget: Refactor to allow conditional loading of the css.
-* Enhancement: Top Posts: Add `jetpack_top_posts_widget_count` filter to control number of displayed posts.
-* Bug Fix: Change subscribe_text from `p` to `div` so that it can contain block-level elements.
-* Bug Fix: Fonts: Change path to look for the svg in the right directory.
-* Bug Fix: Increase CSS specificity for Contact Forms in widgets.
-* Bug Fix: JSON API: Plugins Update: Make sure the plugin doesn't get deactivated.
-* Bug Fix: Likes: Fixes issues where likes don't load, load master iframe after scripts are loaded.
-* Bug Fix: Notes Module: Avoid a PHP Notice in cli scripts when the request doesn't contain a User-Agent header.
-* Bug Fix: Nova Menu CPT: fix notice when we have no taxonomies.
-* Bug Fix: Nova Menus: Use current instance to maintain object context.
-* Bug Fix: Related Posts: Add filter for `_enabled_for_request()`.
-* Bug Fix: Sharing: Prevent duplicate @ in shared Tweets.
-* Bug Fix: Site Logo: `get_site_logo()` now properly returns the site logo ID when provided in the `$show` argument.
-* Bug Fix: Site Logo: Correct evaluation of the Display Header Text in Customizer preview.
-
-= 3.2.1 =
-Release Date: November 14th, 2014
-
-* Enhancement: Updated translation files.
-* Enhancement: JSON API: More object vars passed back to some queries. Documentation on http://developer.wordpress.com/
-* Bug Fix: JSON API: Pass back correct author in `me/posts` data.
-* Bug Fix: JSON API: Don't check if a post is freshly pressed on remote Jetpack sites where the function doesn't exist.
-* Bug Fix: Site Logo: Add backward-compatible template tags to match the standalone release.
-* Bug Fix: Don't use __DIR__ -- it's 5.3+ only, and WordPress supports back to 5.2.
-* Bug Fix: Retool how we remove the source styles when using the concatenated version.
-* Bug Fix: Shortcodes: TED: Correct default language code from `eng` to `en`.
-* Bug Fix: Gallery Widget: Add a default background color.
-* Bug Fix: Subscription Notifications: Remove the label.
-* Bug Fix: Sharing: enqueue Genericons on static front page as well if selected.
-
-= 3.2 =
-Release Date: October 29, 2014
-Release Post: http://wp.me/p1moTy-181
-
-* Enhancement: Speed Improvements (woohoo!).
-* Enhancement: Add site icons: an avatar for your blog.
-* Enhancement: Improvements to API endpoints.
-* Enhancement: Add oEmbed sources (Twitter, SoundCloud, Instagram, DailyMotion, Vine).
-* Enhancement: Add indicators to make it easier to see which modules are active.
-* Enhancement: Improve debug tool.
-* Enhancement: Add new 'Site Logos' code to theme tools, for themes that opt in to support it.
-* Enhancement: Improved caching for related posts.
-* Enhancement: Added "Remember Me" functionality to Single Sign On.
-* Enhancement: Improved accessibility.
-* Enhancement: Added additional filters to Widget Visibility.
-* Bug Fix: Fixed PHP Notice errors for Likes, Widget Visibility.
-* Bug Fix: Improvements to the testimonials CPT.
-* Bug Fix: Improved RTL on VideoPress admin.
-* Bug Fix: Removed Google+ Authorship module (discontinued by Google).
-* Bug Fix: Fixed use of deprecated function in mobile theme.
-* Bug Fix: Various fixes to Tiled Galleries.
-* Bug Fix: Various fixes to Contact Form.
-* Bug Fix: Various fixes to oEmbed.
-* Bug Fix: Various fixes to Single Sign On.
-* Bug Fix: Fixed styles in ShareDaddy.
-* Bug Fix: Better match protocols (http/https) to the site.
-
-
-= 3.1.1 =
-Release Date: August 7, 2014
-
-* Enhancement: Update translation files for strings that had been submitted/approved since release.
-* Bug Fix: Social Links: Add a function check to better degrade if Publicize isn't around.
-* Bug Fix: Open Graph: Add WordPress SEO back to the blacklist, until they update how they opt us out.
-* Bug Fix: Asset Minification: Add another caveat ( empty $plugin ) to short out on.
-* Bug Fix: Deprecated Hooks: Fixing our expectations where something that should be an array occasionally wasn't.
-* Bug Fix: Custom CSS: Add extra whitelist rule for -o-keyframe rules.
-
-= 3.1 =
-Release Date: July 31, 2014
-Release Post: http://wp.me/p1moTy-129
-
-* Enhancement: New Custom Content Types module.
-* Enhancement: New Jetpack Logo.
-* Enhancement: New optional JSON API endpoints for viewing updates and managing plugins and themes.
-* Enhancement: New Custom Post Type: Portfolio!
-* Enhancement: Rearranged buttons on the modules modals for easier management.
-* Enhancement: Jetpack Settings have improved keyboard accessibility.
-* Enhancement: Improved RTL support for After the Deadline, Carousel, Contact Form, Comics CPT, Custom CSS, Omnisearch, Publicize, Related Posts, Slideshow short code, Tiled Gallery, Widget-Visibility and Widgets Gallery.
-* Enhancement: Contact Form: Add an "Empty Spam" option.
-* Enhancement: i18n: Change the priority of where plugin_textdomain is hooked so that the plugins can better translate Jetpack.
-* Enhancement: Monitor: Displays how often the site is checked for downtime.
-* Enhancement: Shortcode: Added Mixcloud shortcode and oEmbed support.
-* Enhancement: Social Links: Improved handling of customizer hooks in non-admin context.
-* Enhancement: Stats: The smiley image is gone by default.
-* Enhancement: Stats: Added link to the configure page for stats so that the stats settings page is easier to find.
-* Enhancement: Theme Tools: Added the responsive videos to theme tools so that themes can support responsive videos more easily.
-* Update: Updated Genericons to version 3.1, new icons for website, ellipsis, foursquare, x-post, sitemap, hierarchy and paintbrush.
-* Bug Fix: Contact Form: Prefix function to avoid conflicts with other plugins.
-* Bug Fix: Custom CSS: Admin UI has a responsive layout.
-* Bug Fix: Custom CSS: Custom $content_width value doesn't overwrite theme's $content_width.
-* Bug Fix: Contact Form: Feedback link takes you to the form page.
-* Bug Fix: Carousel: Confirms an avatar is returned by get_avatar before displaying.
-* Bug Fix: Featured Content: Don't remove setting validation.
-* Bug Fix: Infinite Scroll: Google Universal Analytics support added.
-* Bug Fix: Multisite: Add message when updating multisite settings.
-* Bug Fix: Photon: Photon will no longer upscale images larger than the original size.
-* Bug Fix: Photon: Check that the image exists before rewriting the image URL to utilize Photon.
-* Bug Fix: Sharing: Pinterest adds attribute to display share count.
-* Bug Fix: Sharing: Respect an empty sharing title.
-* Bug Fix: Sharing: Share buttons now appear in the bbPress forms.
-* Bug Fix: Sharing: Support for multiple meta html tag og:image values.
-* Bug Fix: Single Sign On: Logout allows override of forcing Single Sign On.
-* Bug Fix: Single Sign On: Remove the lost password link on auto-forward logout.
-* Bug Fix: Social Links: Do not use anonymous function for compatibility with PHP 5.2.
-* Bug Fix: Tiled Galleries: Update jQuery mouseover caption effect to reduce flickering.
-* Bug Fix: Widgets Visibility: Works better in the customizer admin view.
-
-= 3.0.2 =
-Release Date: June 17, 2014
-
-* Enhancement: General: Make module categories filter more visible when active.
-* Enhancement: General: Updated translation files with more strings added since the last release.
-* Enhancement: General: Allow deep-linking to the Contact Support form.
-* Bug Fix: General: RTL Jetpack Admin UI looks better.
-* Bug Fix: General: Fixed PHP warning when bulk deactivating modules.
-* Bug Fix: General: Removed an unnecessary description.
-* Bug Fix: General: Resolved an SSL error on Jetpack Admin UI.
-* Bug Fix: General: Fix error comparing signatures when the WordPress installation is using site_url filters (applied mostly to WPEngine sites).
-* Bug Fix: General: Resolved PHP strict error on the mobile menu.
-* Bug Fix: General: Fix timing of conditional checks, so that calling developer mode via a plugin works again.
-* Bug Fix: General: Main page categories tab now properly translates module names.
-* Bug Fix: Related Posts: Fix a typo, the "more info" link now works.
-* Bug Fix: Likes: Improve button styling.
-* Bug Fix: Likes: Remove unused UI for Reblog settings on social settings page.
-* Bug Fix: Contact Form: Updated to no longer use a deprecated Akismet function.
-* Bug Fix: Contact Form: Sends email to the administrator that is not marked as spam again.
-* Bug Fix: Open Graph: Resolved PHP warning on open graph gallery pages when the gallery is empty.
-
-= 3.0.1 =
-Release Date: May 22, 2014
-
-* Bug Fix: AtD: A wpcom-only function got synced by mistake and caused a few errors. Fixed.
-* Bug Fix: Post By Email: Add static keyword to a function.
-* Bug Fix: ShareDaddy: In the admin-side configuration of sharing links, we used a Path icon instead of Pinterest. Oops!
-* Bug Fix: ShareDaddy: We inadvertently appended `via @jetpack` to some twitter shares. This is no longer the case.
-* Bug Fix: Related Posts: Tidying up and relocation of the `resync` button formerly on the more info modal.
-* Bug Fix: Infinite Scroll: Work better with core's MediaElement.js
-* Bug Fix: Heartbeat: Undeclared variable fixed.
-
-= 3.0 =
-Release Date: May 20, 2014
-Release Post: http://wp.me/p1moTy-Wi
-
-* New User Interface for managing modules and settings
-* New Module: Verfication Tools
-* Enhancement: New look for the Sharing module
-* Enhancement: Multiple improvements on which Twitter handle a Twitter card will display
-* Enhancement: Add option to hide Google+ Authorship banner while still receiving the benefits
-* Enhancement: Many Infinite Scroll enhancements to improve performance
-* Enhancement: Infinite Scroll will use your CPT's display name instead of "Older Posts"
-* Enhancement: JSON API added /media/new endpoint
-* Enhancement: Added filter to assign new default image for Open Graph tags
-* Enhancement: New [jetpack-related-posts] shortcode to add Related Posts to page instead of default placement
-* Enhancement: Added SSO option to turn off login form completely, to use WordPress.com login exclusively
-* Enhancement: The [googlemaps] shortcode allows for Google Maps Engine
-* Enhancement: YouTube shortcode allows HD playback
-* Enhancement: Smoother, Faster Tiled Galleries!
-* Enhancement: New languages! Use Jetpack in Irish, Fulah, and Tigrinya
-* Bug Fix: Use your browser's Back and Forward buttons when naviagating a Carousel
-* Bug Fix: Various Related Posts fixes and improvements for added flexibility
-* Bug Fix: WordPress 3.9: Restores ability to edit Contact Forms
-* Bug Fix: WordPress 3.9: Restores Gallery Widget compatability
-* Bug Fix: Ensure Markdown is kept when Bulk Editing posts
-* Bug Fix: Improved Jetpack's Multisite Network Admin page for networks with a large number of sites
-* Bug Fix: Ensure Sharing settings persist when Bulk Editing a post
-* Bug Fix: Various other shortcode improvements
-
-= 2.9.3 =
-Re…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants