Skip to content

ci: Fail on React and router versions Strapi rejects - #37

Merged
ecv merged 1 commit into
mainfrom
ci/peer-check
Oct 28, 2026
Merged

ecv merged 1 commit into
mainfrom
ci/peer-check

Conversation

@ecv

@ecv ecv commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

A React 19 or react-router-dom 7 upgrade to the blog CMS passes CI today and breaks the admin panel Strapi 5.59 serves. This adds a CI step that fails on any React, router or styled-components version outside Strapi's declared peer ranges, and a Renovate rule that stops opening React 19 and router 7 upgrades until Strapi supports them.

Related to #33

Test plan

The admin build only warns on a React 19 or react-router-dom 7 bump, and
.npmrc sets legacy-peer-deps so install accepts them, so CI passed
upgrades Strapi 5.59 cannot run.

Key features/changes:
- Run npm ls on react, react-dom, react-router-dom and styled-components,
  which exits non-zero on a version outside Strapi's peer ranges
- Hold react and react-dom below 19 and react-router-dom below 7 in
  Renovate until Strapi raises its ranges
@ecv
ecv marked this pull request as ready for review October 28, 2026 17:03
@ecv
ecv requested a review from scotwells October 28, 2026 17:04
@ecv
ecv enabled auto-merge October 28, 2026 17:04
@polylane

polylane Bot commented Oct 28, 2026

Copy link
Copy Markdown

Warning

Polylane could not verify the production impact of this pull request.

I checked the resulting ci.yml and renovate.json against the checked-in lockfile: react 18.3.1, react-dom 18.3.1, react-router-dom 6.30.6 and styled-components 6.6.0 all sit inside Strapi's ranges, and CI run 40731828571 passed at this head. The workflow has no deploy step, so production is untouched.

View the full analysis →

Also considered · 3 refuted
  • Refuted · New npm ls gate fails on the checked-in dependency tree and blocks merges · CI run 40731828571 on this exact head SHA 94da48d concluded success on 2026-10-28T17:02Z, so the step passes on the tree this merge produces.
  • Refuted · The step sits on the production deploy path and a failure blocks a CMS release · The repository holds one workflow (.github/workflows/ lists only ci.yml) and it performs no deploy.
  • Refuted · Renovate allowedVersions starves the CMS of React and router fixes · 18.x and 6.x ranges stay allowed, so patch and minor updates still open.
Analysed against 1 cloud account and 1 repository

View in Polylane Pause assessments

Polylane could not find the cloud resources this repository manages, so this review looked at the entire cloud account. Connect this repository to its resources and the next review will focus on exactly what this code deploys to.

Connect resources

Polylane analysed 94da48d for production impact. You can ask follow-ups by mentioning @polylane in a comment.

Rate this review: 👍 helpful · 👎 not helpful · 😕 confusing

@ecv
ecv merged commit 9bfc378 into main Oct 28, 2026
3 checks passed
@ecv
ecv deleted the ci/peer-check branch October 28, 2026 17:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants