* POC of blog post folder
* add parseBlogFileName with tests + refactor and extract processBlogSourceFile in separate method
* improve blog date pattern doc + link from content plugin guides to API ref docs
* Some FrontMatter fields should be able to reference relative image assets, converted to Webpack require calls and exposed as frontMatterAssets
* remove log
* move deep filepath test
* split markdownPageExample.md
* re-org dogfooding content
* Add mdx partials fallback synthetic plugin by default
* test commit
* hide changelog title as it's already included in the partial file
* trigger CI
* fix changelog sidebar label
* Add _ to dogfood docs folder to cover against edge case
* Fix edge case with MDX partials when site / content dir contains a _ prefix
* add globUtils tests
* proper dogfooding folder re-organization, all content plugins being used
* refactor dogfooding folder + expose /tests page index
* fix page plugin ignoring options.routeBasePath
* create a swizzleWarning partial for shared text
* Generalize usage of _ prefix convention to exclude content files/folders
* add api doc
* MDX loader should not expect metadata/frontmatter on MDX partial files
* attempt to fix contentTitle issues when markdown h1 title contains inline code blocks
* mention hide_title frontmatter only prevents frontmatter.title from being added in the dom (not a markdown # title in content)
* alwayss insert MainHeading under the div.markdown container for consistency
* ensure MainHeading has no useless id
* revert https://github.com/facebook/docusaurus/pull/4859 as it's now useless: docMeta.title contains the text/frontmatter title in priority over the contentTitle
* fix docs test after revert
* improve markdownParser and fix tests
* fix docs tests
* markdownParser: restore option to remove contentTitle (mostly for blog plugin)
* use removeContentTitle for blog
* try to reproduce windows edge case due to file encoding
* mdx loader => required file paths should be escaped
* revert bad change
* try to fix posix path issues
* try to fix posix path issues
* attempt to fix the file-loader edge cases with non-ascii chars
* Add more example image edge-cases
* Initial webpack 5 work
* It works on my machine (lol)
* Committing a bit more work
* It works - sorta
* Update packages/docusaurus/package.json
* at least fix prettier /shrug
* making more progress. build should work now, css stuff is still a bit broken
* Terser things
Signed-off-by: Reece Dunham <me@rdil.rocks>
* Working on things
* Vendor webpack
* Repair chunks, and tests
* Rerun prettier
* Re-add client prefetching
* Update snapshots
* Update snapshots
* I hope this works
* Remove redundant dev server code
* relock
* Trying to reduce memory usage and fix things
* Dead code elim
* Search bar works!!!
* Prefetching should work again
* lock
* ts issue
* Repair snapshot
* Run prettier
* Fix the CI for now
* fix lint-prettier
* clean-css works, now for the other one
* Fix lockfile
* Fixes prettier
* Other css minification works!!!
* Add clean-css options, fix webpack versions
Signed-off-by: Reece Dunham <me@rdil.rocks>
* Fix tests and several of the webpack loaders
Signed-off-by: Reece Dunham <me@rdil.rocks>
* Re-add support for simple css minifier
* Update other related dependencies
* Fix lockfile
* Dev server fixups
Signed-off-by: Reece Dunham <me@rdil.rocks>
* Simplify css things
* Update webpack, try with postcss 7
* Other cssnano repairs
* fix lockfile
* Clean up the babel preset
* Fix lockfile
* Bump RL SSR version
* Fix the build errors
* Lockfile fix
* It works again
* webpack 5 should close compiler after run
* add proper webpack5 persistent caching config
* upgrade webpack deps again
* reduce build perf timeouts to avoid build time regressions
* test if incremental build can run on netlify
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* test
* test
* test
* test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* fix existsSync() calls
* replace @ts-nocheck by a temporary Webpack type
* replace @ts-nocheck by a temporary Webpack type
* replace @ts-nocheck by a temporary Webpack type
* migrate existing stats.warningsFilter to config.ignoreWarnings
* remove stats from postBuild lifecycle data doc, as it is likely unused (we'll add it back if someone ask for it)
* improve build.ts TS issues + move some sync code to async
* cleanup TS of start.ts
* fix TS error
* fix TS issues
* fix TS issues
* fix ts error
* netlify test
* netlify test
* netlify test
* netlify test
* netlify test
* script cleanup
* script cleanup
* re-enable @typescript-eslint/ban-ts-comment
* Deprecate getCacheLoader / getBabelLoader but keep retrocompatibility
* useless TS
* fix and comment gca(chunkName) prefetching function
* remove deprecated mainTemplate.requireFn
* temporarily use react-loadable-ssr-addon-v5-slorber until PR merged: https://github.com/facebook/docusaurus/pull/4089
* comment unsafeCache option
* add explicit and more precise webpack targets
* splitChunks, use new type: "css/mini-extract" as it seems recommended for webpack 5
* webpack error handling:
- log error.details as documented
- keep using react-dev-utils/formatWebpackMessages for now
* fix webpack5 warnings for evalSourceMapMiddleware.js
* typo
* rename webpackHotDevClient
* make all modifications of react-dev-utils explicit with a comment
* revert LogPlugin adapter
* loader-utils update
* add useful share cache comment
* add useful comments regarding the null-loader used in SSR for css files
* upgrade webpack-merge in a retrocompatible way
* use MiniCssExtractPlugin.emit false as recommended
* use @docusaurus/responsive-loader
* revert MiniCssExtractPlugin esModule: false change
* add link to PR for custom CleanWebpackPlugin
* pwa: add fallback to env variable or webpack 5 fails to build
* upgrade to CssMinimizerPlugin 2.0
* only build en locale for windows tests
* line breaks between errors
* add useful comment
* Fix e2e tests with Yarn2 not finding new init template dependencies
* fix bad import
* disable browserslist target as webpack already tries to use browserlists if a config is found, and it is a problem for existing sites
* webpack5 TS fixes
* fix getMinimizer order (even if it does not work yet)
* update postcss to v8, fix cssnano minimizer errors
* add NavbarItem position to types (useful for QuestDB site upgrade to Webpack5)
* add webpack cache env variable to reduce risk of webpack 5 adoption
Co-authored-by: slorber <lorber.sebastien@gmail.com>
* extract createExcerpt code in separate file + add bad test
* almost working markdown parsing refactor
* complete parseMarkdownString refactor
* fix tests
* fix blog test issue
* fix docusaurus utils imports
* feat(v2): read first heading as title and pass it to front-matter
* fix(v2): always trim content after extracting front-matter
* fix(v2): remove heading from rss and keep duplicate heading
* fix(v2): rollback some unnecessary comment changes
* test(v2): add unit tests to blog
* test(v2): add unit tests to docs
* test(v2): correct issue on windows
* test(v2): add additional test cases
* feat(v2): add ability to set custom heading id
* Add cli command
* Fix slugger
* write-heading-ids doc + add in commands/templates
* refactor + add tests for writeHeadingIds
* polish writeHeadingIds
* polish writeHeadingIds
* remove i18n goals todo section as the remaining items are quite abstract/useless
* fix edge case with 2 md links in heading
* extract parseMarkdownHeadingId helper function
* refactor using the shared parseMarkdownHeadingId utility fn
* change logic of edge case
* Handle edge case
* Document explicit ids feature
Co-authored-by: slorber <lorber.sebastien@gmail.com>
* test(v2): Fix docusaurus-utils tests for windows
* test(v2): Fix plugin-client-redirects test
- add the posixPath in writeRedirectsFiles.ts
* test(v2): Fix plugin-content-pages test
add posixPath in test and index
* test(v2): add window test configuration
- add the window test configuration in nodejs-windows.yml
* test(v2): revert plugin-content-pages test fix
* test(v2): Fix mdx-loader/transformImage test
* test(v2): add cleanPath in transformImage test
* fix version path tests for windows
* make versionMetadata test work on Windows
* try to fix posix/win32 path issues
* attempt to fix windows test
* try to make source alias less win32 sensitive
* try to make source alias less win32 sensitive
* try to make source alias less win32 sensitive
* try to make source alias less win32 sensitive
* try to make source alias less win32 sensitive
* try to make source alias less win32 sensitive
* specific jest config for windows
* attempt to fix windows testing issue
* attempt to fix windows testing issue
* attempt to fix windows testing issue
* attempt to fix windows testing issue
* attempt to fix windows testing issue
* attempt to fix windows testing issue
* attempt to fix windows testing issue
* remove bad cleanPath fn
* try to fix windows tests
* try to fix windows tests
* blog: try to fix windows tests by using same logic as on docs plugin
* try to fix windows tests
* try to fix windows tests
* try to fix windows tests
* try to fix windows tests
* improve the Github CI setup for windows: make jobs run in parallel
* revert GH action change
Co-authored-by: Sachin Kumar Rajput <skr571999@gmail.com>
* fix(v2): handle multiple asset links in one line properly
* Fixes and improvements
* Make TypeScript happy
* Use relative path for image link
* Add example for JSX element inside asset link
* Rework markdown links to asset require processing + add test page
* implement pathname:// protocol / escape hatch at the Link level
* linking to assets: fix tests + avoid creating an useless nested paragraph
* fix assets linking doc
* attempt to fix windows e2e test
* try to fix windows errors