Skip to content

chore: dependency updates and react-router v8 migration#156

Open
sinduri-g wants to merge 13 commits into
mainfrom
chore/dependency-updates-june-2026
Open

chore: dependency updates and react-router v8 migration#156
sinduri-g wants to merge 13 commits into
mainfrom
chore/dependency-updates-june-2026

Conversation

@sinduri-g

@sinduri-g sinduri-g commented Jun 23, 2026

Copy link
Copy Markdown
Contributor
  • Upgrade react-router and @react-router/dev from 7.17.0 to 8.0.1
  • Upgrade @types/node from 24.x to 26.0.0
  • Upgrade lucide-react from 1.18.0 to 1.21.0
  • Upgrade typescript-eslint, globals to latest patch
  • Update actions/checkout from v4 to v7 across all workflows (org allowlist updated)
  • Remove future flags from react-router.config.ts (all are defaults in v8)
  • Update SolutionDetail meta function: data -> loaderData (v8 API change)
  • Update CLAUDE.md allowlist to reflect checkout@v7

Type of change

  • feat new feature
  • fix bug fix
  • refactor no behavior change
  • docs / chore / config / perf / style / security

Manual checks

  • Screen reader tested (UI changes only)
  • New routes added to sitemap.xml, prerender array, README (routes only)

- Upgrade react-router and @react-router/dev from 7.17.0 to 8.0.1
- Upgrade @types/node from 24.x to 26.0.0
- Upgrade lucide-react from 1.18.0 to 1.21.0
- Upgrade typescript-eslint, globals to latest patch
- Update actions/checkout from v4 to v7 across all workflows (org allowlist updated)
- Remove future flags from react-router.config.ts (all are defaults in v8)
- Update SolutionDetail meta function: data -> loaderData (v8 API change)
- Update CLAUDE.md allowlist to reflect checkout@v7

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
- Downgrade @types/node from ^26 to ^24 to match pinned Node 24 runtime
- Update actions/setup-node from @v4 to @v6 across all workflows
- Replace all React Router v7 references with v8 in CLAUDE.md and README.md

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
…eact Router v8 migration

GitHub Pages normalises URLs to trailing slashes, so client-side navigation
requests <path>/_.data instead of <path>.data (React Router v8 default
trailingSlashAwareDataRequests). The prerender only emits <path>.data files,
causing 404s.

- Add scripts/create-data-aliases.mjs: copies every *.data file to <name>/_.data after build
- Add postbuild hook in package.json to run the script automatically
- Add public/serve.json with trailingSlash:true so npm run preview mirrors GitHub Pages locally
- Update preview.yml to copy serve.json into the PR preview directory
- Document the trailing-slash convention and _.data alias pattern in CLAUDE.md

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
- Align @types/node to ^26.0.0 to match package-lock.json (mismatch would break npm ci)
- Guard create-data-aliases.mjs against missing dist/client with a clear error message

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
- Add missing screenshots/ directory to preview.yml asset copy
- Update CLAUDE.md to reflect current copy step coverage

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
@github-actions

github-actions Bot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://off-on-dev.github.io/website/pr-preview/pr-156/

Built to branch gh-pages at 2026-06-25 14:10 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

- `.nvmrc`: 24 → 26
- `CLAUDE.md`: update Node version in Stack section and commands comment
- `README.md`: update "Node.js 24 is required" to 26

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
serve's trailingSlash:true normalises clean URLs, so /deck was served
at /deck/ — making every relative path (reveal/, brand/, fonts/, etc.)
resolve against /deck/ instead of the site root, causing 404s for all
CSS, JS, images, and fonts. Moving to deck/index.html and prefixing
all paths with ../ fixes this without changing the public URL.

- Revert the vertical-section wrapper added in a prior attempt (flat
  horizontal slides are correct; the broken state masked the real issue)
- Update robots.txt, preview.yml copy step, and CLAUDE.md to reference
  deck/ instead of deck.html

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
Merged origin/main which added screenshot slides for Adventures and
Community, a feedback slide, an AhaSlides QR code for the pub quiz,
and other copy fixes. Resolved conflicts by taking main's content and
updating all new relative image paths with the ../ prefix required
since deck.html moved to deck/index.html.

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
- Replace all references to `public/deck.html` with `public/deck/index.html`
  following the move of the presentation file into its own directory

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
- Move serve.json to repo root so it is not served at /serve.json in production;
  remove from preview.yml copy step; update CLAUDE.md accordingly
- Replace deprecated AlertTriangle icon with TriangleAlert in SolutionDetail.tsx
- Add loading="lazy" to below-fold community screenshots in deck/index.html
- Add :focus-visible styles to .reveal a and .pill for keyboard accessibility
- Fix slide 7 QR label from "Play challenges" to "offon.dev/challenges" so the
  URL is visible if the QR code fails to load
- Use node: protocol specifiers in create-data-aliases.mjs for consistency
  with all other scripts in scripts/

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
Verify that create-data-aliases.mjs (postbuild) correctly produces
<path>/_.data copies for all loader routes, and that alias content
matches the source .data file byte-for-byte.

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
…lks event

- Rewrite speaker notes across all slides to match presenter's wording
- Add The Community card to What are Open Source Talks slide
- Add Prizes card to Open Source Pub Quiz slide
- Remove Join the OffOn board from Get Involved slide
- Remove Free to attend from Vienna and Linz card

Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
Signed-off-by: Sinduri Guntupalli <sinduri.guntupalli@dynatrace.com>
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.

1 participant