Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vite plugin css, build crash #10689

Closed
7 tasks done
Woyken opened this issue Oct 28, 2022 · 2 comments · Fixed by #10751
Closed
7 tasks done

Vite plugin css, build crash #10689

Woyken opened this issue Oct 28, 2022 · 2 comments · Fixed by #10751

Comments

@Woyken
Copy link

Woyken commented Oct 28, 2022

Describe the bug

I'm trying to build one of our company's projects using vite
It is crashing with error
[vite:css-post] Maximum call stack size exceeded
image

Solution

From the error I narrowed it down that error occurs because of this regex:

export const multilineCommentsRE = /\/\*(.|[\r\n])*?\*\//gm

Found this answer on stack overflow:
https://stackoverflow.com/a/36328890

Turns out we can write more performant regex without "lazy"(?) modifier

I modified it in node modules directly to this:

export const multilineCommentsRE = /\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//gm

And it all works just fine.
Tried executing this regex manually, it was noticeably faster.

Huge CSS source maps

I modified it to output whole CSS, before comment cleanup, looks like a lot of source maps (for each scss file) were added, each containing 4000000++ characters.
Node js with this big amount of data, when using "lazy ." (.?) inside current regex crashes.

Generated complete CSS file before cleanup and modification with all those symbols contains 140635835 characters

I'm not sure what to do about reproduction example.
I tried generating huge SASS files with huge source map entries, but it didn't seem to care.
Something in our case is causing regex to be even more inefficient for this particular case.

Reproduction

Cannot reproduce it exactly without using company's confidential packages

Steps to reproduce

Import a lot of scss files from node_modules containing source maps.
Generated output will contain those source maps.
For some reason it reproduced only when adding @import url("https://fonts.googleapis.com/css?family=Dancing+Script");
I suspect regex is matching something that make it consume even more steps

System Info

Node 16.15.0
"vite": "^3.2.0"
"sass": "^1.55.0",

Used Package Manager

npm

Logs

Click to expand!
> vite build --debug

  vite:config bundled config file loaded in 268.75ms +0ms
  vite:esbuild init tsconfck (root: D:/Projects/FieldDataManagementRenderer) +0ms
  vite:esbuild init tsconfck (root: D:/Projects/FieldDataManagementRenderer) +2ms
  vite:esbuild init tsconfck (root: D:/Projects/FieldDataManagementRenderer) +1ms
  vite:esbuild init tsconfck (root: D:/Projects/FieldDataManagementRenderer) +1ms
  vite:esbuild init tsconfck end +49ms
  vite:esbuild init tsconfck end +0ms
  vite:esbuild init tsconfck end +1ms
  vite:esbuild init tsconfck end +2ms
  vite:config using resolved config: {
  vite:config   base: './',
  vite:config   build: {
  vite:config     target: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari13' ],
  vite:config     cssTarget: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari13' ],
  vite:config     outDir: 'dist',
  vite:config     assetsDir: 'assets',
  vite:config     assetsInlineLimit: 4096,
  vite:config     cssCodeSplit: false,
  vite:config     sourcemap: false,
  vite:config     rollupOptions: {},
  vite:config     minify: 'esbuild',
  vite:config     terserOptions: {},
  vite:config     write: true,
  vite:config     emptyOutDir: null,
  vite:config     copyPublicDir: true,
  vite:config     manifest: false,
  vite:config     lib: {
  vite:config       entry: 'D:\\Projects\\FieldDataManagementRenderer\\src\\form-renderer\\FormRenderer.ts',
  vite:config       name: 'bentleyformsrenderer',
  vite:config       formats: [Array],
  vite:config       fileName: [Function: fileName]
  vite:config     },
  vite:config     ssr: false,
  vite:config     ssrManifest: false,
  vite:config     reportCompressedSize: true,
  vite:config     chunkSizeWarningLimit: 500,
  vite:config     watch: null,
  vite:config     commonjsOptions: { include: [Array], extensions: [Array] },
  vite:config     dynamicImportVarsOptions: { warnOnError: true, exclude: [Array] },
  vite:config     modulePreload: { polyfill: true }
  vite:config   },
  vite:config   resolve: {
  vite:config     mainFields: [ 'module', 'jsnext:main', 'jsnext' ],
  vite:config     browserField: true,
  vite:config     conditions: [],
  vite:config     extensions: [
  vite:config       '.mjs',  '.js',
  vite:config       '.mts',  '.ts',
  vite:config       '.jsx',  '.tsx',
  vite:config       '.json'
  vite:config     ],
  vite:config     dedupe: [],
  vite:config     preserveSymlinks: false,
  vite:config     alias: [ [Object], [Object], [Object] ]
  vite:config   },
  vite:config   optimizeDeps: {
  vite:config     disabled: 'build',
  vite:config     force: undefined,
  vite:config     esbuildOptions: { preserveSymlinks: false }
  vite:config   },
  vite:config   configFile: 'D:/Projects/FieldDataManagementRenderer/vite.config.ts',
  vite:config   configFileDependencies: [
  vite:config     'D:/Projects/FieldDataManagementRenderer/package.json',
  vite:config     'D:/Projects/FieldDataManagementRenderer/vite.config.ts'
  vite:config   ],
  vite:config   inlineConfig: {
  vite:config     root: undefined,
  vite:config     base: undefined,
  vite:config     mode: undefined,
  vite:config     configFile: undefined,
  vite:config     logLevel: undefined,
  vite:config     clearScreen: undefined,
  vite:config     optimizeDeps: { force: undefined },
  vite:config     build: {}
  vite:config   },
  vite:config   root: 'D:/Projects/FieldDataManagementRenderer',
  vite:config   publicDir: 'D:\\Projects\\FieldDataManagementRenderer\\public',
  vite:config   cacheDir: 'D:\\Projects\\FieldDataManagementRenderer\\node_modules\\.vite',
  vite:config   command: 'build',
  vite:config   mode: 'production',
  vite:config   ssr: {
  vite:config     format: 'esm',
  vite:config     target: 'node',
  vite:config     optimizeDeps: { disabled: true, esbuildOptions: [Object] }
  vite:config   },
  vite:config   isWorker: false,
  vite:config   mainConfig: null,
  vite:config   isProduction: true,
  vite:config   plugins: [
  vite:config     'vite:build-metadata',
  vite:config     'vite:pre-alias',
  vite:config     'alias',
  vite:config     'vite:modulepreload-polyfill',
  vite:config     'vite:resolve',
  vite:config     'vite:html-inline-proxy',
  vite:config     'vite:css',
  vite:config     'vite:esbuild',
  vite:config     'vite:json',
  vite:config     'vite:wasm-helper',
  vite:config     'vite:worker',
  vite:config     'vite:asset',
  vite:config     'vite:wasm-fallback',
  vite:config     'vite:define',
  vite:config     'vite:css-post',
  vite:config     'vite:build-html',
  vite:config     'vite:worker-import-meta-url',
  vite:config     'vite:asset-import-meta-url',
  vite:config     'vite:force-systemjs-wrap-complete',
  vite:config     'vite:watch-package-data',
  vite:config     'commonjs',
  vite:config     'vite:data-uri',
  vite:config     'vite:dynamic-import-vars',
  vite:config     'vite:import-glob',
  vite:config     'vite:build-import-analysis',
  vite:config     'vite:esbuild-transpile',
  vite:config     'vite:terser',
  vite:config     'vite:reporter',
  vite:config     'vite:load-fallback'
  vite:config   ],
  vite:config   server: {
  vite:config     preTransformRequests: true,
  vite:config     middlewareMode: false,
  vite:config     fs: { strict: true, allow: [Array], deny: [Array] }
  vite:config   },
  vite:config   preview: {
  vite:config     port: undefined,
  vite:config     strictPort: undefined,
  vite:config     host: undefined,
  vite:config     https: undefined,
  vite:config     open: undefined,
  vite:config     proxy: undefined,
  vite:config     cors: undefined,
  vite:config     headers: undefined
  vite:config   },
  vite:config   env: { BASE_URL: './', MODE: 'production', DEV: false, PROD: true },
  vite:config   assetsInclude: [Function: assetsInclude],
  vite:config   logger: {
  vite:config     hasWarned: false,
  vite:config     info: [Function: info],
  vite:config     warn: [Function: warn],
  vite:config     warnOnce: [Function: warnOnce],
  vite:config   },
  vite:config   packageCache: Map(0) { set: [Function (anonymous)] },
  vite:config   createResolver: [Function: createResolver],
  vite:config   worker: {
  vite:config     format: 'iife',
  vite:config     plugins: [
  vite:config       'vite:build-metadata',
  vite:config       'vite:pre-alias',
  vite:config       'alias',
  vite:config       'vite:modulepreload-polyfill',
  vite:config       'vite:resolve',
  vite:config       'vite:html-inline-proxy',
  vite:config       'vite:css',
  vite:config       'vite:esbuild',
  vite:config       'vite:json',
  vite:config       'vite:wasm-helper',
  vite:config       'vite:worker',
  vite:config       'vite:asset',
  vite:config       'vite:wasm-fallback',
  vite:config       'vite:define',
  vite:config       'vite:css-post',
  vite:config       'vite:build-html',
  vite:config       'vite:worker-import-meta-url',
  vite:config       'vite:asset-import-meta-url',
  vite:config       'vite:force-systemjs-wrap-complete',
  vite:config       'vite:watch-package-data',
  vite:config       'commonjs',
  vite:config       'vite:data-uri',
  vite:config       'vite:dynamic-import-vars',
  vite:config       'vite:import-glob',
  vite:config       'vite:build-import-analysis',
  vite:config       'vite:esbuild-transpile',
  vite:config       'vite:terser',
  vite:config       'vite:reporter',
  vite:config       'vite:load-fallback'
  vite:config     ],
  vite:config     rollupOptions: {},
  vite:config     getSortedPlugins: [Function: getSortedPlugins],
  vite:config     getSortedPluginHooks: [Function: getSortedPluginHooks]
  vite:config   },
  vite:config   appType: 'spa',
  vite:config   experimental: { importGlobRestoreExtension: false, hmrPartialAccept: false },
  vite:config   getSortedPlugins: [Function: getSortedPlugins],
  vite:config   getSortedPluginHooks: [Function: getSortedPluginHooks]
  vite:config } +68ms
vite v3.2.0 building for production...
transforming (104) src\form-renderer\FormRenderer.scss  vite:resolve 32.41ms @bentley/bwc/scss/style/colors.scss -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/bwc/scss/style/colors.scss +0ms
  vite:resolve 36.34ms @bentley/bwc/scss/progress-indicators/circular.scss -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/bwc/scss/progress-indicators/circular.scss +140ms
  vite:resolve 16.79ms @bentley/svg-icons/icons/status/error.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/status/error.svg +0ms
transforming (105) src\form-renderer\components\Label\Label.scss  vite:resolve 26.76ms @bentley/bwc/scss/mixins.scss -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/bwc/scss/mixins.scss +284ms
  vite:resolve 10.32ms @bentley/svg-icons/icons/image.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/image.svg +11s
transforming (109) src\form-renderer\plugins\Validation\Validation.scss  vite:resolve 23.96ms @bentley/svg-icons/default/clock.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/clock.svg +7s
  vite:resolve 24.56ms @bentley/svg-icons/icons/clock.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/clock.svg +1ms
transforming (110) src\form-renderer\components\Paragraph\Paragraph.scss  vite:resolve 257.39ms @bentley/svg-icons/icons/attach.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/attach.svg +505ms
  vite:resolve 258.37ms @bentley/svg-icons/icons/comments.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/comments.svg +1ms
  vite:resolve 259.02ms @bentley/svg-icons/icons/punch-list.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/punch-list.svg +1ms
  vite:resolve 259.64ms @bentley/svg-icons/icons/link.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/link.svg +0ms
  vite:resolve 260.16ms @bentley/svg-icons/icons/flag.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/flag.svg +1ms
  vite:resolve 58.43ms @bentley/svg-icons/default/pen.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/pen.svg +55ms
  vite:resolve 58.84ms @bentley/svg-icons/icons/pen.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/pen.svg +1ms
  vite:resolve 6488.58ms @bentley/bwc/scss/buttons/button.scss -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/bwc/scss/buttons/button.scss +25s
  vite:resolve 49.30ms @bentley/svg-icons/icons/chevron-right.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/chevron-right.svg +7s
  vite:resolve 49.75ms @bentley/svg-icons/actionable/chevron-right.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/actionable/chevron-right.svg +1ms
  vite:resolve 49.85ms @bentley/svg-icons/white/chevron-right.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/chevron-right.svg +0ms
transforming (121) src\form-renderer\components\StaticImage\StaticImage.scss  vite:resolve 18.44ms @bentley/svg-icons/icons/photo-add.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/photo-add.svg +197ms
transforming (124) src\form-renderer\components\Drawer\Drawer.scss  vite:resolve 10529.49ms @bentley/bwc/scss/tags/index.scss -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/bwc/scss/tags/index.scss +19s
  vite:resolve 207.83ms @bentley/bwc/scss/alerts/classes -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/bwc/scss/alerts/classes.scss +3ms
  vite:resolve 121.24ms @bentley/svg-icons/default/unlink.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/unlink.svg +19s
  vite:resolve 120.70ms @bentley/svg-icons/white/link.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/link.svg +0ms
  vite:resolve 120.97ms @bentley/svg-icons/white/camera.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/camera.svg +0ms
  vite:resolve 121.33ms @bentley/svg-icons/icons/location.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/location.svg +1ms
  vite:resolve 121.53ms @bentley/svg-icons/white/upload.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/upload.svg +0ms
  vite:resolve 121.69ms @bentley/svg-icons/icons/cloud.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/cloud.svg +1ms
  vite:resolve 122.04ms ../../../resources/icons/clear-day.svg -> D:/Projects/FieldDataManagementRenderer/src/resources/icons/clear-day.svg +0ms
  vite:resolve 122.31ms ../../../resources/icons/snow.svg -> D:/Projects/FieldDataManagementRenderer/src/resources/icons/snow.svg +0ms
  vite:resolve 122.63ms ../../../resources/icons/rain-shower.svg -> D:/Projects/FieldDataManagementRenderer/src/resources/icons/rain-shower.svg +1ms
  vite:resolve 122.98ms ../../../resources/icons/thunderstorm.svg -> D:/Projects/FieldDataManagementRenderer/src/resources/icons/thunderstorm.svg +0ms
  vite:resolve 123.31ms @bentley/svg-icons/icons/refresh.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/refresh.svg +0ms
  vite:resolve 123.47ms @bentley/svg-icons/default/chevron-down.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/chevron-down.svg +1ms       
  vite:resolve 123.76ms @bentley/svg-icons/default/chevron-up.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/chevron-up.svg +0ms
  vite:resolve 356.70ms @bentley/svg-icons/default/more-vertical.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/more-vertical.svg +3s
  vite:resolve 332.44ms @bentley/svg-icons/default/remove.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/remove.svg +0ms
  vite:resolve 332.38ms @bentley/svg-icons/default/upload.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/upload.svg +1ms
  vite:resolve 332.70ms @bentley/svg-icons/blue/upload.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/blue/upload.svg +0ms
  vite:resolve 333.09ms @bentley/svg-icons/blue/document.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/blue/document.svg +0ms
  vite:resolve 333.65ms @bentley/svg-icons/icons/file-types/image.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/image.svg +1ms   
  vite:resolve 334.10ms @bentley/svg-icons/icons/file-types/amim.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/amim.svg +1ms     
  vite:resolve 334.55ms @bentley/svg-icons/icons/file-types/dgn-db_2.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/dgn-db_2.svg +0ms
  vite:resolve 335.13ms @bentley/svg-icons/icons/file-types/dgn-db.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/dgn-db.svg +1ms 
  vite:resolve 335.48ms @bentley/svg-icons/icons/file-types/document.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/document.svg +0ms
  vite:resolve 336.15ms @bentley/svg-icons/icons/file-types/microstation.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/microstation.svg +1ms
  vite:resolve 336.71ms @bentley/svg-icons/icons/file-types/mism.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/mism.svg +0ms     
  vite:resolve 337.08ms @bentley/svg-icons/icons/file-types/pdf.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/pdf.svg +1ms       
  vite:resolve 337.57ms @bentley/svg-icons/icons/file-types/ppt.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/ppt.svg +0ms       
  vite:resolve 338.29ms @bentley/svg-icons/icons/file-types/revit.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/revit.svg +1ms   
  vite:resolve 338.84ms @bentley/svg-icons/icons/file-types/txt.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/txt.svg +1ms       
  vite:resolve 339.70ms @bentley/svg-icons/icons/file-types/unknown.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/unknown.svg +0ms
  vite:resolve 340.39ms @bentley/svg-icons/icons/file-types/video.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/video.svg +1ms   
  vite:resolve 340.99ms @bentley/svg-icons/icons/file-types/word.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/word.svg +0ms     
  vite:resolve 341.49ms @bentley/svg-icons/icons/file-types/xls.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/file-types/xls.svg +1ms       
  vite:resolve 342.17ms @bentley/svg-icons/default/delete.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/default/delete.svg +1ms
transforming (127) src\form-renderer\components\Footer\FooterContent\SaveInstanceFooter.scss  vite:resolve 12.01ms @bentley/svg-icons/actionable/caret-down.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/actionable/caret-down.svg +93ms
  vite:resolve 27.74ms @bentley/svg-icons/white/caret-down.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/caret-down.svg +2s
  vite:resolve 28.20ms @bentley/svg-icons/icons/caret-down.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/caret-down.svg +1ms
  vite:resolve 28.51ms @bentley/svg-icons/white/checkmark.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/checkmark.svg +0ms
transforming (139) src\form-renderer\components\SelectList\SelectList.scss  vite:resolve 32.37ms @bentley/svg-icons/white/add.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/add.svg +9s
  vite:resolve 46.27ms @bentley/svg-icons/white/zoom.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/zoom.svg +2s
  vite:resolve 46.80ms @bentley/svg-icons/white/delete.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/delete.svg +0ms
  vite:resolve 47.27ms @bentley/svg-icons/white/download.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/white/download.svg +1ms
transforming (144) src\form-renderer\components\Footer\FooterContent\ApprovalStatusViewer.scss  vite:resolve 9.96ms @bentley/svg-icons/icons/progress-forward_2.svg -> D:/Projects/FieldDataManagementRenderer/node_modules/@bentley/svg-icons/icons/progress-forward_2.svg +3s
✓ 149 modules transformed.
rendering chunks (1)...[vite:css-post] Maximum call stack size exceeded
error during build:
RangeError: Maximum call stack size exceeded
    at String.replace (<anonymous>)
    at emptyCssComments (file:///D:/Projects/FieldDataManagementRenderer/node_modules/vite/dist/node/chunks/dep-61d2428a.js:14182:16)
    at hoistAtRules (file:///D:/Projects/FieldDataManagementRenderer/node_modules/vite/dist/node/chunks/dep-61d2428a.js:47054:22)
    at finalizeCss (file:///D:/Projects/FieldDataManagementRenderer/node_modules/vite/dist/node/chunks/dep-61d2428a.js:46849:21)
    at Object.generateBundle (file:///D:/Projects/FieldDataManagementRenderer/node_modules/vite/dist/node/chunks/dep-61d2428a.js:46554:38)
    at file:///D:/Projects/FieldDataManagementRenderer/node_modules/rollup/dist/es/shared/rollup.js:22748:40
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

Validations

@bluwy
Copy link
Member

bluwy commented Nov 1, 2022

Sounds good to me. Would you like to send a PR to use that regex? It's a bit hard to read so maybe we should have a comment that links to https://stackoverflow.com/a/36328890 too.

@github-actions
Copy link

github-actions bot commented Nov 1, 2022

Hello @Woyken. We like your proposal/feedback and would appreciate a contribution via a Pull Request by you or another community member. We thank you in advance for your contribution and are looking forward to reviewing it!

mrkldshv added a commit to mrkldshv/vite that referenced this issue Nov 1, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Nov 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants