Skip to content

Bump frontend and component library dependencies#6678

Open
masenf wants to merge 1 commit into
mainfrom
claude/gallant-lovelace-w3c4dp
Open

Bump frontend and component library dependencies#6678
masenf wants to merge 1 commit into
mainfrom
claude/gallant-lovelace-w3c4dp

Conversation

@masenf

@masenf masenf commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

All Submissions:

  • Have you followed the guidelines stated in CONTRIBUTING.md file?
  • Have you checked to ensure there aren't any other open Pull Requests for the desired changed?

Type of change

  • New feature (non-breaking change which adds functionality)

Description

This PR bumps frontend and component library dependencies to their current releases across multiple packages:

Core frontend dependencies (reflex-base):

  • react / react-dom: 19.2.6 β†’ 19.2.7
  • react-router and related packages: 7.15.0 β†’ 7.18.0
  • isbot: 5.1.40 β†’ 5.1.43
  • universal-cookie: 7.2.2 β†’ 8.1.2
  • postcss: 8.5.14 β†’ 8.5.15
  • tailwindcss / @tailwindcss/postcss: 4.3.0 β†’ 4.3.1
  • @tailwindcss/typography: 0.5.19 β†’ 0.5.20
  • Bun: 1.3.13 β†’ 1.3.14
  • rich upper bound: <15 β†’ <16 (adopting rich 15)

Component library updates:

  • reflex-components-plotly: react-plotly.js 2.6.0 β†’ 4.0.0, plotly.js (and dist-min/locale variants) 3.5.x β†’ 3.6.0
  • reflex-components-code: shiki and @shikijs/transformers 3.3.0 β†’ 4.2.0
  • reflex-components-core: react-error-boundary 6.1.1 β†’ 6.1.2
  • reflex-components-lucide: lucide-react 1.14.0 β†’ 1.20.0
  • reflex-components-radix: Multiple Radix UI primitives bumped (accordion, dialog, form, progress, slider)
  • reflex-components-internal: @hugeicons/react 1.1.6 β†’ 1.1.7, @icons-pack/react-simple-icons 13.8.0 β†’ 13.13.0
  • reflex-site-shared: react-medium-image-zoom 5.4.2 β†’ 5.4.8
  • docs: @inkeep/cxkit-react 0.5.115 β†’ 0.5.119

Other changes:

  • Removed the now-redundant cookie package.json override in reflex-base β€” universal-cookie 8 and react-router both resolve cookie to 1.x on their own
  • Updated reflex-hosting-cli to support rich 15
  • Regenerated .pyi stubs for affected components

All changes are non-breaking and maintain backward compatibility.

Test Plan

Existing tests pass. Dependency updates are configuration-only changes with no API modifications. The .pyi stub regeneration is automated and validated by the build system.

https://claude.ai/code/session_017VbHTc3JxgKUNBCrCMN2cp

@masenf masenf requested review from a team and Alek99 as code owners June 25, 2026 00:32
@codspeed-hq

codspeed-hq Bot commented Jun 25, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

βœ… 26 untouched benchmarks
⏩ 8 skipped benchmarks1


Comparing claude/gallant-lovelace-w3c4dp (7c42ff5) with main (8945367)

Open in CodSpeed

Footnotes

  1. 8 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@greptile-apps

greptile-apps Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR bumps frontend npm and Python package dependencies across multiple reflex packages β€” all version string updates with no API or logic changes. The cookie npm override is also removed since universal-cookie 8 and react-router 7.18 both resolve the cookie transitive dependency to 1.x independently.

  • Frontend npm bumps: React 19.2.7, React Router 7.18.0, Bun 1.3.14, Tailwind 4.3.1, shiki 4.2.0, react-plotly.js 4.0.0 / plotly.js 3.6.0, lucide-react 1.20.0, multiple Radix UI primitives, and several doc/site dependencies.
  • Python dependency widening: Both reflex-base and reflex-hosting-cli raise the rich upper bound from <15 to <16, allowing rich 15.x (resolved to 15.0.0 in the lock file).
  • Lock file: uv.lock is regenerated with updated hashes and switches exclude-newer from a fixed timestamp to the epoch sentinel, deferring to exclude-newer-span = "P7D" for future regeneration.

Confidence Score: 5/5

Safe to merge β€” all changes are version string updates with no logic modifications.

Every changed file is either a package version constant, a dependency constraint in a pyproject.toml, or a regenerated lock file. The core codeToHtml API used in the shiki template is unchanged in shiki 4.x. The createPlotlyComponent factory path and Plot tag remain the same. The universal-cookie constructor/get/set/remove calls in state.js match the stable Cookies class API present in v8. No logic paths are altered.

No files require special attention.

Important Files Changed

Filename Overview
packages/reflex-base/src/reflex_base/constants/installer.py Version bumps for Bun, React Router, React, isbot, universal-cookie, and postcss; removes the cookie npm override now that universal-cookie 8 and react-router resolve it on their own
packages/reflex-components-plotly/src/reflex_components_plotly/plotly.py Bumps react-plotly.js from 2.6.0 to 4.0.0 and all plotly.js dist variants from 3.5.x to 3.6.0; createPlotlyComponent factory import and Plot tag usage unchanged
packages/reflex-components-code/src/reflex_components_code/shiki_code_block.py Bumps shiki and @shikijs/transformers from 3.3.0 to 4.2.0; shiki 4.x keeps codeToHtml API fully compatible β€” only breaking change upstream is a CSS class typo fix
packages/reflex-base/pyproject.toml Widens the rich Python dependency upper bound from <15 to <16, allowing rich 15.x; uv.lock confirms resolution to rich 15.0.0
packages/reflex-hosting-cli/pyproject.toml Mirrors the rich <16 upper bound change from reflex-base to keep the two packages aligned
uv.lock Updates resolved package hashes (rich 14β†’15); changes exclude-newer from a fixed timestamp to the epoch sentinel with exclude-newer-span=P7D taking effect for future regeneration
packages/reflex-components-radix/src/reflex_components_radix/primitives/slider.py Bumps @radix-ui/react-slider from 1.3.6 to 1.4.1 β€” minor version bump with no API changes expected
packages/reflex-base/src/reflex_base/plugins/tailwind_v4.py Bumps tailwindcss and @tailwindcss/postcss from 4.3.0 to 4.3.1; @tailwindcss/typography from 0.5.19 to 0.5.20

Reviews (2): Last reviewed commit: "Bump frontend and backend dependency pin..." | Re-trigger Greptile

Update bundled npm packages, component library pins, and Python
constraints to current releases (each at least 7 days old, except
react-plotly.js 4.0.0 by request).

Pre-installed frontend: react/react-dom 19.2.7, react-router family
7.18.0, isbot 5.1.43, universal-cookie 8.1.2, postcss 8.5.15,
tailwindcss + @tailwindcss/postcss 4.3.1, @tailwindcss/typography
0.5.20, bun 1.3.14. Also drop the now-redundant cookie package.json
override, since universal-cookie 8 and react-router both resolve
cookie to 1.x on their own.

Component libraries: react-plotly.js 4.0.0 with plotly.js 3.6.0,
shiki + @shikijs/transformers 4.2.0, radix primitives
(accordion/dialog/form/progress/slider), react-error-boundary 6.1.2,
lucide-react 1.20.0, @hugeicons/react 1.1.7, react-simple-icons
13.13.0, react-medium-image-zoom 5.4.8, and docs inkeep 0.5.119.

Backend: raise the rich upper bound to <16 in reflex-base and
reflex-hosting-cli (adopt rich 15).

react-router is held at 7.x (v8 removes the react-router-dom package
and needs an import migration), react-moment at 1.x (2.0 is documented
as not production-ready), and redis at <8.0 (redis-py 8 defaults to
RESP3 and changes connection-pool defaults, warranting dedicated
state-manager integration testing first).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017VbHTc3JxgKUNBCrCMN2cp
@masenf masenf force-pushed the claude/gallant-lovelace-w3c4dp branch from c87cb44 to 7c42ff5 Compare June 25, 2026 16:26
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