Skip to content

build(deps): migrate location maps to MapLibre 6 - #48

Merged
TomaszJanusz merged 2 commits into
mainfrom
feature/dependabot-updates
Oct 2, 2026
Merged

TomaszJanusz merged 2 commits into
mainfrom
feature/dependabot-updates

Conversation

@TomaszJanusz

@TomaszJanusz TomaszJanusz commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Summary

The pending MapLibre 6 update breaks the location map because it removes the default export and the old CSP bundles. Migrate the map imports and bundle its ESM worker locally so extension pages keep working; MapLibre 6 requires WebGL2.

This replaces #30. The production and development dependency groups are already merged in #44 and #46; redundant #32 is closed. Repository rules prevent direct updates to the protected Dependabot branch.

Validation

  • pnpm task lint

  • pnpm task check

  • pnpm task test:unit (neutral, Chromium and Firefox targets)

  • Both targets still build (pnpm task build:chrome, pnpm task build:firefox)

  • Worker source regeneration is not applicable: packages/refract-core is unchanged; the generated source check passed.

  • pnpm task test:build-contracts:ci (36 tests)

  • Prettier check on changed source/manifest/changelog and git diff --check

  • Chromium extension map loads controlled GeoJSON through its bundled same-origin MapLibre 6.4.1 worker.

  • Product Playwright location flow: reset, generate and manually add a location (3 tests).

  • Full PR CI, including Storybook, product E2E, API conformance and Chromium/Firefox runtime E2E.

  • CodeQL.

Changelog

  • I updated CHANGELOG.md in ## [Unreleased] for user-facing changes.
  • This change does not need a changelog entry (internal/test/CI/refactor only).

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Note

Migrate location maps to MapLibre GL JS 6.4.1

  • Bumps the maplibre-gl dependency from 5.24.0 to the 6.4.1 range in package.json
  • Replaces the dedicated MapLibre CSP runtime with a namespace import and configures MapLibre with its locally bundled ESM worker asset (worker-and-URL bundling) in maplibre-csp.ts
  • Deletes the custom CSP module type declarations in maplibre-gl-csp.d.ts and switches MapLibre type imports to namespace imports in map components
  • Updates maplibre-csp.test.ts to verify the bundled worker URL resolves for both chrome-extension and moz-extension origins
  • Behavioral Change: MapLibre now loads its worker from the bundled ESM asset (with shared ESM imports) instead of the dedicated CSP worker, and rendering requires WebGL2 per the changelog entry

Macroscope summarized 7db5d5d.

Summary by CodeRabbit

  • New Features
    • The location map now uses MapLibre GL JS 6, with its worker bundled locally for Chromium and Firefox extension pages.
  • Compatibility
    • Maps now require a browser with WebGL 2 support.

@coderabbitai

coderabbitai Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: c206b49d-0b9c-45f1-854e-40982f92b34a

📥 Commits

Reviewing files that changed from the base of the PR and between 7aee24e and 7db5d5d.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (7)
  • CHANGELOG.md
  • package.json
  • src/ui/options/components/map/ProfileDraftMap.tsx
  • src/ui/options/components/map/maplibre-csp.test.ts
  • src/ui/options/components/map/maplibre-csp.ts
  • src/ui/options/components/map/maplibre-gl-csp.d.ts
  • src/ui/options/components/map/profile-map-marker.ts
 ____________________________________________________________________________________________
< Founder mode code reviewer: seeing not just the bugs but the vision in every line of code! >
 --------------------------------------------------------------------------------------------
  \
   \   \
        \ /\
        ( )
      .( o ).
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@TomaszJanusz TomaszJanusz changed the title build(deps): update tooling and migrate maps to MapLibre 6 build(deps): migrate location maps to MapLibre 6 Oct 2, 2026
@TomaszJanusz
TomaszJanusz merged commit 49784c8 into main Oct 2, 2026
23 of 24 checks passed
@TomaszJanusz
TomaszJanusz deleted the feature/dependabot-updates branch October 2, 2026 10:23

This branch was successfully deployed

1 active deployment
Preview — 7db5d5d2 Deployed Oct 2, 2026 by vercel[bot]
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