Skip to content

Fix CI: Pin Polylang for PHP 7.4 + Fix retailer ID test expectation#3857

Draft
rafael-curran wants to merge 2 commits into
mainfrom
combined-fix-3849-3851
Draft

Fix CI: Pin Polylang for PHP 7.4 + Fix retailer ID test expectation#3857
rafael-curran wants to merge 2 commits into
mainfrom
combined-fix-3849-3851

Conversation

@rafael-curran

Copy link
Copy Markdown
Contributor

Description

This PR combines fixes from #3851 and #3849 to resolve CI failures that were blocking both PRs.

Changes included:

  1. Pin Polylang version for PHP 7.4 in CI (from Pin Polylang version for PHP 7.4 in CI #3851)

    • Polylang latest version (3.8+) requires PHP 8.0+, causing CI failures on PHP 7.4
    • Pins Polylang to version 3.7.7 for PHP 7.4 builds while allowing other PHP versions to use latest
  2. Fix retailer ID test expectation (from Bump webpack from 5.99.9 to 5.105.0 #3849)

    • Test test_on_product_save_existing_variable_product_sync_enabled_updates_the_product was expecting wc_post_id_XXX format
    • Updated to use WC_Facebookcommerce_Utils::get_fb_retailer_id() which returns the correct SKU-based format

Why combined?
PR #3849 couldn't pass CI because it lacked the Polylang fix from PR #3851. PR #3851 couldn't pass CI because of the pre-existing test failure that PR #3849 fixes. Both fixes are needed together.

Type of change

  • Fix (non-breaking change which fixes an issue)

Checklist

  • I have commented my code, particularly in hard-to-understand areas, if any.
  • I have confirmed that my changes do not introduce any new PHPCS warnings or errors.
  • I have checked plugin debug logs that my changes do not introduce any new PHP warnings or FATAL errors.
  • I followed general Pull Request best practices. Meta employees to follow this wiki.
  • I have added tests (if necessary) and all the new and existing unit tests pass locally with my changes.
  • I have completed dogfooding and QA testing, or I have conducted thorough due diligence to ensure that it does not break existing functionality.
  • I have updated or requested update to plugin documentations (if necessary). Meta employees to follow this wiki.

Changelog entry

Fix CI test failures by pinning Polylang to v3.7.7 for PHP 7.4 compatibility and correcting retailer ID test expectations.

Test Plan

  1. CI should pass on both PHP 7.4 and PHP 8.3 matrix configurations
  2. All 1,908 unit tests should pass
  3. No functional changes to plugin behavior - only CI/test fixes

Verification:

  • PHP 7.4: Polylang 3.7.7 installs successfully (previously failed with 3.8-beta1)
  • PHP 8.3: Polylang latest installs successfully
  • test_on_product_save_existing_variable_product_sync_enabled_updates_the_product passes with correct retailer ID format

Screenshots

N/A - CI/test fixes only, no UI changes.

Before

After

  • Combined PR: Both PHP 7.4 and PHP 8.3 tests pass

Closes #3849
Closes #3851

Jarrett Hawrylak and others added 2 commits February 10, 2026 09:41
Summary:
Pull Request resolved: #3851

Polylang latest version may not be compatible with PHP 7.4, causing CI failures. This change pins the Polylang version to 3.7.7 for PHP 7.4 builds while allowing other PHP versions to use the latest Polylang release.

Differential Revision: D92762189
@meta-cla meta-cla Bot added the CLA Signed label Feb 10, 2026
@rafael-curran rafael-curran marked this pull request as draft February 10, 2026 14:58
@github-actions

Copy link
Copy Markdown
Contributor

📦 Latest Plugin Build

Built at: 2026-02-10T14:59:06.011Z
Commit: 00fc1ab
Size: 1.6M

Download: Click here to download the plugin

To download: Click the link above → Scroll to bottom → Download "facebook-for-woocommerce" artifact

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

2 participants