refactor(IssuesList): self-fetch GFIs, remove MDX scope plumbing#18250
Merged
Conversation
IssuesList now fetches getGFIs() internally as an async Server
Component, replacing the gfissues MDX scope variable that the slug
route previously injected at compile time. Also swaps the direct
react-emoji-render import for the canonical @/components/Emoji
wrapper used by every other consumer.
Drops the now-unused scope parameter from getPageData and compile,
along with the gfissues fetch + try/catch from the slug route.
Find/replaces <IssuesList issues={gfissues} my={8} /> ->
<IssuesList my={8} /> across the English source and 24 translated
copies of contributing/index.md.
Preliminary to the Velite MDX precompile migration, where MDX scope
variables don't fit the precompiled model.
✅ Deploy Preview for ethereumorg ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
wackerow
approved these changes
May 28, 2026
Member
wackerow
left a comment
There was a problem hiding this comment.
@pettinarip Looks good! No manifest for contributing/index.md yet so intl side should be good. Pull in
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
IssuesListbecomes an async Server Component that fetchesgetGFIs()itself, replacing thegfissuesMDX scope variable that the slug route was injecting at compile time.IssuesList's directreact-emoji-renderimport for the canonical@/components/Emojiwrapper that every other emoji consumer in the codebase already uses (handles SSR/CSR protocol concerns).scopeparameter fromgetPageDataandcompile, plus thegfissuesfetch + try/catch +getGFIsimport fromapp/[locale]/[...slug]/page.tsx.<IssuesList issues={gfissues} my={8} />→<IssuesList my={8} />across the English source and 24 translated copies ofcontributing/index.md.my={8}was already a no-op in the component; preserved per design discussion.Context: preliminary refactor for the upcoming Velite MDX precompile migration. Velite precompiles MDX to fixed JS at build time, so runtime-injected scope variables don't survive.
gfissueswas the only such variable in the entire pipeline, used on exactly one page (/contributing). This PR collapses the indirection so the Velite PR doesn't need to deal with scope at all.Test plan
pnpm type-check— passes locallypnpm lint— passes locally/contributingon the deploy preview, scroll to "How to contribute" section, confirm the GFI list renders with avatars + labels/de/contributing) to confirm the same section renders