Recently, mdn has switched its backend to yari, which has changed a lot of its behavior.
Below is an incomplete list of changes:
Pages not available in current locale but available in english would result in 404 (#196)
Browser compatibility table is rendered in browser side, via ajax, instead of server-side. (#194)
Some links are replaced with ajax and in-place render, but following the link would still work. (commit 47204804)
Sitemaps are likely to be gzipped. (#214)
Scripts are packed with webpack and is likely to have runtime-loaded script chunks. (Sign-in modal) (commit 47204804)
Links in header bar is nolonger localized.
Many redirects are missing and many archived contents were gone. (Even if they are in search results)
Many translated redirects are missing, but the content is still there with the sitemap as the only entrance. (translation_of and translation_of_original not parsed)
Style of old compatibility table is gone. (commit 8f454067)
To adapt for that, we might need to:
Manually fallback to en-US in case of 404. (#196)
Drop all the scripts or mock fetch api with a more complete response list, or drop all the scripts and manually implement the ui actions with js or css. (#193) (#534)
Get the browser compatibility table and render it to page manually or mock the api. (#194) (#629) (#630)
Prevent attaching events to links or stopImmediatePropagation before SPA rendering invoked.
Inject back the style of old compatibility table (commit 8f454067)
Recently, mdn has switched its backend to yari, which has changed a lot of its behavior.
Below is an incomplete list of changes:
translation_of
andtranslation_of_original
not parsed)To adapt for that, we might need to:
Prevent attaching events to links orstopImmediatePropagation
before SPA rendering invoked.