From 023040d58f7c63ca22cfaed73f9ae701b09cc564 Mon Sep 17 00:00:00 2001 From: Adnan Haque <3737780+haqadn@users.noreply.github.com> Date: Tue, 22 Oct 2024 17:55:31 +0200 Subject: [PATCH 01/12] Boost: Don't add a posts page if front page is set but not the posts page (#39862) --- .../source-providers/providers/WP_Core_Provider.php | 4 ++-- projects/plugins/boost/changelog/update-ccss-core-providers | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 projects/plugins/boost/changelog/update-ccss-core-providers diff --git a/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php b/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php index e2b63769a6784..68445b4031fbb 100644 --- a/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php +++ b/projects/plugins/boost/app/lib/critical-css/source-providers/providers/WP_Core_Provider.php @@ -43,8 +43,8 @@ public static function get_critical_source_urls( $context_posts = array() ) { if ( ! empty( $permalink ) ) { $urls['posts_page'] = array( $permalink ); } - } else { - $urls['posts_page'] = (array) home_url( '/' ); + } elseif ( ! $front_page ) { + $urls['posts_page'] = array( home_url( '/' ) ); } return $urls; diff --git a/projects/plugins/boost/changelog/update-ccss-core-providers b/projects/plugins/boost/changelog/update-ccss-core-providers new file mode 100644 index 0000000000000..527e9511c0c8b --- /dev/null +++ b/projects/plugins/boost/changelog/update-ccss-core-providers @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Critical CSS: Make the list of critical CSS URLs more efficient. From b275dbed492281e35cb24a8b5659ea86594eb61a Mon Sep 17 00:00:00 2001 From: Mikael Korpela Date: Tue, 22 Oct 2024 19:41:14 +0300 Subject: [PATCH 02/12] Floating subscribe button: add source for stats (#39860) --- .../jetpack/changelog/update-floating-subscribe-button-source | 4 ++++ .../class-jetpack-subscribe-floating-button.php | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 projects/plugins/jetpack/changelog/update-floating-subscribe-button-source diff --git a/projects/plugins/jetpack/changelog/update-floating-subscribe-button-source b/projects/plugins/jetpack/changelog/update-floating-subscribe-button-source new file mode 100644 index 0000000000000..c31ed74d6a395 --- /dev/null +++ b/projects/plugins/jetpack/changelog/update-floating-subscribe-button-source @@ -0,0 +1,4 @@ +Significance: minor +Type: other + +Floating subscribe button: add source attribute for stats diff --git a/projects/plugins/jetpack/modules/subscriptions/subscribe-floating-button/class-jetpack-subscribe-floating-button.php b/projects/plugins/jetpack/modules/subscriptions/subscribe-floating-button/class-jetpack-subscribe-floating-button.php index 8fa9792886c7d..09bb8ec5de85a 100644 --- a/projects/plugins/jetpack/modules/subscriptions/subscribe-floating-button/class-jetpack-subscribe-floating-button.php +++ b/projects/plugins/jetpack/modules/subscriptions/subscribe-floating-button/class-jetpack-subscribe-floating-button.php @@ -111,7 +111,7 @@ public function get_template() { public function get_floating_subscribe_button_template_content() { $block_name = esc_attr__( 'Floating subscribe button', 'jetpack' ); - return ''; + return ''; } /** From 932747acd37c83f48cb97bf1b81542fb9d679ec8 Mon Sep 17 00:00:00 2001 From: Christian Gastrell Date: Tue, 22 Oct 2024 14:18:59 -0300 Subject: [PATCH 03/12] AI Client: make fetch error retry optional (#39848) * make reload handler optional on fetch error notice * changelog * provide empty retry handler * move condition process to modal initializer * cleanup new open handler --- ...ange-jetpack-ai-fetch-error-retry-optional | 4 +++ .../feature-fetch-failure-screen.tsx | 19 ++++++++--- .../components/generator-modal.tsx | 33 ++++++++++++++----- .../ai-client/src/logo-generator/types.ts | 2 +- ...ange-jetpack-ai-fetch-error-retry-optional | 4 +++ .../extended-blocks/core-site-logo/index.tsx | 11 ++++--- 6 files changed, 54 insertions(+), 19 deletions(-) create mode 100644 projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional create mode 100644 projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional diff --git a/projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional b/projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional new file mode 100644 index 0000000000000..22ca3f2a46ba9 --- /dev/null +++ b/projects/js-packages/ai-client/changelog/change-jetpack-ai-fetch-error-retry-optional @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +AI Client: make reload handler prop optional as it still works in a fuzzy way. The error notice (modal) will instruct to reload the page when the optional prop is not provided diff --git a/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx b/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx index cd1f53acdf38c..3404e7c1fbb0b 100644 --- a/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx +++ b/projects/js-packages/ai-client/src/logo-generator/components/feature-fetch-failure-screen.tsx @@ -10,25 +10,34 @@ import type React from 'react'; export const FeatureFetchFailureScreen: React.FC< { onCancel: () => void; - onRetry: () => void; + onRetry?: () => void; } > = ( { onCancel, onRetry } ) => { const errorMessage = __( 'We are sorry. There was an error loading your Jetpack AI plan data. Please, try again.', 'jetpack-ai-client' ); + const errorMessageWithoutRetry = __( + 'We are sorry. There was an error loading your Jetpack AI plan data. Please, reload the page and try again.', + 'jetpack-ai-client' + ); + return (
- { errorMessage } + + { onRetry ? errorMessage : errorMessageWithoutRetry } +
- + { onRetry && ( + + ) }
); diff --git a/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx b/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx index e4d6c183d5835..dfba25feb65fa 100644 --- a/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx +++ b/projects/js-packages/ai-client/src/logo-generator/components/generator-modal.tsx @@ -45,7 +45,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { isOpen, onClose, onApplyLogo, - onReload, + onReload = null, siteDetails, context, placement, @@ -73,7 +73,8 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { site, requireUpgrade, } = useLogoGenerator(); - const { featureFetchError, firstLogoPromptFetchError, clearErrors } = useRequestErrors(); + const { featureFetchError, setFeatureFetchError, firstLogoPromptFetchError, clearErrors } = + useRequestErrors(); const siteId = siteDetails?.ID; const [ logoAccepted, setLogoAccepted ] = useState( false ); const { nextTierCheckoutURL: upgradeURL } = useCheckout(); @@ -105,6 +106,15 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { */ const initializeModal = useCallback( async () => { try { + if ( ! siteId ) { + throw new Error( 'Site ID is missing' ); + } + + if ( ! feature?.featuresControl?.[ 'logo-generator' ]?.enabled ) { + setFeatureFetchError( 'Failed to fetch feature data' ); + throw new Error( 'Failed to fetch feature data' ); + } + const hasHistory = ! isLogoHistoryEmpty( String( siteId ) ); const logoCost = feature?.costs?.[ 'jetpack-ai-logo-generator' ]?.logo ?? DEFAULT_LOGO_COST; @@ -179,6 +189,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { isLogoHistoryEmpty, siteId, requireUpgrade, + setFeatureFetchError, ] ); const handleModalOpen = useCallback( async () => { @@ -201,6 +212,15 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { recordTracksEvent( EVENT_MODAL_CLOSE, { context, placement } ); }; + const handleReload = useCallback( () => { + if ( ! onReload ) { + return; + } + closeModal(); + requestedFeatureData.current = false; + onReload(); + }, [ onReload, closeModal ] ); + const handleApplyLogo = ( mediaId: number ) => { setLogoAccepted( true ); onApplyLogo?.( mediaId ); @@ -229,7 +249,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { // Handles modal opening logic useEffect( () => { // While the modal is not open, the siteId is not set, or the feature data is not available, do nothing. - if ( ! isOpen || ! siteId || ! feature?.costs ) { + if ( ! isOpen ) { return; } @@ -238,7 +258,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { needsToHandleModalOpen.current = false; handleModalOpen(); } - }, [ isOpen, siteId, handleModalOpen, feature ] ); + }, [ isOpen, handleModalOpen ] ); let body: React.ReactNode; @@ -248,10 +268,7 @@ export const GeneratorModal: React.FC< GeneratorModalProps > = ( { body = ( { - closeModal(); - onReload?.(); - } } + onRetry={ onReload ? handleReload : null } /> ); } else if ( needsFeature || needsMoreRequests ) { diff --git a/projects/js-packages/ai-client/src/logo-generator/types.ts b/projects/js-packages/ai-client/src/logo-generator/types.ts index f25e238a9737c..e54cf774ac98e 100644 --- a/projects/js-packages/ai-client/src/logo-generator/types.ts +++ b/projects/js-packages/ai-client/src/logo-generator/types.ts @@ -16,7 +16,7 @@ export interface GeneratorModalProps { isOpen: boolean; onClose: () => void; onApplyLogo: ( mediaId: number ) => void; - onReload: () => void; + onReload?: () => void; context: string; placement: string; } diff --git a/projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional b/projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional new file mode 100644 index 0000000000000..38baa75852ac8 --- /dev/null +++ b/projects/plugins/jetpack/changelog/change-jetpack-ai-fetch-error-retry-optional @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +Jetpack AI: remove reload handler for logo generator modal call diff --git a/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx b/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx index 233e96aad4a65..6d34c34b5c0ac 100644 --- a/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx +++ b/projects/plugins/jetpack/extensions/extended-blocks/core-site-logo/index.tsx @@ -102,10 +102,10 @@ const siteLogoEditWithAiComponents = createHigherOrderComponent( BlockEdit => { setIsLogoGeneratorModalVisible( false ); }, [] ); - const reloadModal = useCallback( () => { - closeModal(); - showModal(); - }, [ closeModal, showModal ] ); + // const reloadModal = useCallback( () => { + // closeModal(); + // showModal(); + // }, [ closeModal, showModal ] ); const applyLogoHandler = useCallback( ( mediaId: number ) => { @@ -135,7 +135,8 @@ const siteLogoEditWithAiComponents = createHigherOrderComponent( BlockEdit => { isOpen={ isLogoGeneratorModalVisible } onClose={ closeModal } onApplyLogo={ applyLogoHandler } - onReload={ reloadModal } + // reload is not working right and can end up showing a non functional modal + // onReload={ reloadModal } context={ PLACEMENT_CONTEXT } placement={ TOOL_PLACEMENT } siteDetails={ siteDetails } From 248684d3a70bc645f8a5b23a937efda9a33b1765 Mon Sep 17 00:00:00 2001 From: Christian Gastrell Date: Tue, 22 Oct 2024 15:28:53 -0300 Subject: [PATCH 04/12] add test instructions for next release (#39866) --- ...pack-ai-logo-generator-styles-instructions | 4 +++ projects/plugins/jetpack/to-test.md | 28 +++++++++++++++++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions diff --git a/projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions b/projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions new file mode 100644 index 0000000000000..9c813a1ba3abf --- /dev/null +++ b/projects/plugins/jetpack/changelog/add-jetpack-ai-logo-generator-styles-instructions @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +Jetpack AI: add instructions on to-test file diff --git a/projects/plugins/jetpack/to-test.md b/projects/plugins/jetpack/to-test.md index 17612f968e23d..0b898396b9eb5 100644 --- a/projects/plugins/jetpack/to-test.md +++ b/projects/plugins/jetpack/to-test.md @@ -10,9 +10,33 @@ - Or add the following to something like a code snippet plugin: `add_filter( 'jetpack_blocks_variation', function () { return 'beta'; } );` - To test Breve further in the document please enable the feature with the following snippet: `add_filter( 'breve_enabled', '__return_true' );` -### Your Feature +### AI Logo Generator -Add testing instructions below. +On top of the already available AI Logo generator, we've now added a styles dropdown to allow more control for the user without depending entirely on the provided prompt. + +The logo generator is not available for free users, test with a plan or subscription. Also, it's currenlty available for a12s (and will soon be open to public), but if you need to test with another account and have access to a sandbox, you can add a filter to enable the styles on your 0-sandbox.php file: `add_filter( 'jetpack_ai_logo_style_selector_enabled', '__return_true' );` + +- Load the editor and add a Logo block. +- On the network tab you should see a request to `ai-assistant-feature` + - If using an a11n account (or focing the filter to `true`), the response should include `featuresControl['logo-generator'].styles` as a collection of style objects. + - If NOT using an a11n account, the `styles` property should be an empty array. +``` +{ + ... + featuresControl: { + 'logo-generator': { + enabled: true, + styles: [ COLLECTION OF SYLES HERE ] + } + } +} +``` +- Use the block's AI toolbar button to open the Logo generator modal, you should see a style dropdown on the top-right corner +- Feel free to play with the styles to achieve different results +- Confirm that using style "Auto" will try to guess the style based on the prompt (AI query request) and set the style prior to sending the image generation request +- If possible, try different combinations of plans and cases: + - use `add_filter( 'jetpack_ai_tier_licensed_quantity', function() { return 0 | 100 | 1; } );` filter to mock free/tier100/unlimited plans + - sandbox the API, but then don't connect to sandbox to mock a disconnected situation ### And More! From fd6e2c5253cce1262bac1b11c447c54f67bcc5a2 Mon Sep 17 00:00:00 2001 From: Sergey Mitroshin Date: Tue, 22 Oct 2024 15:09:13 -0400 Subject: [PATCH 05/12] Stats: optimize the Admin Bar hook (#39857) Optimize the Stats Admin Bar hook by narrowing down the callback. --- .../jetpack/changelog/update-narrow-down-stats-bar-hook | 4 ++++ projects/plugins/jetpack/modules/stats.php | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook diff --git a/projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook b/projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook new file mode 100644 index 0000000000000..1eff8c83b266e --- /dev/null +++ b/projects/plugins/jetpack/changelog/update-narrow-down-stats-bar-hook @@ -0,0 +1,4 @@ +Significance: patch +Type: other + +Optimize the Stats Admin Bar hook by narrowing down the callback. diff --git a/projects/plugins/jetpack/modules/stats.php b/projects/plugins/jetpack/modules/stats.php index cf12fe07c5ee9..224ba4a177d89 100644 --- a/projects/plugins/jetpack/modules/stats.php +++ b/projects/plugins/jetpack/modules/stats.php @@ -54,7 +54,10 @@ function stats_load() { Jetpack::enable_module_configurable( __FILE__ ); - add_action( 'wp_head', 'stats_admin_bar_head', 100 ); + // Only run the callback for those who can see the stats. + if ( is_user_logged_in() && current_user_can( 'view_stats' ) ) { + add_action( 'wp_head', 'stats_admin_bar_head', 100 ); + } add_action( 'jetpack_admin_menu', 'stats_admin_menu' ); From 9b7703d7ddff0692594661ed4b36f4182d3380c7 Mon Sep 17 00:00:00 2001 From: Manzoor Wani Date: Tue, 22 Oct 2024 22:29:33 -0700 Subject: [PATCH 06/12] Social: Fix Bluesky custom domain handle not being accepted (#39872) --- .../fix-social-bluesky-custom-domain-handles-not-working | 4 ++++ .../src/components/services/use-request-access.ts | 8 ++++---- 2 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 projects/js-packages/publicize-components/changelog/fix-social-bluesky-custom-domain-handles-not-working diff --git a/projects/js-packages/publicize-components/changelog/fix-social-bluesky-custom-domain-handles-not-working b/projects/js-packages/publicize-components/changelog/fix-social-bluesky-custom-domain-handles-not-working new file mode 100644 index 0000000000000..5857f3006fd35 --- /dev/null +++ b/projects/js-packages/publicize-components/changelog/fix-social-bluesky-custom-domain-handles-not-working @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +Social: Fixed Bluesky custom domain handle not being accepted diff --git a/projects/js-packages/publicize-components/src/components/services/use-request-access.ts b/projects/js-packages/publicize-components/src/components/services/use-request-access.ts index e12af39dfefca..5a5ea00117b4a 100644 --- a/projects/js-packages/publicize-components/src/components/services/use-request-access.ts +++ b/projects/js-packages/publicize-components/src/components/services/use-request-access.ts @@ -11,10 +11,10 @@ const isValidMastodonUsername = ( username: string ) => /** * Example valid handles: + * - domain.tld * - username.bsky.social * - user-name.bsky.social - * - my_domain.com.bsky.social - * - my-domain.com.my-own-server.com + * - my-domain.com * * @param {string} handle - Handle to validate * @@ -23,8 +23,8 @@ const isValidMastodonUsername = ( username: string ) => function isValidBlueskyHandle( handle: string ) { const parts = handle.split( '.' ).filter( Boolean ); - // A valid handle should have at least 3 parts - username, domain, and tld - if ( parts.length < 3 ) { + // A valid handle should have at least 2 parts - domain, and tld + if ( parts.length < 2 ) { return false; } From 2599f568696a46786e4d9a281b14a9ee05065c7f Mon Sep 17 00:00:00 2001 From: Kuba Birecki Date: Wed, 23 Oct 2024 12:45:09 +0200 Subject: [PATCH 07/12] Backport changes for Jetpack 14.0-a.7 (#39855) * Changelog and readme.txt edits. * Update changelog entries for clarity * Update readme.txt --- projects/js-packages/ai-client/CHANGELOG.md | 5 ++++ .../add-jetpack-ai-features-control-types | 4 ---- projects/js-packages/ai-client/package.json | 2 +- .../js-packages/partner-coupon/CHANGELOG.md | 4 ++++ .../partner-coupon/changelog/force-a-release | 4 ---- .../js-packages/partner-coupon/package.json | 2 +- .../publicize-components/CHANGELOG.md | 9 ++++++++ .../changelog/fix-social-bluesky-display-name | 4 ---- .../changelog/force-a-release | 4 ---- ...ocial-initial-state-migrate-urls-in-editor | 4 ---- ...initial-state-migrate-urls-on-social-admin | 4 ---- .../publicize-components/package.json | 2 +- projects/js-packages/script-data/CHANGELOG.md | 5 ++++ ...ix-site-specific-features-for-simple-sites | 4 ---- projects/js-packages/script-data/package.json | 2 +- .../shared-extension-utils/CHANGELOG.md | 5 ++++ .../changelog/force-a-release | 4 ---- .../shared-extension-utils/package.json | 2 +- projects/packages/backup/CHANGELOG.md | 5 ++++ .../packages/backup/changelog/force-a-release | 4 ---- .../backup/src/class-package-version.php | 2 +- projects/packages/blaze/CHANGELOG.md | 5 ++++ .../packages/blaze/changelog/force-a-release | 4 ---- projects/packages/blaze/package.json | 2 +- .../packages/blaze/src/class-dashboard.php | 2 +- projects/packages/connection/CHANGELOG.md | 5 ++++ ...update-sso-optimize-admin-notices-callback | 4 ---- .../connection/src/class-package-version.php | 2 +- projects/packages/forms/CHANGELOG.md | 5 ++++ .../packages/forms/changelog/force-a-release | 4 ---- projects/packages/forms/package.json | 2 +- .../forms/src/class-jetpack-forms.php | 2 +- projects/packages/plans/CHANGELOG.md | 5 ++++ ...ix-site-specific-features-for-simple-sites | 4 ---- projects/packages/plans/package.json | 2 +- projects/packages/publicize/CHANGELOG.md | 8 +++++++ ...ix-site-specific-features-for-simple-sites | 4 ---- ...initial-state-migrate-urls-on-social-admin | 4 ---- projects/packages/publicize/package.json | 2 +- projects/packages/search/CHANGELOG.md | 5 ++++ .../packages/search/changelog/force-a-release | 4 ---- projects/packages/search/package.json | 2 +- .../packages/search/src/class-package.php | 2 +- projects/packages/stats-admin/CHANGELOG.md | 4 ++++ .../update-integration-jitm-in-stats | 4 ---- projects/packages/stats-admin/package.json | 2 +- .../packages/stats-admin/src/class-main.php | 2 +- projects/packages/videopress/CHANGELOG.md | 5 ++++ .../videopress/changelog/force-a-release | 4 ---- projects/packages/videopress/package.json | 2 +- .../videopress/src/class-package-version.php | 2 +- projects/packages/wordads/CHANGELOG.md | 5 ++++ .../wordads/changelog/force-a-release | 4 ---- projects/packages/wordads/package.json | 2 +- .../packages/wordads/src/class-package.php | 2 +- projects/plugins/jetpack/CHANGELOG.md | 23 +++++++++++++++++++ .../add-newsletter-preview-menu-item | 4 ---- ...-block-as-preview-if-in-block-preview-mode | 4 ---- .../changelog/fix-class-not-found-error | 4 ---- .../changelog/fix-map-block-auto-height | 4 ---- .../changelog/fix-newsletter-settings-api | 4 ---- .../fix-slideshow-block-global-styles | 4 ---- .../fix-stats-explode-trailing-newline | 5 ---- .../jetpack/changelog/fix-story-block-fatal | 4 ---- .../fix-story-block-key-prop-warning | 4 ---- .../changelog/fix-sync-filter-null-array | 4 ---- .../changelog/fix-video-upload-media-notice | 4 ---- .../remove-preview-attribute-from-map-block | 4 ---- .../changelog/revert-admin_notice_37051 | 4 ---- ...ocial-initial-state-migrate-urls-in-editor | 4 ---- .../changelog/update-subscriptions-skip-modal | 4 ---- projects/plugins/jetpack/composer.json | 2 +- projects/plugins/jetpack/jetpack.php | 4 ++-- projects/plugins/jetpack/package.json | 2 +- projects/plugins/jetpack/readme.txt | 16 ++++++++++--- 75 files changed, 141 insertions(+), 165 deletions(-) delete mode 100644 projects/js-packages/ai-client/changelog/add-jetpack-ai-features-control-types delete mode 100644 projects/js-packages/partner-coupon/changelog/force-a-release delete mode 100644 projects/js-packages/publicize-components/changelog/fix-social-bluesky-display-name delete mode 100644 projects/js-packages/publicize-components/changelog/force-a-release delete mode 100644 projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-in-editor delete mode 100644 projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-on-social-admin delete mode 100644 projects/js-packages/script-data/changelog/fix-site-specific-features-for-simple-sites delete mode 100644 projects/js-packages/shared-extension-utils/changelog/force-a-release delete mode 100644 projects/packages/backup/changelog/force-a-release delete mode 100644 projects/packages/blaze/changelog/force-a-release delete mode 100644 projects/packages/connection/changelog/update-sso-optimize-admin-notices-callback delete mode 100644 projects/packages/forms/changelog/force-a-release delete mode 100644 projects/packages/plans/changelog/fix-site-specific-features-for-simple-sites delete mode 100644 projects/packages/publicize/changelog/fix-site-specific-features-for-simple-sites delete mode 100644 projects/packages/publicize/changelog/update-social-initial-state-migrate-urls-on-social-admin delete mode 100644 projects/packages/search/changelog/force-a-release delete mode 100644 projects/packages/stats-admin/changelog/update-integration-jitm-in-stats delete mode 100644 projects/packages/videopress/changelog/force-a-release delete mode 100644 projects/packages/wordads/changelog/force-a-release delete mode 100644 projects/plugins/jetpack/changelog/add-newsletter-preview-menu-item delete mode 100644 projects/plugins/jetpack/changelog/display-map-block-as-preview-if-in-block-preview-mode delete mode 100644 projects/plugins/jetpack/changelog/fix-class-not-found-error delete mode 100644 projects/plugins/jetpack/changelog/fix-map-block-auto-height delete mode 100644 projects/plugins/jetpack/changelog/fix-newsletter-settings-api delete mode 100644 projects/plugins/jetpack/changelog/fix-slideshow-block-global-styles delete mode 100644 projects/plugins/jetpack/changelog/fix-stats-explode-trailing-newline delete mode 100644 projects/plugins/jetpack/changelog/fix-story-block-fatal delete mode 100644 projects/plugins/jetpack/changelog/fix-story-block-key-prop-warning delete mode 100644 projects/plugins/jetpack/changelog/fix-sync-filter-null-array delete mode 100644 projects/plugins/jetpack/changelog/fix-video-upload-media-notice delete mode 100644 projects/plugins/jetpack/changelog/remove-preview-attribute-from-map-block delete mode 100644 projects/plugins/jetpack/changelog/revert-admin_notice_37051 delete mode 100644 projects/plugins/jetpack/changelog/update-social-initial-state-migrate-urls-in-editor delete mode 100644 projects/plugins/jetpack/changelog/update-subscriptions-skip-modal diff --git a/projects/js-packages/ai-client/CHANGELOG.md b/projects/js-packages/ai-client/CHANGELOG.md index 54f957ea86683..99bcab06d2685 100644 --- a/projects/js-packages/ai-client/CHANGELOG.md +++ b/projects/js-packages/ai-client/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.22.0] - 2024-10-21 +### Changed +- AI Client: Add types for AI assistant feature payload data branch featuresControl. [#39826] + ## [0.21.0] - 2024-10-14 ### Added - AI Client: Add image styles 'auto' and 'none' to the logo generator. Order styles so those are on top in the dropdown selector. [#39689] @@ -435,6 +439,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. [#31659] - Updated package dependencies. [#31785] +[0.22.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.21.0...v0.22.0 [0.21.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.20.1...v0.21.0 [0.20.1]: https://github.com/Automattic/jetpack-ai-client/compare/v0.20.0...v0.20.1 [0.20.0]: https://github.com/Automattic/jetpack-ai-client/compare/v0.19.0...v0.20.0 diff --git a/projects/js-packages/ai-client/changelog/add-jetpack-ai-features-control-types b/projects/js-packages/ai-client/changelog/add-jetpack-ai-features-control-types deleted file mode 100644 index 68e175cac7043..0000000000000 --- a/projects/js-packages/ai-client/changelog/add-jetpack-ai-features-control-types +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: changed - -AI Client: add types for AI assistant feature payload data branch featuresControl diff --git a/projects/js-packages/ai-client/package.json b/projects/js-packages/ai-client/package.json index d376a895d3cb7..a35a4e132b951 100644 --- a/projects/js-packages/ai-client/package.json +++ b/projects/js-packages/ai-client/package.json @@ -1,7 +1,7 @@ { "private": false, "name": "@automattic/jetpack-ai-client", - "version": "0.21.0", + "version": "0.22.0", "description": "A JS client for consuming Jetpack AI services", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/ai-client/#readme", "bugs": { diff --git a/projects/js-packages/partner-coupon/CHANGELOG.md b/projects/js-packages/partner-coupon/CHANGELOG.md index 42c3b08d9a664..b06983ee66eb5 100644 --- a/projects/js-packages/partner-coupon/CHANGELOG.md +++ b/projects/js-packages/partner-coupon/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 0.2.93 - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## 0.2.92 - 2024-10-14 ### Changed - Updated package dependencies. [#39707] diff --git a/projects/js-packages/partner-coupon/changelog/force-a-release b/projects/js-packages/partner-coupon/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/js-packages/partner-coupon/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/js-packages/partner-coupon/package.json b/projects/js-packages/partner-coupon/package.json index cc979e05da105..e940ad6672592 100644 --- a/projects/js-packages/partner-coupon/package.json +++ b/projects/js-packages/partner-coupon/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-partner-coupon", - "version": "0.2.92", + "version": "0.2.93", "description": "This package aims to add components to make it easier to redeem partner coupons", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/partner-coupon/#readme", "bugs": { diff --git a/projects/js-packages/publicize-components/CHANGELOG.md b/projects/js-packages/publicize-components/CHANGELOG.md index cc0e827f8d4cd..a47006d9fe0db 100644 --- a/projects/js-packages/publicize-components/CHANGELOG.md +++ b/projects/js-packages/publicize-components/CHANGELOG.md @@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.71.3] - 2024-10-21 +### Changed +- Initial state: Migrated URLs in the editor to the new script data. [#39799] [#39797] +- Update dependencies. [#39781] + +### Fixed +- Social: Fixed Bluesky display name when it's not set in Bluesky profile. [#39840] + ## [0.71.2] - 2024-10-14 ### Added - Social: Added Bluesky to social previews. [#39659] @@ -970,6 +978,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Updated package dependencies. [#24470] +[0.71.3]: https://github.com/Automattic/jetpack-publicize-components/compare/v0.71.2...v0.71.3 [0.71.2]: https://github.com/Automattic/jetpack-publicize-components/compare/v0.71.1...v0.71.2 [0.71.1]: https://github.com/Automattic/jetpack-publicize-components/compare/v0.71.0...v0.71.1 [0.71.0]: https://github.com/Automattic/jetpack-publicize-components/compare/v0.70.1...v0.71.0 diff --git a/projects/js-packages/publicize-components/changelog/fix-social-bluesky-display-name b/projects/js-packages/publicize-components/changelog/fix-social-bluesky-display-name deleted file mode 100644 index ec1589efa9688..0000000000000 --- a/projects/js-packages/publicize-components/changelog/fix-social-bluesky-display-name +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Social: Fixed Bluesky display name when it's not set in Bluesky profile diff --git a/projects/js-packages/publicize-components/changelog/force-a-release b/projects/js-packages/publicize-components/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/js-packages/publicize-components/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-in-editor b/projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-in-editor deleted file mode 100644 index 71f7bcb2beb79..0000000000000 --- a/projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-in-editor +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Initial state: Migrated URLs in the editor to the new script data diff --git a/projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-on-social-admin b/projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-on-social-admin deleted file mode 100644 index c23ee0fbdc59a..0000000000000 --- a/projects/js-packages/publicize-components/changelog/update-social-initial-state-migrate-urls-on-social-admin +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Initial State: Migrated URLs to script data diff --git a/projects/js-packages/publicize-components/package.json b/projects/js-packages/publicize-components/package.json index 87ec5e146b293..54856e9583755 100644 --- a/projects/js-packages/publicize-components/package.json +++ b/projects/js-packages/publicize-components/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-publicize-components", - "version": "0.71.2", + "version": "0.71.3", "description": "A library of JS components required by the Publicize editor plugin", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/publicize-components/#readme", "bugs": { diff --git a/projects/js-packages/script-data/CHANGELOG.md b/projects/js-packages/script-data/CHANGELOG.md index 483863296910b..d6008bd9ac192 100644 --- a/projects/js-packages/script-data/CHANGELOG.md +++ b/projects/js-packages/script-data/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.1.3] - 2024-10-21 +### Fixed +- Fixed the site features for Simple sites. [#39817] + ## [0.1.2] - 2024-08-21 ### Changed - Internal updates. @@ -17,5 +21,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Added jetpack-script-data package to consolidate the logic for Jetpack Initial state [#38430] +[0.1.3]: https://github.com/Automattic/jetpack-script-data/compare/v0.1.2...v0.1.3 [0.1.2]: https://github.com/Automattic/jetpack-script-data/compare/v0.1.1...v0.1.2 [0.1.1]: https://github.com/Automattic/jetpack-script-data/compare/v0.1.0...v0.1.1 diff --git a/projects/js-packages/script-data/changelog/fix-site-specific-features-for-simple-sites b/projects/js-packages/script-data/changelog/fix-site-specific-features-for-simple-sites deleted file mode 100644 index 8d0bfe4ddc2c9..0000000000000 --- a/projects/js-packages/script-data/changelog/fix-site-specific-features-for-simple-sites +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Fixed the site features for Simple sites diff --git a/projects/js-packages/script-data/package.json b/projects/js-packages/script-data/package.json index 98db58435ae5f..b95ad91379ed9 100644 --- a/projects/js-packages/script-data/package.json +++ b/projects/js-packages/script-data/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-script-data", - "version": "0.1.2", + "version": "0.1.3", "description": "A library to provide data for script handles and the corresponding utility functions for Jetpack.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/script-data/#readme", "bugs": { diff --git a/projects/js-packages/shared-extension-utils/CHANGELOG.md b/projects/js-packages/shared-extension-utils/CHANGELOG.md index 92ced18380878..b0abeb5df6cdb 100644 --- a/projects/js-packages/shared-extension-utils/CHANGELOG.md +++ b/projects/js-packages/shared-extension-utils/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.15.14] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [0.15.13] - 2024-10-14 ### Changed - Updated package dependencies. [#39707] @@ -471,6 +475,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Core: prepare utility for release +[0.15.14]: https://github.com/Automattic/jetpack-shared-extension-utils/compare/0.15.13...0.15.14 [0.15.13]: https://github.com/Automattic/jetpack-shared-extension-utils/compare/0.15.12...0.15.13 [0.15.12]: https://github.com/Automattic/jetpack-shared-extension-utils/compare/0.15.11...0.15.12 [0.15.11]: https://github.com/Automattic/jetpack-shared-extension-utils/compare/0.15.10...0.15.11 diff --git a/projects/js-packages/shared-extension-utils/changelog/force-a-release b/projects/js-packages/shared-extension-utils/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/js-packages/shared-extension-utils/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/js-packages/shared-extension-utils/package.json b/projects/js-packages/shared-extension-utils/package.json index c4af22048acfd..25a832f9b09fa 100644 --- a/projects/js-packages/shared-extension-utils/package.json +++ b/projects/js-packages/shared-extension-utils/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-shared-extension-utils", - "version": "0.15.13", + "version": "0.15.14", "description": "Utility functions used by the block editor extensions", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/shared-extension-utils/#readme", "bugs": { diff --git a/projects/packages/backup/CHANGELOG.md b/projects/packages/backup/CHANGELOG.md index 67503b335190d..fa30ee71ad93c 100644 --- a/projects/packages/backup/CHANGELOG.md +++ b/projects/packages/backup/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [3.4.15] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [3.4.14] - 2024-10-14 ### Changed - Only include `wp-polyfill` as a script dependency when needed. [#39629] @@ -718,6 +722,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add API endpoints and Jetpack Backup package for managing Help… +[3.4.15]: https://github.com/Automattic/jetpack-backup/compare/v3.4.14...v3.4.15 [3.4.14]: https://github.com/Automattic/jetpack-backup/compare/v3.4.13...v3.4.14 [3.4.13]: https://github.com/Automattic/jetpack-backup/compare/v3.4.12...v3.4.13 [3.4.12]: https://github.com/Automattic/jetpack-backup/compare/v3.4.11...v3.4.12 diff --git a/projects/packages/backup/changelog/force-a-release b/projects/packages/backup/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/packages/backup/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/packages/backup/src/class-package-version.php b/projects/packages/backup/src/class-package-version.php index 57e6e4efe9e4f..de8eb1d2e432a 100644 --- a/projects/packages/backup/src/class-package-version.php +++ b/projects/packages/backup/src/class-package-version.php @@ -16,7 +16,7 @@ */ class Package_Version { - const PACKAGE_VERSION = '3.4.14'; + const PACKAGE_VERSION = '3.4.15'; const PACKAGE_SLUG = 'backup'; diff --git a/projects/packages/blaze/CHANGELOG.md b/projects/packages/blaze/CHANGELOG.md index 490182acf3571..64f62d295a32a 100644 --- a/projects/packages/blaze/CHANGELOG.md +++ b/projects/packages/blaze/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.23.2] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [0.23.1] - 2024-10-14 ### Changed - Only include `wp-polyfill` as a script dependency when needed. [#39629] @@ -466,6 +470,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Updated package dependencies. [#27906] +[0.23.2]: https://github.com/automattic/jetpack-blaze/compare/v0.23.1...v0.23.2 [0.23.1]: https://github.com/automattic/jetpack-blaze/compare/v0.23.0...v0.23.1 [0.23.0]: https://github.com/automattic/jetpack-blaze/compare/v0.22.12...v0.23.0 [0.22.12]: https://github.com/automattic/jetpack-blaze/compare/v0.22.11...v0.22.12 diff --git a/projects/packages/blaze/changelog/force-a-release b/projects/packages/blaze/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/packages/blaze/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/packages/blaze/package.json b/projects/packages/blaze/package.json index d04a82d00d01d..e7552046cf583 100644 --- a/projects/packages/blaze/package.json +++ b/projects/packages/blaze/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-blaze", - "version": "0.23.1", + "version": "0.23.2", "description": "Attract high-quality traffic to your site using Blaze. Using this service, you can advertise a post or page on some of the millions of pages across WordPress.com and Tumblr from just $5 per day.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/blaze/#readme", "bugs": { diff --git a/projects/packages/blaze/src/class-dashboard.php b/projects/packages/blaze/src/class-dashboard.php index 701fd7cbae9ea..110872540a70f 100644 --- a/projects/packages/blaze/src/class-dashboard.php +++ b/projects/packages/blaze/src/class-dashboard.php @@ -21,7 +21,7 @@ class Dashboard { * * @var string */ - const PACKAGE_VERSION = '0.23.1'; + const PACKAGE_VERSION = '0.23.2'; /** * List of dependencies needed to render the dashboard in wp-admin. diff --git a/projects/packages/connection/CHANGELOG.md b/projects/packages/connection/CHANGELOG.md index b4755a410b998..01ae992f43f27 100644 --- a/projects/packages/connection/CHANGELOG.md +++ b/projects/packages/connection/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [5.1.4] - 2024-10-21 +### Changed +- SSO: optimize 'admin_notices' action callback. [#39811] + ## [5.1.3] - 2024-10-10 ### Changed - Updated package dependencies. @@ -1226,6 +1230,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Separate the connection library into its own package. +[5.1.4]: https://github.com/Automattic/jetpack-connection/compare/v5.1.3...v5.1.4 [5.1.3]: https://github.com/Automattic/jetpack-connection/compare/v5.1.2...v5.1.3 [5.1.2]: https://github.com/Automattic/jetpack-connection/compare/v5.1.1...v5.1.2 [5.1.1]: https://github.com/Automattic/jetpack-connection/compare/v5.1.0...v5.1.1 diff --git a/projects/packages/connection/changelog/update-sso-optimize-admin-notices-callback b/projects/packages/connection/changelog/update-sso-optimize-admin-notices-callback deleted file mode 100644 index ae5bb946df85e..0000000000000 --- a/projects/packages/connection/changelog/update-sso-optimize-admin-notices-callback +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -SSO: optimize 'admin_notices' action callback. diff --git a/projects/packages/connection/src/class-package-version.php b/projects/packages/connection/src/class-package-version.php index a11e92bf93e7b..0ed481101c11e 100644 --- a/projects/packages/connection/src/class-package-version.php +++ b/projects/packages/connection/src/class-package-version.php @@ -12,7 +12,7 @@ */ class Package_Version { - const PACKAGE_VERSION = '5.1.3'; + const PACKAGE_VERSION = '5.1.4'; const PACKAGE_SLUG = 'connection'; diff --git a/projects/packages/forms/CHANGELOG.md b/projects/packages/forms/CHANGELOG.md index 6136f9063e1f2..2357526c70e25 100644 --- a/projects/packages/forms/CHANGELOG.md +++ b/projects/packages/forms/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.33.4] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [0.33.3] - 2024-10-14 ### Changed - Only include `wp-polyfill` as a script dependency when needed. [#39629] @@ -689,6 +693,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Added a new jetpack/forms package [#28409] - Added a public load_contact_form method for initializing the contact form module. [#28416] +[0.33.4]: https://github.com/automattic/jetpack-forms/compare/v0.33.3...v0.33.4 [0.33.3]: https://github.com/automattic/jetpack-forms/compare/v0.33.2...v0.33.3 [0.33.2]: https://github.com/automattic/jetpack-forms/compare/v0.33.1...v0.33.2 [0.33.1]: https://github.com/automattic/jetpack-forms/compare/v0.33.0...v0.33.1 diff --git a/projects/packages/forms/changelog/force-a-release b/projects/packages/forms/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/packages/forms/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/packages/forms/package.json b/projects/packages/forms/package.json index 8e7636ff74aae..0fbedf955ef9b 100644 --- a/projects/packages/forms/package.json +++ b/projects/packages/forms/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-forms", - "version": "0.33.3", + "version": "0.33.4", "description": "Jetpack Forms", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/forms/#readme", "bugs": { diff --git a/projects/packages/forms/src/class-jetpack-forms.php b/projects/packages/forms/src/class-jetpack-forms.php index d40c01829a347..d056158932ef0 100644 --- a/projects/packages/forms/src/class-jetpack-forms.php +++ b/projects/packages/forms/src/class-jetpack-forms.php @@ -15,7 +15,7 @@ */ class Jetpack_Forms { - const PACKAGE_VERSION = '0.33.3'; + const PACKAGE_VERSION = '0.33.4'; /** * Load the contact form module. diff --git a/projects/packages/plans/CHANGELOG.md b/projects/packages/plans/CHANGELOG.md index bdb192c71b67d..1d1d39451f04c 100644 --- a/projects/packages/plans/CHANGELOG.md +++ b/projects/packages/plans/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.4.12] - 2024-10-21 +### Fixed +- Fixed the site features for Simple sites. [#39817] + ## [0.4.11] - 2024-09-23 ### Changed - Update dependencies. @@ -154,6 +158,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Deprecated - Moved the options class into Connection. [#24095] +[0.4.12]: https://github.com/Automattic/jetpack-plans/compare/v0.4.11...v0.4.12 [0.4.11]: https://github.com/Automattic/jetpack-plans/compare/v0.4.10...v0.4.11 [0.4.10]: https://github.com/Automattic/jetpack-plans/compare/v0.4.9...v0.4.10 [0.4.9]: https://github.com/Automattic/jetpack-plans/compare/v0.4.8...v0.4.9 diff --git a/projects/packages/plans/changelog/fix-site-specific-features-for-simple-sites b/projects/packages/plans/changelog/fix-site-specific-features-for-simple-sites deleted file mode 100644 index 8d0bfe4ddc2c9..0000000000000 --- a/projects/packages/plans/changelog/fix-site-specific-features-for-simple-sites +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Fixed the site features for Simple sites diff --git a/projects/packages/plans/package.json b/projects/packages/plans/package.json index 9b34af05f76c4..5f135800276bc 100644 --- a/projects/packages/plans/package.json +++ b/projects/packages/plans/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-plans", - "version": "0.4.11", + "version": "0.4.12", "description": "Fetch information about Jetpack Plans from wpcom", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/plans/#readme", "bugs": { diff --git a/projects/packages/publicize/CHANGELOG.md b/projects/packages/publicize/CHANGELOG.md index 66c737591d6e3..2e9b7805d534b 100644 --- a/projects/packages/publicize/CHANGELOG.md +++ b/projects/packages/publicize/CHANGELOG.md @@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.54.4] - 2024-10-21 +### Changed +- Initial State: Migrated URLs to script data. [#39797] + +### Fixed +- Fixed the site features for Simple sites. [#39817] + ## [0.54.3] - 2024-10-14 ### Changed - Updated package dependencies. [#39707] @@ -729,6 +736,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. - Update package.json metadata. +[0.54.4]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.3...v0.54.4 [0.54.3]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.2...v0.54.3 [0.54.2]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.1...v0.54.2 [0.54.1]: https://github.com/Automattic/jetpack-publicize/compare/v0.54.0...v0.54.1 diff --git a/projects/packages/publicize/changelog/fix-site-specific-features-for-simple-sites b/projects/packages/publicize/changelog/fix-site-specific-features-for-simple-sites deleted file mode 100644 index 8d0bfe4ddc2c9..0000000000000 --- a/projects/packages/publicize/changelog/fix-site-specific-features-for-simple-sites +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Fixed the site features for Simple sites diff --git a/projects/packages/publicize/changelog/update-social-initial-state-migrate-urls-on-social-admin b/projects/packages/publicize/changelog/update-social-initial-state-migrate-urls-on-social-admin deleted file mode 100644 index c23ee0fbdc59a..0000000000000 --- a/projects/packages/publicize/changelog/update-social-initial-state-migrate-urls-on-social-admin +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Initial State: Migrated URLs to script data diff --git a/projects/packages/publicize/package.json b/projects/packages/publicize/package.json index 1a1a64708c3fb..7df4d2ac41402 100644 --- a/projects/packages/publicize/package.json +++ b/projects/packages/publicize/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-publicize", - "version": "0.54.3", + "version": "0.54.4", "description": "Publicize makes it easy to share your site’s posts on several social media networks automatically when you publish a new post.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/publicize/#readme", "bugs": { diff --git a/projects/packages/search/CHANGELOG.md b/projects/packages/search/CHANGELOG.md index c21c38da6ba3c..2425246b79d41 100644 --- a/projects/packages/search/CHANGELOG.md +++ b/projects/packages/search/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.45.9] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [0.45.8] - 2024-10-14 ### Changed - Updated package dependencies. [#39707] @@ -1067,6 +1071,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. - Update PHPUnit configs to include just what needs coverage rather than include everything then try to exclude stuff that doesn't. +[0.45.9]: https://github.com/Automattic/jetpack-search/compare/v0.45.8...v0.45.9 [0.45.8]: https://github.com/Automattic/jetpack-search/compare/v0.45.7...v0.45.8 [0.45.7]: https://github.com/Automattic/jetpack-search/compare/v0.45.6...v0.45.7 [0.45.6]: https://github.com/Automattic/jetpack-search/compare/v0.45.5...v0.45.6 diff --git a/projects/packages/search/changelog/force-a-release b/projects/packages/search/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/packages/search/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/packages/search/package.json b/projects/packages/search/package.json index 118b947057b5d..e50483025b55f 100644 --- a/projects/packages/search/package.json +++ b/projects/packages/search/package.json @@ -1,6 +1,6 @@ { "name": "jetpack-search", - "version": "0.45.8", + "version": "0.45.9", "description": "Package for Jetpack Search products", "main": "main.js", "directories": { diff --git a/projects/packages/search/src/class-package.php b/projects/packages/search/src/class-package.php index 91a310f92ca59..38fb525e2aa66 100644 --- a/projects/packages/search/src/class-package.php +++ b/projects/packages/search/src/class-package.php @@ -11,7 +11,7 @@ * Search package general information */ class Package { - const VERSION = '0.45.8'; + const VERSION = '0.45.9'; const SLUG = 'search'; /** diff --git a/projects/packages/stats-admin/CHANGELOG.md b/projects/packages/stats-admin/CHANGELOG.md index 95c88e00e7a68..fc9c6b475970d 100644 --- a/projects/packages/stats-admin/CHANGELOG.md +++ b/projects/packages/stats-admin/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 0.22.3 - 2024-10-21 +### Changed +- JITM: Expose function to render message. [#39714] + ## 0.22.2 - 2024-10-14 ### Fixed - Added missing fields for stats single post endpoint. [#39691] diff --git a/projects/packages/stats-admin/changelog/update-integration-jitm-in-stats b/projects/packages/stats-admin/changelog/update-integration-jitm-in-stats deleted file mode 100644 index d9779842c1cc7..0000000000000 --- a/projects/packages/stats-admin/changelog/update-integration-jitm-in-stats +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -JITM: expose function to render message diff --git a/projects/packages/stats-admin/package.json b/projects/packages/stats-admin/package.json index 617e65e29fc7e..d0a9302a24fa1 100644 --- a/projects/packages/stats-admin/package.json +++ b/projects/packages/stats-admin/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-stats-admin", - "version": "0.22.2", + "version": "0.22.3", "description": "Stats Dashboard", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/stats-admin/#readme", "bugs": { diff --git a/projects/packages/stats-admin/src/class-main.php b/projects/packages/stats-admin/src/class-main.php index 66b53734e7b71..34c931bdb5de8 100644 --- a/projects/packages/stats-admin/src/class-main.php +++ b/projects/packages/stats-admin/src/class-main.php @@ -22,7 +22,7 @@ class Main { /** * Stats version. */ - const VERSION = '0.22.2'; + const VERSION = '0.22.3'; /** * Singleton Main instance. diff --git a/projects/packages/videopress/CHANGELOG.md b/projects/packages/videopress/CHANGELOG.md index ac6c363f35e82..96d1d13f498a4 100644 --- a/projects/packages/videopress/CHANGELOG.md +++ b/projects/packages/videopress/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.24.13] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [0.24.12] - 2024-10-14 ### Added - Add tracks to connection banner. [#39732] @@ -1467,6 +1471,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Created empty package [#24952] +[0.24.13]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.12...v0.24.13 [0.24.12]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.11...v0.24.12 [0.24.11]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.10...v0.24.11 [0.24.10]: https://github.com/Automattic/jetpack-videopress/compare/v0.24.9...v0.24.10 diff --git a/projects/packages/videopress/changelog/force-a-release b/projects/packages/videopress/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/packages/videopress/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/packages/videopress/package.json b/projects/packages/videopress/package.json index ad6b24972bdd9..13363879be44b 100644 --- a/projects/packages/videopress/package.json +++ b/projects/packages/videopress/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-videopress", - "version": "0.24.12", + "version": "0.24.13", "description": "VideoPress package", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/videopress/#readme", "bugs": { diff --git a/projects/packages/videopress/src/class-package-version.php b/projects/packages/videopress/src/class-package-version.php index e076aa95377d6..dc3f8ec1b1335 100644 --- a/projects/packages/videopress/src/class-package-version.php +++ b/projects/packages/videopress/src/class-package-version.php @@ -11,7 +11,7 @@ * The Package_Version class. */ class Package_Version { - const PACKAGE_VERSION = '0.24.12'; + const PACKAGE_VERSION = '0.24.13'; const PACKAGE_SLUG = 'videopress'; diff --git a/projects/packages/wordads/CHANGELOG.md b/projects/packages/wordads/CHANGELOG.md index 27cf0341b9e87..d25e4089cd111 100644 --- a/projects/packages/wordads/CHANGELOG.md +++ b/projects/packages/wordads/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.3.37] - 2024-10-21 +### Changed +- Update dependencies. [#39781] + ## [0.3.36] - 2024-10-14 ### Changed - Updated package dependencies. [#39707] @@ -426,6 +430,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - PHPCS: Fix `WordPress.Security.ValidatedSanitizedInput` - Updated package dependencies. +[0.3.37]: https://github.com/Automattic/jetpack-wordads/compare/v0.3.36...v0.3.37 [0.3.36]: https://github.com/Automattic/jetpack-wordads/compare/v0.3.35...v0.3.36 [0.3.35]: https://github.com/Automattic/jetpack-wordads/compare/v0.3.34...v0.3.35 [0.3.34]: https://github.com/Automattic/jetpack-wordads/compare/v0.3.33...v0.3.34 diff --git a/projects/packages/wordads/changelog/force-a-release b/projects/packages/wordads/changelog/force-a-release deleted file mode 100644 index d4ad6c7cc3379..0000000000000 --- a/projects/packages/wordads/changelog/force-a-release +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Update dependencies. diff --git a/projects/packages/wordads/package.json b/projects/packages/wordads/package.json index 27f9ca2e57fab..410b3d6c90e4a 100644 --- a/projects/packages/wordads/package.json +++ b/projects/packages/wordads/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-wordads", - "version": "0.3.36", + "version": "0.3.37", "description": "Earn income by allowing Jetpack to display high quality ads.", "main": "main.js", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/wordads/#readme", diff --git a/projects/packages/wordads/src/class-package.php b/projects/packages/wordads/src/class-package.php index 3d4ee760a8709..547d26cc1b6d7 100644 --- a/projects/packages/wordads/src/class-package.php +++ b/projects/packages/wordads/src/class-package.php @@ -11,7 +11,7 @@ * WordAds package general information */ class Package { - const VERSION = '0.3.36'; + const VERSION = '0.3.37'; const SLUG = 'wordads'; /** diff --git a/projects/plugins/jetpack/CHANGELOG.md b/projects/plugins/jetpack/CHANGELOG.md index ce8c8f35f9072..69f50357e0587 100644 --- a/projects/plugins/jetpack/CHANGELOG.md +++ b/projects/plugins/jetpack/CHANGELOG.md @@ -2,6 +2,29 @@ ### This is a list detailing changes for all Jetpack releases. +## 14.0-a.7 - 2024-10-21 +### Enhancements +- Newsletters: Add an email preview option to the preview menu. [#39782] +- Newsletters: Allow skipping newsletter modals with a URL query param. [#39644] + +### Improved compatibility +- General: Ensure notice displays without errors when running an old version of WordPress. [#39745] +- Plugin action links filters: Update parameter to avoid conflicts with other plugins. [#39681] + +### Bug fixes +- Map Block: Fix issue where blocks placed underneath would overlap with the map block. [#39744] +- Newsletters: Fix "Use excerpt" setting. [#39815] + +### Other changes +- Map Block: Display a static map image when the block is rendered in a pattern preview. [#39768] +- Map: Remove preview attribute. [#39768] +- Newsletters: Fix 'class Jetpack_Subscriptions_Widget not found' fatal error during REST API. [#39765] +- Slideshow Block: Fix console warning related to images with the same key. [#39821] +- Story Block: Avoid error when previewing block styles in development version of the Gutenberg plugin. [#39807] +- Story Block: Fix console warning related to 'key' not being a prop. [#39822] +- Tests: Fix unit tests. [#39799] +- Update VideoPress notice URL on Media Library. [#39731] + ## 14.0-a.5 - 2024-10-16 ### Other changes - Related Posts: refine how related posts are made available on singular views in block themes. [#39784] diff --git a/projects/plugins/jetpack/changelog/add-newsletter-preview-menu-item b/projects/plugins/jetpack/changelog/add-newsletter-preview-menu-item deleted file mode 100644 index 5f502c0b91c70..0000000000000 --- a/projects/plugins/jetpack/changelog/add-newsletter-preview-menu-item +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Newsletter: Add Preview Email to the Preview Menu diff --git a/projects/plugins/jetpack/changelog/display-map-block-as-preview-if-in-block-preview-mode b/projects/plugins/jetpack/changelog/display-map-block-as-preview-if-in-block-preview-mode deleted file mode 100644 index 3ee73641ae113..0000000000000 --- a/projects/plugins/jetpack/changelog/display-map-block-as-preview-if-in-block-preview-mode +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Map block: Display a static map image when the block is rendered in a pattern preview diff --git a/projects/plugins/jetpack/changelog/fix-class-not-found-error b/projects/plugins/jetpack/changelog/fix-class-not-found-error deleted file mode 100644 index 1fd5a98213c4a..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-class-not-found-error +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Fix Fatal Error: Class 'Jetpack_Subscriptions_Widget' not found during REST API diff --git a/projects/plugins/jetpack/changelog/fix-map-block-auto-height b/projects/plugins/jetpack/changelog/fix-map-block-auto-height deleted file mode 100644 index d53bd6f5ee2b4..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-map-block-auto-height +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Map block: Fix issue where blocks placed underneath would overlap with the map block. diff --git a/projects/plugins/jetpack/changelog/fix-newsletter-settings-api b/projects/plugins/jetpack/changelog/fix-newsletter-settings-api deleted file mode 100644 index 9c8dfd2259656..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-newsletter-settings-api +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Newsletter: Fix use excerpt setting. diff --git a/projects/plugins/jetpack/changelog/fix-slideshow-block-global-styles b/projects/plugins/jetpack/changelog/fix-slideshow-block-global-styles deleted file mode 100644 index c459b3a44d721..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-slideshow-block-global-styles +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Slideshow block: fix console warning related to images with the same key. diff --git a/projects/plugins/jetpack/changelog/fix-stats-explode-trailing-newline b/projects/plugins/jetpack/changelog/fix-stats-explode-trailing-newline deleted file mode 100644 index 591df46c8f0a5..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-stats-explode-trailing-newline +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Fix bug in #39665 related to a trailing newline in the CSV data. - - diff --git a/projects/plugins/jetpack/changelog/fix-story-block-fatal b/projects/plugins/jetpack/changelog/fix-story-block-fatal deleted file mode 100644 index bb6d0c7d2abd9..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-story-block-fatal +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Story Block: avoid error when previewing block styles in development version of the Gutenberg plugin. diff --git a/projects/plugins/jetpack/changelog/fix-story-block-key-prop-warning b/projects/plugins/jetpack/changelog/fix-story-block-key-prop-warning deleted file mode 100644 index 656285fda32cd..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-story-block-key-prop-warning +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Story block: fix console warning related to 'key' not being a prop. diff --git a/projects/plugins/jetpack/changelog/fix-sync-filter-null-array b/projects/plugins/jetpack/changelog/fix-sync-filter-null-array deleted file mode 100644 index 2ac348ea5eb8a..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-sync-filter-null-array +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: compat - -Plugin action links filters: update parameter to avoid any conflicts with other plugins. diff --git a/projects/plugins/jetpack/changelog/fix-video-upload-media-notice b/projects/plugins/jetpack/changelog/fix-video-upload-media-notice deleted file mode 100644 index c43ecff1cd68b..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-video-upload-media-notice +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Update VideoPress notice URL on Media Library diff --git a/projects/plugins/jetpack/changelog/remove-preview-attribute-from-map-block b/projects/plugins/jetpack/changelog/remove-preview-attribute-from-map-block deleted file mode 100644 index 514100b1029fe..0000000000000 --- a/projects/plugins/jetpack/changelog/remove-preview-attribute-from-map-block +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Map: remove preview attribute. The mechanism to determine if the block is in preview mode changed internally. diff --git a/projects/plugins/jetpack/changelog/revert-admin_notice_37051 b/projects/plugins/jetpack/changelog/revert-admin_notice_37051 deleted file mode 100644 index 40c07fe1eb5f1..0000000000000 --- a/projects/plugins/jetpack/changelog/revert-admin_notice_37051 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: compat - -General: ensure the notice displayed when running an old version of WordPress can always be displayed without errors. diff --git a/projects/plugins/jetpack/changelog/update-social-initial-state-migrate-urls-in-editor b/projects/plugins/jetpack/changelog/update-social-initial-state-migrate-urls-in-editor deleted file mode 100644 index 5601b77a6a611..0000000000000 --- a/projects/plugins/jetpack/changelog/update-social-initial-state-migrate-urls-in-editor +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Fixed unit tests diff --git a/projects/plugins/jetpack/changelog/update-subscriptions-skip-modal b/projects/plugins/jetpack/changelog/update-subscriptions-skip-modal deleted file mode 100644 index 2e357ea143d80..0000000000000 --- a/projects/plugins/jetpack/changelog/update-subscriptions-skip-modal +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Newsletters: allow skipping modals with URL query param diff --git a/projects/plugins/jetpack/composer.json b/projects/plugins/jetpack/composer.json index eac7bdcd02b56..86d4e58586ca5 100644 --- a/projects/plugins/jetpack/composer.json +++ b/projects/plugins/jetpack/composer.json @@ -102,7 +102,7 @@ "platform": { "ext-intl": "0.0.0" }, - "autoloader-suffix": "f11009ded9fc4592b6a05b61ce272b3c_jetpackⓥ14_0_a_5", + "autoloader-suffix": "f11009ded9fc4592b6a05b61ce272b3c_jetpackⓥ14_0_a_7", "allow-plugins": { "automattic/jetpack-autoloader": true, "automattic/jetpack-composer-plugin": true diff --git a/projects/plugins/jetpack/jetpack.php b/projects/plugins/jetpack/jetpack.php index 367973ccfab33..2331d6424dfeb 100644 --- a/projects/plugins/jetpack/jetpack.php +++ b/projects/plugins/jetpack/jetpack.php @@ -4,7 +4,7 @@ * Plugin URI: https://jetpack.com * Description: Security, performance, and marketing tools made by WordPress experts. Jetpack keeps your site protected so you can focus on more important things. * Author: Automattic - * Version: 14.0-a.5 + * Version: 14.0-a.7 * Author URI: https://jetpack.com * License: GPL2+ * Text Domain: jetpack @@ -34,7 +34,7 @@ define( 'JETPACK__MINIMUM_WP_VERSION', '6.5' ); define( 'JETPACK__MINIMUM_PHP_VERSION', '7.0' ); -define( 'JETPACK__VERSION', '14.0-a.5' ); +define( 'JETPACK__VERSION', '14.0-a.7' ); /** * Constant used to fetch the connection owner token diff --git a/projects/plugins/jetpack/package.json b/projects/plugins/jetpack/package.json index 75a84e7b516be..97da3db04ed14 100644 --- a/projects/plugins/jetpack/package.json +++ b/projects/plugins/jetpack/package.json @@ -1,6 +1,6 @@ { "name": "Jetpack", - "version": "14.0.0-a.5", + "version": "14.0.0-a.7", "private": true, "description": "[Jetpack](https://jetpack.com/) is a WordPress plugin that supercharges your self-hosted WordPress site with the awesome cloud power of [WordPress.com](https://wordpress.com).", "homepage": "https://jetpack.com", diff --git a/projects/plugins/jetpack/readme.txt b/projects/plugins/jetpack/readme.txt index caa2d797608e3..610359d6a2a39 100644 --- a/projects/plugins/jetpack/readme.txt +++ b/projects/plugins/jetpack/readme.txt @@ -1,7 +1,7 @@ === Jetpack - WP Security, Backup, Speed, & Growth === Contributors: automattic, adamkheckler, adrianmoldovanwp, aduth, akirk, allendav, alternatekev, andy, annamcphee, annezazu, apeatling, arcangelini, arsihasi, azaozz, barry, batmoo, beaulebens, bindlegirl, biskobe, bjorsch, blobaugh, brbrr, brileyhooper, cainm, cena, cfinke, cgastrell, chaselivingston, chellycat, clickysteve, csonnek, danielbachhuber, daniloercoli, davoraltman, delawski, designsimply, dkmyta, dllh, drawmyface, dsmart, dun2mis, dzver, ebinnion, egregor, eliorivero, enej, eoigal, erania-pinnera, ethitter, fgiannar, gcorne, georgestephanis, gibrown, goldsounds, hew, hugobaeta, hypertextranch, iammattthomas, iandunn, joen, jblz, jeffgolenski, jeherve, jenhooks, jenia, jessefriedman, jgs, jkudish, jmdodd, joanrho, johnjamesjacoby, jshreve, kbrownkd, keoshi, koke, kraftbj, lancewillett, leogermani, lhkowalski, lschuyler, macmanx, martinremy, matt, mattwiebe, matveb, maverick3x6, mcsf, mdawaffe, mdbitz, MichaelArestad, migueluy, miguelxavierpenha, mikeyarce, mkaz, nancythanki, nickmomrik, njweller, nunyvega, obenland, oskosk, pento, professor44, rachelsquirrel, rdcoll, renatoagds, retrofox, richardmtl, richardmuscat, robertbpugh, roccotripaldi, ryancowles, samhotchkiss, samiff, scarstocea, scottsweb, sdixon194, sdquirk, sermitr, simison, stephdau, thehenridev, tmoorewp, tyxla, Viper007Bond, westi, williamvianas, wpkaren, yoavf, zinigor Tags: Security, backup, malware, scan, performance -Stable tag: 13.8.1 +Stable tag: 13.9.1 Requires at least: 6.5 Requires PHP: 7.0 Tested up to: 6.6 @@ -326,8 +326,18 @@ Jetpack Backup can do a full website migration to a new host, migrate theme file == Changelog == -### 14.0-a.5 - 2024-10-16 -Fix: do not include Related Posts on non-post posts on classic themes. +### 14.0-a.7 - 2024-10-21 +#### Enhancements +- Newsletters: Add an email preview option to the preview menu. +- Newsletters: Allow skipping newsletter modals with a URL query param. + +#### Improved compatibility +- General: Ensure notice displays without errors when running an old version of WordPress. +- Plugin action links filters: Update parameter to avoid conflicts with other plugins. + +#### Bug fixes +- Map Block: Fix issue where blocks placed underneath would overlap with the map block. +- Newsletters: Fix "Use excerpt" setting. -------- From c3e2ec56a6d0b29c03931d0884c6754d1011e54c Mon Sep 17 00:00:00 2001 From: Adnan Haque <3737780+haqadn@users.noreply.github.com> Date: Wed, 23 Oct 2024 17:24:05 +0200 Subject: [PATCH 08/12] Boost: Remove URL override from image guide (#39874) Co-authored-by: Peter Petrov --- projects/plugins/boost/.phan/baseline.php | 2 -- .../plugins/boost/app/modules/image-guide/Image_Guide.php | 7 ++----- .../plugins/boost/changelog/remove-image-guide-override | 4 ++++ 3 files changed, 6 insertions(+), 7 deletions(-) create mode 100644 projects/plugins/boost/changelog/remove-image-guide-override diff --git a/projects/plugins/boost/.phan/baseline.php b/projects/plugins/boost/.phan/baseline.php index 04f317e93cfd3..b0787027ce59f 100644 --- a/projects/plugins/boost/.phan/baseline.php +++ b/projects/plugins/boost/.phan/baseline.php @@ -30,7 +30,6 @@ // PhanImpossibleTypeComparison : 1 occurrence // PhanImpossibleTypeComparisonInGlobalScope : 1 occurrence // PhanPluginNeverReturnFunction : 1 occurrence - // PhanPluginSimplifyExpressionBool : 1 occurrence // PhanRedefineFunction : 1 occurrence // PhanTypeComparisonToArray : 1 occurrence // PhanTypeInvalidUnaryOperandIncOrDec : 1 occurrence @@ -62,7 +61,6 @@ 'app/lib/minify/functions-helpers.php' => ['PhanTypeMismatchArgumentNullable', 'PhanTypeMismatchArgumentNullableInternal', 'PhanTypeMismatchDefault', 'PhanUndeclaredClassMethod', 'PhanUndeclaredClassReference', 'PhanUndeclaredConstant'], 'app/lib/minify/functions-service.php' => ['PhanImpossibleTypeComparison', 'PhanPluginDuplicateConditionalNullCoalescing', 'PhanPluginNeverReturnFunction', 'PhanPluginUseReturnValueInternalKnown', 'PhanPossiblyUndeclaredVariable', 'PhanRedundantCondition', 'PhanTypeMismatchArgumentInternal', 'PhanTypeMismatchArgumentNullableInternal'], 'app/modules/Modules_Setup.php' => ['PhanTypeMismatchPropertyDefault'], - 'app/modules/image-guide/Image_Guide.php' => ['PhanPluginSimplifyExpressionBool'], 'app/modules/image-guide/Image_Guide_Proxy.php' => ['PhanPluginDuplicateConditionalNullCoalescing'], 'app/modules/image-size-analysis/data-sync/Image_Size_Analysis_Action_Fix.php' => ['PhanPossiblyUndeclaredVariable', 'PhanRedundantCondition'], 'app/modules/optimizations/critical-css/CSS_Proxy.php' => ['PhanPluginDuplicateConditionalNullCoalescing'], diff --git a/projects/plugins/boost/app/modules/image-guide/Image_Guide.php b/projects/plugins/boost/app/modules/image-guide/Image_Guide.php index 9360a6b25efef..ce2e23fe9197e 100644 --- a/projects/plugins/boost/app/modules/image-guide/Image_Guide.php +++ b/projects/plugins/boost/app/modules/image-guide/Image_Guide.php @@ -9,15 +9,12 @@ class Image_Guide implements Pluggable { public function setup() { - // phpcs:ignore WordPress.Security.NonceVerification.Recommended - $override = isset( $_GET['jb-debug-ig'] ); - - if ( is_admin() || is_user_logged_in() || current_user_can( 'manage_options' ) ) { + if ( is_user_logged_in() && current_user_can( 'manage_options' ) ) { Image_Guide_Proxy::init(); } // Show the UI only when the user is logged in, with sufficient permissions and isn't looking at the dashboard. - if ( true !== $override && ( is_admin() || ! is_user_logged_in() || ! current_user_can( 'manage_options' ) ) ) { + if ( is_admin() || ! is_user_logged_in() || ! current_user_can( 'manage_options' ) ) { return; } diff --git a/projects/plugins/boost/changelog/remove-image-guide-override b/projects/plugins/boost/changelog/remove-image-guide-override new file mode 100644 index 0000000000000..35c10bab98c1a --- /dev/null +++ b/projects/plugins/boost/changelog/remove-image-guide-override @@ -0,0 +1,4 @@ +Significance: minor +Type: removed + +Image Guide: Remove URL parameter based override. From 5927dd63bc9fafecd5194dc915fd1b5f50a94576 Mon Sep 17 00:00:00 2001 From: Brad Jorsch Date: Wed, 23 Oct 2024 16:43:27 -0400 Subject: [PATCH 09/12] cli: Fix `jetpack changelog add` on a release branch (#39869) When running `jetpack changelog add` while on a release branch, the script should not throw an error about attempting to access `.length` on `undefined`. --- tools/cli/commands/changelog.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/cli/commands/changelog.js b/tools/cli/commands/changelog.js index 9319a3e1c6843..5b24a6c7237f5 100644 --- a/tools/cli/commands/changelog.js +++ b/tools/cli/commands/changelog.js @@ -311,7 +311,8 @@ async function changelogAdd( argv ) { return; } - let changelogInfo, needChangelog; + let changelogInfo, + needChangelog = []; if ( argv.project ) { needChangelog = [ argv.project ]; @@ -695,7 +696,11 @@ async function checkChangelogFiles() { const branchReg = /\/branch-/; // match example: jetpack/branch-1.2.3 if ( currentBranch.match( branchReg ) ) { console.log( chalk.green( 'Release branch detected. No changelog required.' ) ); - return []; + return { + touched: [], + files: new Map(), + need: [], + }; } const re1 = /^projects\/([^/]+\/[^/]+)\//; // regex matches project file path, ie 'project/packages/connection/..' From 07e18c23a06b9bc8afe4a5323c5de4b72ce2354b Mon Sep 17 00:00:00 2001 From: Brad Jorsch Date: Wed, 23 Oct 2024 16:45:10 -0400 Subject: [PATCH 10/12] changlogger: When amending, do not preserve default link (#39868) When doing `changelogger write --amend`, we normally preserve the prologue, epilogue, and link unless these are overridden on the command line. An edge case is when you're amending version 1.2.3-beta to turn it into 1.2.3 release, and the link is the default link like `https://example.com/diff/1.2.2...1.2.3-beta`. In this situation we don't want to keep that link, we want to replace it with the new default `https://example.com/diff/1.2.2...1.2.3`. Also, when building changelogger, we have to install before trying to run it. --- .../fix-changelogger-amend-default-link | 4 ++ .../changelogger/src/WriteCommand.php | 6 ++- .../tests/php/tests/src/WriteCommandTest.php | 48 +++++++++++++++++++ tools/cli/commands/build.js | 9 ++++ 4 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 projects/packages/changelogger/changelog/fix-changelogger-amend-default-link diff --git a/projects/packages/changelogger/changelog/fix-changelogger-amend-default-link b/projects/packages/changelogger/changelog/fix-changelogger-amend-default-link new file mode 100644 index 0000000000000..09dc0989a5b9c --- /dev/null +++ b/projects/packages/changelogger/changelog/fix-changelogger-amend-default-link @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +When amending, do not preserve a default link. We'll want the link to be updated to the new default. diff --git a/projects/packages/changelogger/src/WriteCommand.php b/projects/packages/changelogger/src/WriteCommand.php index 900167f64d328..1a23cbdf38090 100644 --- a/projects/packages/changelogger/src/WriteCommand.php +++ b/projects/packages/changelogger/src/WriteCommand.php @@ -412,7 +412,11 @@ protected function doAmendChanges( InputInterface $input, OutputInterface $outpu $input->setOption( 'epilogue', $latest->getEpilogue() ); } if ( $input->getOption( 'link' ) === null ) { - $input->setOption( 'link', $latest->getLink() ); + $oldLink = $latest->getLink(); + $defaultLink = $changelog->getLatestEntry() ? Config::link( $changelog->getLatestEntry()->getVersion(), $latest->getVersion() ) : null; + if ( $oldLink !== $defaultLink ) { + $input->setOption( 'link', $latest->getLink() ); + } } } else { $output->writeln( 'No version to amend, ignoring --amend.', OutputInterface::VERBOSITY_DEBUG ); diff --git a/projects/packages/changelogger/tests/php/tests/src/WriteCommandTest.php b/projects/packages/changelogger/tests/php/tests/src/WriteCommandTest.php index ebb2e105351a6..1ea6e7d0c1f6d 100644 --- a/projects/packages/changelogger/tests/php/tests/src/WriteCommandTest.php +++ b/projects/packages/changelogger/tests/php/tests/src/WriteCommandTest.php @@ -749,6 +749,54 @@ public function provideExecute() { true, "# Changelog\n\n## 1.0.1 - $date\n\nPrologue for v1.0.1\n\n### Added\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n", ), + 'Amend, beta to release' => array( + array( '--amend' => true ), + array( + 'composer.json' => array( 'link-template' => 'https://example.org/diff/${old}..${new}' ), + 'changes' => array(), + 'changelog' => "# Changelog\n\n## [1.0.1-beta] - $date\n\nPrologue for v1.0.1\n\n### Added\n- New stuff.\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n\n### Fixed\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n\n[1.0.1-beta]: https://example.org/new-link\n", + ), + array( 'Y' ), + 0, + array( + '{^No changes were found! Proceed\? \[y/N\] $}m', + ), + true, + "# Changelog\n\n## [1.0.1] - $date\n\nPrologue for v1.0.1\n\n### Added\n- New stuff.\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n\n### Fixed\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n\n[1.0.1]: https://example.org/new-link\n", + ), + 'Amend, ignore default link' => array( + array( '--amend' => true ), + array( + 'composer.json' => array( 'link-template' => 'https://example.org/diff/${old}..${new}' ), + 'changes' => array(), + 'changelog' => "# Changelog\n\n## [1.0.1-beta] - $date\n\nPrologue for v1.0.1\n\n### Added\n- New stuff.\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n\n### Fixed\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n\n[1.0.1-beta]: https://example.org/diff/1.0.0..1.0.1-beta\n", + ), + array( 'Y' ), + 0, + array( + '{^No changes were found! Proceed\? \[y/N\] $}m', + ), + true, + "# Changelog\n\n## [1.0.1] - $date\n\nPrologue for v1.0.1\n\n### Added\n- New stuff.\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n\n### Fixed\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n\n[1.0.1]: https://example.org/diff/1.0.0..1.0.1\n", + ), + 'Amend, manually override default link' => array( + array( + '--amend' => true, + '--link' => 'https://example.org/new-link', + ), + array( + 'composer.json' => array( 'link-template' => 'https://example.org/diff/${old}..${new}' ), + 'changes' => array(), + 'changelog' => "# Changelog\n\n## [1.0.1-beta] - $date\n\nPrologue for v1.0.1\n\n### Added\n- New stuff.\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n\n### Fixed\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n\n[1.0.1-beta]: https://example.org/diff/1.0.0..1.0.1-beta\n", + ), + array( 'Y' ), + 0, + array( + '{^No changes were found! Proceed\? \[y/N\] $}m', + ), + true, + "# Changelog\n\n## [1.0.1] - $date\n\nPrologue for v1.0.1\n\n### Added\n- New stuff.\n- Stuff.\n- ZZZ.\n\n### Removed\n- Other stuff.\n\n### Fixed\n- Broken stuff.\n\nEpilogue for v1.0.1\n\n## 1.0.0 - 2021-02-23\n\n- Initial release.\n\n[1.0.1]: https://example.org/new-link\n", + ), '--use-version invalid' => array( array( '--use-version' => '2.0' ), diff --git a/tools/cli/commands/build.js b/tools/cli/commands/build.js index 41d25232bf875..1e85a759326f9 100644 --- a/tools/cli/commands/build.js +++ b/tools/cli/commands/build.js @@ -612,6 +612,15 @@ async function buildProject( t ) { () => false ) ) { + // If we're building changelogger itself, we need to install before we can run it. + if ( t.project === 'packages/changelogger' ) { + await t.execa( 'composer', await getInstallArgs( t.project, 'composer', t.argv ), { + cwd: t.cwd, + stdio: [ 'ignore', 'inherit', 'inherit' ], + buffer: false, + } ); + } + let prerelease = 'alpha'; if ( composerJson.extra?.[ 'dev-releases' ] ) { const m = ( From 4f62ae4f60e73f0efc1bab71b0d65418446ff3df Mon Sep 17 00:00:00 2001 From: Jasper Kang Date: Thu, 24 Oct 2024 17:39:35 +1300 Subject: [PATCH 11/12] Stats: Use option value instead of transient for cache buster (#39887) --- ...date-use-option-value-instead-of-transient | 4 + .../stats-admin/src/class-odyssey-assets.php | 40 ++++++-- .../stats-admin/tests/php/class-test-case.php | 2 + .../tests/php/test-odyssey-assets.php | 96 ++++++++++++++++++- 4 files changed, 132 insertions(+), 10 deletions(-) create mode 100644 projects/packages/stats-admin/changelog/update-use-option-value-instead-of-transient diff --git a/projects/packages/stats-admin/changelog/update-use-option-value-instead-of-transient b/projects/packages/stats-admin/changelog/update-use-option-value-instead-of-transient new file mode 100644 index 0000000000000..6e6660e388644 --- /dev/null +++ b/projects/packages/stats-admin/changelog/update-use-option-value-instead-of-transient @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Odyssey Stats cache busting: use optioin instead of transient diff --git a/projects/packages/stats-admin/src/class-odyssey-assets.php b/projects/packages/stats-admin/src/class-odyssey-assets.php index 8117e650ae5fa..98d59fc3bb3ad 100644 --- a/projects/packages/stats-admin/src/class-odyssey-assets.php +++ b/projects/packages/stats-admin/src/class-odyssey-assets.php @@ -75,36 +75,58 @@ public function load_admin_scripts( $asset_handle, $asset_name, $options = array /** * Returns cache buster string for assets. * Development mode doesn't need this, as it's handled by `Assets` class. + * + * @return string */ protected function get_cdn_asset_cache_buster() { + $now_in_ms = floor( microtime( true ) * 1000 ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended if ( isset( $_GET['force_refresh'] ) ) { - set_transient( self::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, floor( microtime( true ) * 1000 ), 15 * MINUTE_IN_SECONDS ); + update_option( self::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, $this->get_cache_buster_option_value( $now_in_ms ), false ); } // Use cached cache buster in production. - $remote_asset_version = get_transient( self::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY ); + $remote_asset_version = get_option( self::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY ); if ( ! empty( $remote_asset_version ) ) { - return $remote_asset_version; + $remote_asset_version = json_decode( $remote_asset_version, true ); + // If cache buster is cached and not expired (valid in 15 min), return it. + if ( ! empty( $remote_asset_version['cache_buster'] ) && $remote_asset_version['cached_at'] > $now_in_ms - MINUTE_IN_SECONDS * 1000 * 15 ) { + return $remote_asset_version['cache_buster']; + } } // If no cached cache buster, we fetch it from CDN and set to transient. - $response = wp_remote_get( sprintf( self::ODYSSEY_CDN_URL, self::ODYSSEY_STATS_VERSION, 'build_meta.json?t=' . time() ), array( 'timeout' => 5 ) ); + $response = wp_remote_get( sprintf( self::ODYSSEY_CDN_URL, self::ODYSSEY_STATS_VERSION, 'build_meta.json?t=' . $now_in_ms ), array( 'timeout' => 5 ) ); if ( is_wp_error( $response ) ) { - // fallback to the package version. - return Main::VERSION; + // fallback to current timestamp. + return (string) $now_in_ms; } $build_meta = json_decode( wp_remote_retrieve_body( $response ), true ); if ( ! empty( $build_meta['cache_buster'] ) ) { // Cache the cache buster for 15 mins. - set_transient( self::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, $build_meta['cache_buster'], 15 * MINUTE_IN_SECONDS ); + update_option( self::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, $this->get_cache_buster_option_value( $build_meta['cache_buster'] ), false ); return $build_meta['cache_buster']; } - // fallback to the package version. - return Main::VERSION; + // fallback to current timestamp. + return (string) $now_in_ms; + } + + /** + * Get the cache buster option value. + * + * @param string|int|float $cache_buster The cache buster. + * @return string|false + */ + protected function get_cache_buster_option_value( $cache_buster ) { + return wp_json_encode( + array( + 'cache_buster' => (string) $cache_buster, + 'cached_at' => floor( microtime( true ) * 1000 ), // milliseconds. + ) + ); } } diff --git a/projects/packages/stats-admin/tests/php/class-test-case.php b/projects/packages/stats-admin/tests/php/class-test-case.php index e6b919b204a4f..0d21e264cf842 100644 --- a/projects/packages/stats-admin/tests/php/class-test-case.php +++ b/projects/packages/stats-admin/tests/php/class-test-case.php @@ -60,6 +60,7 @@ public function set_up() { add_filter( 'jetpack_options', array( $this, 'mock_jetpack_site_connection_options' ), 10, 2 ); add_filter( 'pre_http_request', array( $this, 'plan_http_response_fixture' ), 10, 3 ); + delete_option( Odyssey_Assets::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY ); } /** @@ -76,6 +77,7 @@ public function tear_down() { remove_filter( 'pre_http_request', array( $this, 'plan_http_response_fixture' ) ); remove_filter( 'jetpack_options', array( $this, 'mock_jetpack_site_connection_options' ) ); + delete_option( Odyssey_Assets::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY ); } /** diff --git a/projects/packages/stats-admin/tests/php/test-odyssey-assets.php b/projects/packages/stats-admin/tests/php/test-odyssey-assets.php index f99eca36ad1fe..14e1fb5c3bec9 100644 --- a/projects/packages/stats-admin/tests/php/test-odyssey-assets.php +++ b/projects/packages/stats-admin/tests/php/test-odyssey-assets.php @@ -2,6 +2,7 @@ namespace Automattic\Jetpack\Stats_Admin; use Automattic\Jetpack\Stats_Admin\Test_Case as Stats_Test_Case; +use WP_Error; /** * Unit tests for the Odyssey_Assets class. @@ -9,13 +10,106 @@ * @package automattic/jetpack-stats-admin */ class Test_Odyssey_Assets extends Stats_Test_Case { + /** * Test remote cache buster. */ public function test_get_cdn_asset_cache_buster() { + $this->assertEquals( 'calypso-4917-8664-g72a154d63a', $this->get_cdn_asset_cache_buster_callable() ); + } + + /** + * Test remote cache buster remote error. + */ + public function test_get_cdn_asset_cache_buster_remote_error() { + add_filter( 'pre_http_request', array( $this, 'break_cdn_cache_buster_request' ), 15, 3 ); + $this->assertEquals( time(), floor( $this->get_cdn_asset_cache_buster_callable() / 1000 ) ); + remove_filter( 'pre_http_request', array( $this, 'break_cdn_cache_buster_request' ), 15 ); + } + + /** + * Test already cached cache buster. + */ + public function test_get_cdn_asset_cache_buster_already_cached() { + update_option( + Odyssey_Assets::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, + wp_json_encode( + array( + 'cache_buster' => 'calypso-4917-8664-123456', + 'cached_at' => floor( microtime( true ) * 1000 ), // milliseconds. + ) + ), + false + ); + $this->assertEquals( 'calypso-4917-8664-123456', $this->get_cdn_asset_cache_buster_callable() ); + } + + /** + * Test already cached cache buster expired. + */ + public function test_get_cdn_asset_cache_buster_already_cached_expired() { + update_option( + Odyssey_Assets::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, + wp_json_encode( + array( + 'cache_buster' => 'calypso-4917-8664-123456', + 'cached_at' => floor( microtime( true ) * 1000 - MINUTE_IN_SECONDS * 1000 * 20 ), // milliseconds. + ) + ), + false + ); + $this->assertEquals( 'calypso-4917-8664-g72a154d63a', $this->get_cdn_asset_cache_buster_callable() ); + } + + /** + * Test already cached cache buster expired and failed to fetch new one. + */ + public function test_get_cdn_asset_cache_buster_failed_to_fetch() { + add_filter( 'pre_http_request', array( $this, 'break_cdn_cache_buster_request' ), 15, 3 ); + update_option( + Odyssey_Assets::ODYSSEY_STATS_CACHE_BUSTER_CACHE_KEY, + wp_json_encode( + array( + 'cache_buster' => 'calypso-4917-8664-123456', + 'cached_at' => floor( microtime( true ) * 1000 - MINUTE_IN_SECONDS * 1000 * 20 ), // milliseconds. + ) + ), + false + ); + $this->assertEquals( time(), floor( $this->get_cdn_asset_cache_buster_callable() / 1000 ) ); + remove_filter( 'pre_http_request', array( $this, 'break_cdn_cache_buster_request' ), 15 ); + } + + /** + * Test force refresh cache buster. + */ + public function test_get_cdn_asset_cache_buster_force_refresh_expired() { + $_GET['force_refresh'] = 1; + $this->assertEquals( time(), floor( $this->get_cdn_asset_cache_buster_callable() / 1000 ) ); + } + + /** + * Test remote cache buster. + * + * @param mixed $response The response array. + * @param mixed $parsed_args The parsed args. + * @param mixed $url The URL. + * @return WP_Error | void + */ + public function break_cdn_cache_buster_request( $response, $parsed_args, $url ) { + if ( strpos( $url, '/build_meta.json' ) !== false ) { + return new WP_Error( 500, 'Internal Server Error' ); + } + } + + /** + * Get CDN asset cache buster. + */ + protected function get_cdn_asset_cache_buster_callable() { $odyssey_assets = new Odyssey_Assets(); $get_cdn_asset_cache_buster = new \ReflectionMethod( $odyssey_assets, 'get_cdn_asset_cache_buster' ); $get_cdn_asset_cache_buster->setAccessible( true ); - $this->assertEquals( 'calypso-4917-8664-g72a154d63a', $get_cdn_asset_cache_buster->invoke( $odyssey_assets ) ); + + return $get_cdn_asset_cache_buster->invoke( $odyssey_assets ); } } From cf5f21b9812d5c5ce3d6170e83accfdf51c39c18 Mon Sep 17 00:00:00 2001 From: Manzoor Wani Date: Wed, 23 Oct 2024 23:46:26 -0700 Subject: [PATCH 12/12] Initial State: Migrate `hasPaidFeatures` with feature check on front-end (#39838) * Initial State: Migrate `hasPaidFeatures` with feature check on front-end * Replace hasPaidPlan by hasSocialPaidFeatures --- .../update-social-replace-has-paid-features-check | 5 +++++ .../src/components/form/enhanced-features-nudge.tsx | 7 ++----- .../src/social-store/reducer/index.js | 1 - .../src/social-store/selectors/index.js | 1 - .../publicize-components/src/utils/script-data.ts | 11 ++++++++++- .../plugins/jetpack/_inc/client/sharing/index.jsx | 7 +++++-- .../update-social-replace-has-paid-features-check | 5 +++++ .../update-social-replace-has-paid-features-check | 5 +++++ .../social/src/js/components/admin-page/index.jsx | 9 +++++---- .../src/js/components/social-module-toggle/index.tsx | 5 ++--- .../social/src/js/components/support-section/index.js | 6 ++---- .../plugins/social/src/js/components/types/types.ts | 1 - 12 files changed, 41 insertions(+), 22 deletions(-) create mode 100644 projects/js-packages/publicize-components/changelog/update-social-replace-has-paid-features-check create mode 100644 projects/plugins/jetpack/changelog/update-social-replace-has-paid-features-check create mode 100644 projects/plugins/social/changelog/update-social-replace-has-paid-features-check diff --git a/projects/js-packages/publicize-components/changelog/update-social-replace-has-paid-features-check b/projects/js-packages/publicize-components/changelog/update-social-replace-has-paid-features-check new file mode 100644 index 0000000000000..bf9a130af83ec --- /dev/null +++ b/projects/js-packages/publicize-components/changelog/update-social-replace-has-paid-features-check @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Initial State: Migrated hasPaidFeatures flag with feature check on front-end + + diff --git a/projects/js-packages/publicize-components/src/components/form/enhanced-features-nudge.tsx b/projects/js-packages/publicize-components/src/components/form/enhanced-features-nudge.tsx index ce90b960e33a2..b66bab3557fad 100644 --- a/projects/js-packages/publicize-components/src/components/form/enhanced-features-nudge.tsx +++ b/projects/js-packages/publicize-components/src/components/form/enhanced-features-nudge.tsx @@ -5,20 +5,17 @@ import { isSimpleSite, } from '@automattic/jetpack-shared-extension-utils'; import { Button, PanelRow } from '@wordpress/components'; -import { useSelect } from '@wordpress/data'; import { _x } from '@wordpress/i18n'; -import { store as socialStore } from '../../social-store'; +import { hasSocialPaidFeatures } from '../../utils'; import styles from './styles.module.scss'; import { useAutoSaveAndRedirect } from './use-auto-save-and-redirect'; export const EnhancedFeaturesNudge: React.FC = () => { - const hasPaidFeatures = useSelect( select => select( socialStore ).hasPaidFeatures(), [] ); - const autosaveAndRedirect = useAutoSaveAndRedirect(); const isWpcom = isSimpleSite() || isAtomicSite(); - if ( isWpcom || hasPaidFeatures ) { + if ( isWpcom || hasSocialPaidFeatures() ) { return null; } diff --git a/projects/js-packages/publicize-components/src/social-store/reducer/index.js b/projects/js-packages/publicize-components/src/social-store/reducer/index.js index 502e34d256f73..957ba28a507f8 100644 --- a/projects/js-packages/publicize-components/src/social-store/reducer/index.js +++ b/projects/js-packages/publicize-components/src/social-store/reducer/index.js @@ -12,7 +12,6 @@ const reducer = combineReducers( { socialImageGeneratorSettings, shareStatus, hasPaidPlan: ( state = false ) => state, - hasPaidFeatures: ( state = false ) => state, } ); export default reducer; diff --git a/projects/js-packages/publicize-components/src/social-store/selectors/index.js b/projects/js-packages/publicize-components/src/social-store/selectors/index.js index 9841e282af43e..6cf378df068eb 100644 --- a/projects/js-packages/publicize-components/src/social-store/selectors/index.js +++ b/projects/js-packages/publicize-components/src/social-store/selectors/index.js @@ -10,7 +10,6 @@ const selectors = { ...jetpackSettingSelectors, ...socialImageGeneratorSettingsSelectors, ...shareStatusSelectors, - hasPaidFeatures: state => state.hasPaidFeatures, }; export default selectors; diff --git a/projects/js-packages/publicize-components/src/utils/script-data.ts b/projects/js-packages/publicize-components/src/utils/script-data.ts index 4db102747a639..25561a8b726f2 100644 --- a/projects/js-packages/publicize-components/src/utils/script-data.ts +++ b/projects/js-packages/publicize-components/src/utils/script-data.ts @@ -1,4 +1,4 @@ -import { getScriptData } from '@automattic/jetpack-script-data'; +import { getScriptData, siteHasFeature } from '@automattic/jetpack-script-data'; import { SocialScriptData } from '../types/types'; /** @@ -9,3 +9,12 @@ import { SocialScriptData } from '../types/types'; export function getSocialScriptData(): SocialScriptData { return getScriptData().social; } + +/** + * Check if the site has social paid features. + * + * @return {boolean} Whether the site has social paid features. + */ +export function hasSocialPaidFeatures() { + return siteHasFeature( 'social-enhanced-publishing' ); +} diff --git a/projects/plugins/jetpack/_inc/client/sharing/index.jsx b/projects/plugins/jetpack/_inc/client/sharing/index.jsx index 196f8cd178b05..ba0f0e9b64409 100644 --- a/projects/plugins/jetpack/_inc/client/sharing/index.jsx +++ b/projects/plugins/jetpack/_inc/client/sharing/index.jsx @@ -1,4 +1,7 @@ -import { getSocialScriptData } from '@automattic/jetpack-publicize-components'; +import { + getSocialScriptData, + hasSocialPaidFeatures, +} from '@automattic/jetpack-publicize-components'; import { __ } from '@wordpress/i18n'; import QuerySite from 'components/data/query-site'; import React, { Component } from 'react'; @@ -97,7 +100,7 @@ export default connect( state => { blogID: getSiteId( state ), siteAdminUrl: getSiteAdminUrl( state ), activeFeatures: getActiveFeatures( state ), - hasPaidFeatures: siteHasFeature( state, 'social-enhanced-publishing' ), + hasPaidFeatures: hasSocialPaidFeatures(), hasSocialImageGenerator: siteHasFeature( state, 'social-image-generator' ), userCanManageModules: userCanManageModules( state ), isAtomicSite: isAtomicSite( state ), diff --git a/projects/plugins/jetpack/changelog/update-social-replace-has-paid-features-check b/projects/plugins/jetpack/changelog/update-social-replace-has-paid-features-check new file mode 100644 index 0000000000000..a2339eaccb346 --- /dev/null +++ b/projects/plugins/jetpack/changelog/update-social-replace-has-paid-features-check @@ -0,0 +1,5 @@ +Significance: patch +Type: other +Comment: Initial State: Migrated hasPaidFeatures flag with feature check on front-end + + diff --git a/projects/plugins/social/changelog/update-social-replace-has-paid-features-check b/projects/plugins/social/changelog/update-social-replace-has-paid-features-check new file mode 100644 index 0000000000000..bf9a130af83ec --- /dev/null +++ b/projects/plugins/social/changelog/update-social-replace-has-paid-features-check @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Initial State: Migrated hasPaidFeatures flag with feature check on front-end + + diff --git a/projects/plugins/social/src/js/components/admin-page/index.jsx b/projects/plugins/social/src/js/components/admin-page/index.jsx index fcb351364013c..4f97dd0656bca 100644 --- a/projects/plugins/social/src/js/components/admin-page/index.jsx +++ b/projects/plugins/social/src/js/components/admin-page/index.jsx @@ -7,7 +7,10 @@ import { GlobalNotices, } from '@automattic/jetpack-components'; import { useConnection } from '@automattic/jetpack-connection'; -import { store as socialStore } from '@automattic/jetpack-publicize-components'; +import { + hasSocialPaidFeatures, + store as socialStore, +} from '@automattic/jetpack-publicize-components'; import { useSelect, useDispatch } from '@wordpress/data'; import { useState, useCallback, useEffect, useRef } from '@wordpress/element'; import React from 'react'; @@ -34,7 +37,6 @@ const Admin = () => { const { isModuleEnabled, showPricingPage, - hasPaidFeatures, pluginVersion, isSocialImageGeneratorAvailable, isUpdatingJetpackSettings, @@ -43,7 +45,6 @@ const Admin = () => { return { isModuleEnabled: store.isModuleEnabled(), showPricingPage: store.showPricingPage(), - hasPaidFeatures: store.hasPaidFeatures(), pluginVersion: store.getPluginVersion(), isSocialImageGeneratorAvailable: store.isSocialImageGeneratorAvailable(), isUpdatingJetpackSettings: store.isUpdatingJetpackSettings(), @@ -76,7 +77,7 @@ const Admin = () => { return ( }> - { ( ! hasPaidFeatures && showPricingPage ) || forceDisplayPricingPage ? ( + { ( ! hasSocialPaidFeatures() && showPricingPage ) || forceDisplayPricingPage ? ( diff --git a/projects/plugins/social/src/js/components/social-module-toggle/index.tsx b/projects/plugins/social/src/js/components/social-module-toggle/index.tsx index 77345ba97de14..6d955bc2f817d 100644 --- a/projects/plugins/social/src/js/components/social-module-toggle/index.tsx +++ b/projects/plugins/social/src/js/components/social-module-toggle/index.tsx @@ -9,6 +9,7 @@ import { ConnectionManagement, SOCIAL_STORE_ID, getSocialScriptData, + hasSocialPaidFeatures, } from '@automattic/jetpack-publicize-components'; import { ExternalLink } from '@wordpress/components'; import { useSelect, useDispatch } from '@wordpress/data'; @@ -26,7 +27,6 @@ const SocialModuleToggle: React.FC = () => { isUpdating, siteSuffix, blogID, - hasPaidFeatures, } = useSelect( select => { const store = select( SOCIAL_STORE_ID ) as SocialStoreSelectors; return { @@ -34,7 +34,6 @@ const SocialModuleToggle: React.FC = () => { isUpdating: store.isUpdatingJetpackSettings(), siteSuffix: store.getSiteSuffix(), blogID: store.getBlogID(), - hasPaidFeatures: store.hasPaidFeatures(), }; }, [] ); @@ -97,7 +96,7 @@ const SocialModuleToggle: React.FC = () => { { __( 'Learn more', 'jetpack-social' ) } - { ! hasPaidFeatures ? ( + { ! hasSocialPaidFeatures() ? ( { const [ isAtLeastMedium ] = useBreakpointMatch( 'md', '>=' ); - const hasPaidPlan = useSelect( select => select( SOCIAL_STORE_ID ).hasPaidPlan() ); - if ( ! hasPaidPlan ) { + if ( ! hasSocialPaidFeatures() ) { return null; } diff --git a/projects/plugins/social/src/js/components/types/types.ts b/projects/plugins/social/src/js/components/types/types.ts index 9ce1d062591fb..bfc950e1d7677 100644 --- a/projects/plugins/social/src/js/components/types/types.ts +++ b/projects/plugins/social/src/js/components/types/types.ts @@ -8,7 +8,6 @@ type JetpackSettingsSelectors = { showPricingPage: () => boolean; isUpdatingJetpackSettings: () => boolean; hasPaidPlan: () => boolean; - hasPaidFeatures: () => boolean; }; type ConnectionDataSelectors = {