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

HMR throw Maximum call stack size exceeded Plugin: vite:vue at deepEqual @vitejs/plugin-vue/dist/index.mjs:2267:19 #325

Closed
8 of 9 tasks
n0099 opened this issue Dec 31, 2023 · 8 comments · Fixed by #334
Closed
8 of 9 tasks

Comments

@n0099
Copy link

n0099 commented Dec 31, 2023

Related plugins

Describe the bug

9:03:04 PM [vite] page reload src/components/Post/renderers/RendererList.vue (circular imports)
9:03:05 PM [vite] page reload src/components/Post/renderers/RendererList.vue (circular imports) (x2)
9:03:05 PM [vite] hmr update /src/components/Post/renderers/RendererList.vue?vue&type=style&index=0&scoped=ed4c09bc&lang.css
9:03:07 PM [vite] Pre-transform error: Maximum call stack size exceeded
9:03:08 PM [vite] Internal server error: Maximum call stack size exceeded
  Plugin: vite:vue
  File: /home/n0099/tbm/src/components/Post/renderers/RendererList.vue
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2267:19)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)

if (!deepEqual(obj1[key], obj2[key], excludeProps)) {

Reproduction

https://github.com/n0099/open-tbm/blob/5ed1f50f5a93a69ccf9208c0d029e4ecd85102ab/fe

Steps to reproduce

  1. $ yarn dev
  2. open http://localhost:5173 in browser
  3. make changes, such as randomly adding a newline, in any *.vue file twice which the first update won't trigger this

This just happened after upgrade to vue@3.4.0 and @vitejs/plugin-vue@5.0.1, also tried update to the latest vue@3.4.3 with @vitejs/plugin-vue@5.0.2 but it still sticking with this infinite recursion.

System Info

System:
    OS: Linux 6.2 Ubuntu 22.04.3 LTS 22.04.3 LTS (Jammy Jellyfish)
    CPU: (2) x64 AMD EPYC 7763 64-Core Processor
    Memory: 1.55 GB / 7.74 GB
    Container: Yes
    Shell: 5.8.1 - /usr/bin/zsh
  Binaries:
    Node: 20.5.1 - /usr/bin/node
    Yarn: 4.0.2 - /usr/bin/yarn
    npm: 10.2.5 - /usr/bin/npm
  npmPackages:
    @vitejs/plugin-vue: ^5.0.2 => 5.0.2
    vite: ^5.0.10 => 5.0.10

Used Package Manager

yarn

Logs

Click to expand!
  vite:hmr [file change] src/components/Post/renderers/RendererList.vue +27s
  vite:hmr [vue:update(template)] /home/n0099/tbm/src/components/Post/renderers/RendererList.vue +0ms
  vite:hmr circular imports detected: /src/components/Post/renderers/RendererList.vue -> /src/components/Post/renderers/common.ts -> /src/main.ts -> /src/router/index.ts -> /src/views/Post.vue -> /src/components/Post/PostPage.vue -> /src/components/Post/renderers/RendererList.vue +117ms
9:13:22 PM [vite] page reload src/components/Post/renderers/RendererList.vue (circular imports)
  vite:html-fallback Rewriting GET /p/f/228500 to /index.html +31s
  vite:cache [memory-hmr] /src/main.ts +27s
  vite:cache [memory] /src/App.vue +0ms
  vite:cache [memory] /src/shared/fontAwesome.ts +0ms
  vite:cache [memory] /src/styles/style.css +1ms
  vite:cache [memory] /node_modules/.vite/deps/vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/@fortawesome_fontawesome-svg-core.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/@unhead_vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/bootstrap.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/bootstrap/dist/css/bootstrap.min.css +0ms
  vite:cache [memory] /node_modules/noty/lib/noty.css +0ms
  vite:cache [memory] /node_modules/noty/lib/themes/mint.css +0ms
  vite:cache [memory] /node_modules/.vite/deps/nprogress.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/nprogress/nprogress.css +0ms
  vite:cache [memory] /node_modules/.vite/deps/pinia.js?v=7676c3fe +0ms
  vite:cache [memory-hmr] /src/router/index.ts +0ms
  vite:cache [memory] /src/components/placeholders/PlaceholderError.vue +1ms
  vite:cache [memory] /src/views/Index.vue +0ms
  vite:cache [memory] /src/shared/index.ts +0ms
  vite:cache [memory] /node_modules/.vite/deps/vue-router.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/lodash.js?v=7676c3fe +0ms
  vite:import-analysis [skipped] index.html?html-proxy&direct&index=0.css +27s
  vite:time 13.11ms /index.html +24s
  vite:hmr [file change] src/components/Post/renderers/RendererList.vue +490ms
  vite:hmr [vue:update(template)] /home/n0099/tbm/src/components/Post/renderers/RendererList.vue +516ms
  vite:hmr circular imports detected: /src/components/Post/renderers/RendererList.vue -> /src/components/Post/renderers/common.ts -> /src/main.ts -> /src/router/index.ts -> /src/views/Post.vue -> /src/components/Post/PostPage.vue -> /src/components/Post/renderers/RendererList.vue +26ms
9:13:22 PM [vite] page reload src/components/Post/renderers/RendererList.vue (circular imports) (x2)
  vite:hmr [file change] src/components/Post/renderers/RendererList.vue +127ms
  vite:hmr [vue:update(template&style)] /home/n0099/tbm/src/components/Post/renderers/RendererList.vue +225ms
  vite:hmr circular imports detected: /src/components/Post/renderers/RendererList.vue -> /src/components/Post/renderers/common.ts -> /src/main.ts -> /src/router/index.ts -> /src/views/Post.vue -> /src/components/Post/PostPage.vue -> /src/components/Post/renderers/RendererList.vue +98ms
9:13:22 PM [vite] page reload src/components/Post/renderers/RendererList.vue (circular imports) (x3)
  vite:cache [memory-hmr] /src/main.ts +366ms
  vite:cache [memory] /src/App.vue +0ms
  vite:cache [memory] /src/shared/fontAwesome.ts +1ms
  vite:cache [memory] /src/styles/style.css +0ms
  vite:cache [memory] /node_modules/.vite/deps/vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/@fortawesome_fontawesome-svg-core.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/@unhead_vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/bootstrap.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/bootstrap/dist/css/bootstrap.min.css +1ms
  vite:cache [memory] /node_modules/noty/lib/noty.css +0ms
  vite:cache [memory] /node_modules/noty/lib/themes/mint.css +0ms
  vite:cache [memory] /node_modules/.vite/deps/nprogress.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/nprogress/nprogress.css +0ms
  vite:cache [memory] /node_modules/.vite/deps/pinia.js?v=7676c3fe +0ms
  vite:cache [memory-hmr] /src/router/index.ts +0ms
  vite:cache [memory] /src/components/placeholders/PlaceholderError.vue +1ms
  vite:cache [memory] /src/views/Index.vue +0ms
  vite:cache [memory] /src/shared/index.ts +0ms
  vite:cache [memory] /node_modules/.vite/deps/vue-router.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/lodash.js?v=7676c3fe +0ms
  vite:time 3.59ms /src/main.ts +368ms
  vite:cache [304] /@vite/client +27s
  vite:time 0.24ms /@vite/client +2ms
  vite:time 0.28ms /assets/icon-loading-block.svg +1ms
  vite:cache [memory] /src/router/index.ts +209ms
  vite:time 0.36ms /src/router/index.ts +207ms
  vite:cache [304] /node_modules/vite/dist/client/env.mjs +220ms
  vite:time 0.15ms /node_modules/vite/dist/client/env.mjs +12ms
  vite:cache [304] /src/App.vue +2ms
  vite:time 0.11ms /src/App.vue +3ms
  vite:cache [304] /src/shared/fontAwesome.ts +5ms
  vite:time 0.11ms /src/shared/fontAwesome.ts +4ms
  vite:cache [304] /src/styles/style.css +5ms
  vite:time 0.13ms /src/styles/style.css +5ms
  vite:cache [304] /node_modules/bootstrap/dist/css/bootstrap.min.css +3ms
  vite:time 0.12ms /node_modules/bootstrap/dist/css/bootstrap.min.css +3ms
  vite:cache [304] /node_modules/noty/lib/noty.css +3ms
  vite:time 0.11ms /node_modules/noty/lib/noty.css +3ms
  vite:cache [304] /node_modules/noty/lib/themes/mint.css +2ms
  vite:time 0.13ms /node_modules/noty/lib/themes/mint.css +2ms
  vite:cache [304] /node_modules/nprogress/nprogress.css +3ms
  vite:time 0.11ms /node_modules/nprogress/nprogress.css +3ms
  vite:cache [304] /src/components/placeholders/PlaceholderError.vue +151ms
  vite:time 0.18ms /src/components/placeholders/PlaceholderError.vue +151ms
  vite:cache [304] /src/views/Index.vue +34ms
  vite:time 0.17ms /src/views/Index.vue +34ms
  vite:cache [304] /src/shared/index.ts +2ms
  vite:time 0.11ms /src/shared/index.ts +3ms
  vite:cache [304] /assets/icon-loading-block.svg +14ms
  vite:time 0.13ms /assets/icon-loading-block.svg?import +13ms
  vite:cache [304] /src/components/GlobalNavBar.vue +2ms
  vite:time 0.16ms /src/components/GlobalNavBar.vue +2ms
  vite:cache [304] /src/components/MininiumResolutionWarning.vue +3ms
  vite:time 0.20ms /src/components/MininiumResolutionWarning.vue +3ms
  vite:cache [304] plugin-vue:export-helper +13ms
  vite:time 0.12ms /@id/__x00__plugin-vue:export-helper +13ms
  vite:cache [304] /src/App.vue?vue&type=style&index=0&scoped=7a7a37b1&lang.css +3ms
  vite:time 0.13ms /src/App.vue?vue&type=style&index=0&scoped=7a7a37b1&lang.css +3ms
  vite:cache [304] /src/components/placeholders/PlaceholderError.vue?vue&type=style&index=0&scoped=85da8553&lang.css +78ms
  vite:time 0.21ms /src/components/placeholders/PlaceholderError.vue?vue&type=style&index=0&scoped=85da8553&lang.css +78ms
  vite:cache [304] /src/components/MininiumResolutionWarning.vue?vue&type=style&index=0&scoped=04da5096&lang.css +91ms
  vite:time 0.29ms /src/components/MininiumResolutionWarning.vue?vue&type=style&index=0&scoped=04da5096&lang.css +91ms
  vite:time 14.73ms /node_modules/.vite/deps/vue.js.map +189ms
  vite:time 8.99ms /node_modules/.vite/deps/chunk-TXPGJST7.js.map +3ms
  vite:time 12.65ms /node_modules/.vite/deps/vue-router.js.map +4ms
  vite:time 15.46ms /node_modules/.vite/deps/chunk-PBJIO4MK.js.map +3ms
  vite:time 23.13ms /node_modules/.vite/deps/chunk-CGJ6AWGQ.js.map +7ms
  vite:time 27.63ms /node_modules/.vite/deps/@fortawesome_vue-fontawesome.js.map +6ms
  vite:time 29.08ms /node_modules/.vite/deps/chunk-R6RG375T.js.map +8ms
  vite:time 31.39ms /node_modules/.vite/deps/chunk-3PTNY57C.js.map +3ms
  vite:time 51.17ms /node_modules/.vite/deps/ant-design-vue_es_locale_zh_CN.js.map +41ms
  vite:time 51.58ms /node_modules/.vite/deps/noty.js.map +1ms
  vite:time 52.54ms /node_modules/.vite/deps/@unhead_vue.js.map +1ms
  vite:time 52.78ms /node_modules/.vite/deps/nprogress.js.map +1ms
  vite:time 53.00ms /node_modules/.vite/deps/@fortawesome_fontawesome-svg-core.js.map +1ms
  vite:time 57.86ms /node_modules/.vite/deps/bootstrap.js.map +5ms
  vite:time 60.37ms /node_modules/.vite/deps/pinia.js.map +3ms
  vite:time 60.65ms /node_modules/.vite/deps/chunk-KE5LXLFG.js.map +0ms
  vite:time 81.10ms /node_modules/.vite/deps/lodash.js.map +18ms
  vite:time 91.71ms /node_modules/.vite/deps/@fortawesome_free-solid-svg-icons.js.map +12ms
  vite:time 279.03ms /node_modules/.vite/deps/ant-design-vue.js.map +164ms
  vite:cache [304] /src/views/Status.vue +482ms
  vite:time 0.19ms /src/views/Status.vue +12ms
  vite:cache [304] /src/views/Stats.vue +1ms
  vite:time 0.10ms /src/views/Stats.vue +1ms
  vite:cache [304] /src/views/BilibiliVote.vue +1ms
  vite:time 0.21ms /src/views/BilibiliVote.vue +2ms
  vite:cache [304] /src/stats.js +3ms
  vite:time 0.10ms /src/stats.js +2ms
  vite:cache [304] /src/components/widgets/TimeGranularity.vue +280ms
  vite:time 0.29ms /src/components/widgets/TimeGranularity.vue +280ms
  vite:cache [304] /src/components/widgets/TimeRange.vue +2ms
  vite:time 0.18ms /src/components/widgets/TimeRange.vue +2ms
  vite:cache [304] /src/api/index.ts +2ms
  vite:time 0.17ms /src/api/index.ts +2ms
  vite:cache [304] /src/shared/echarts.ts +2ms
  vite:time 0.19ms /src/shared/echarts.ts +3ms
  vite:cache [304] /src/views/Status.vue?vue&type=style&index=0&scoped=051028a3&lang.css +3ms
  vite:time 0.23ms /src/views/Status.vue?vue&type=style&index=0&scoped=051028a3&lang.css +2ms
  vite:cache [304] /src/views/Stats.vue?vue&type=style&index=0&scoped=f071b3db&lang.css +2ms
  vite:time 0.15ms /src/views/Stats.vue?vue&type=style&index=0&scoped=f071b3db&lang.css +2ms
  vite:cache [304] /src/api/bilibiliVote/index.ts +38ms
  vite:time 0.15ms /src/api/bilibiliVote/index.ts +38ms
  vite:cache [304] /src/views/BilibiliVote.vue?vue&type=style&index=0&scoped=be04ad42&lang.css +2ms
  vite:time 0.13ms /src/views/BilibiliVote.vue?vue&type=style&index=0&scoped=be04ad42&lang.css +2ms
  vite:cache [304] /src/checkCSS.ts +28ms
  vite:time 0.10ms /src/checkCSS.ts +28ms
  vite:time 8.59ms /node_modules/.vite/deps/stats__js.js.map +68ms
  vite:cache [304] /src/api/bilibiliVote/allCandidatesVoteCount.json +164ms
  vite:time 0.23ms /src/api/bilibiliVote/allCandidatesVoteCount.json?import +96ms
  vite:cache [304] /src/api/bilibiliVote/allVoteCountGroupByHour.json +4ms
  vite:time 0.18ms /src/api/bilibiliVote/allVoteCountGroupByHour.json?import +4ms
  vite:cache [304] /src/api/bilibiliVote/allVoteCountGroupByMinute.json +0ms
  vite:time 0.15ms /src/api/bilibiliVote/allVoteCountGroupByMinute.json?import +0ms
  vite:cache [304] /src/api/bilibiliVote/candidateNames.json +2ms
  vite:time 0.13ms /src/api/bilibiliVote/candidateNames.json?import +2ms
  vite:cache [304] /src/api/bilibiliVote/top10CandidatesTimeline.json +2ms
  vite:time 0.18ms /src/api/bilibiliVote/top10CandidatesTimeline.json?import +3ms
  vite:cache [304] /src/api/bilibiliVote/top50CandidatesOfficialValidVoteCount.json +3ms
  vite:time 0.13ms /src/api/bilibiliVote/top50CandidatesOfficialValidVoteCount.json?import +2ms
  vite:cache [304] /src/api/bilibiliVote/top50CandidatesVoteCount.json +2ms
  vite:time 0.12ms /src/api/bilibiliVote/top50CandidatesVoteCount.json?import +2ms
  vite:cache [304] /src/api/bilibiliVote/top5CandidatesVoteCountGroupByHour.json +2ms
  vite:time 0.11ms /src/api/bilibiliVote/top5CandidatesVoteCountGroupByHour.json?import +2ms
  vite:cache [304] /src/api/bilibiliVote/top5CandidatesVoteCountGroupByMinute.json +2ms
  vite:time 0.28ms /src/api/bilibiliVote/top5CandidatesVoteCountGroupByMinute.json?import +3ms
  vite:time 18.96ms /node_modules/.vite/deps/dayjs.js.map +21ms
  vite:time 8.89ms /node_modules/.vite/deps/qs.js.map +3ms
  vite:time 19.73ms /node_modules/.vite/deps/luxon.js.map +11ms
  vite:time 19.64ms /node_modules/.vite/deps/chunk-ZHU555XN.js.map +0ms
  vite:time 20.25ms /node_modules/.vite/deps/echarts_core.js.map +1ms
  vite:time 20.45ms /node_modules/.vite/deps/chunk-6L4ON5PA.js.map +0ms
  vite:time 26.30ms /node_modules/.vite/deps/chunk-VTEWMUSQ.js.map +7ms
  vite:time 36.87ms /node_modules/.vite/deps/chunk-G6V3JETN.js.map +10ms
  vite:time 33.89ms /node_modules/.vite/deps/chunk-XXSQETNO.js.map +3ms
  vite:time 45.29ms /node_modules/.vite/deps/chunk-R3I6QBLL.js.map +12ms
  vite:time 15.77ms /node_modules/.vite/deps/chunk-3ETFZJOJ.js.map +1ms
  vite:time 17.48ms /node_modules/.vite/deps/@vueuse_core.js.map +4ms
  vite:time 42.95ms /node_modules/.vite/deps/echarts_charts.js.map +27ms
  vite:time 37.62ms /node_modules/.vite/deps/chunk-5NT22SOJ.js.map +6ms
  vite:time 33.21ms /node_modules/.vite/deps/echarts_features.js.map +2ms
  vite:time 54.83ms /node_modules/.vite/deps/echarts_components.js.map +16ms
  vite:time 46.36ms /node_modules/.vite/deps/echarts_renderers.js.map +1ms
  vite:cache [memory-hmr] /src/views/Post.vue +3s
  vite:cache [memory] /node_modules/.vite/deps/vue.js?v=7676c3fe +0ms
  vite:cache [memory] /src/components/placeholders/PlaceholderError.vue +1ms
  vite:cache [memory] /src/components/placeholders/PlaceholderPostList.vue +0ms
  vite:cache [memory] /src/api/index.ts +0ms
  vite:cache [memory] /src/router/index.ts +1ms
  vite:cache [memory] /src/shared/index.ts +0ms
  vite:cache [memory] /src/stores/triggerRouteUpdate.ts +0ms
  vite:cache [memory] /node_modules/.vite/deps/vue-router.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/ant-design-vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/@unhead_vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/lodash.js?v=7676c3fe +0ms
  vite:cache [memory] /src/views/Post.vue?vue&type=style&index=0&scoped=c53b7e1d&lang.css +0ms
  vite:cache [memory] plugin-vue:export-helper +0ms
  vite:cache [memory-hmr] /src/components/Post/PostNav.vue +0ms
  vite:cache [memory-hmr] /src/components/Post/PostPage.vue +0ms
  vite:cache [memory-hmr] /src/components/Post/queryForm/QueryForm.vue +0ms
  vite:cache [memory-hmr] /src/components/Post/renderers/rendererList.ts +0ms
  vite:cache [memory] /src/stores/elementRefs.ts +0ms
  vite:cache [memory] /node_modules/.vite/deps/@vueuse_core.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/@fortawesome_vue-fontawesome.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/scroll-into-view-if-needed.js?v=7676c3fe +0ms
  vite:cache [memory] /src/components/Post/PostNav.vue?vue&type=style&index=0&scoped=2865d75b&lang.css +0ms
  vite:cache [memory] /src/components/Post/queryForm/queryParams.ts +1ms
  vite:cache [memory] /src/components/Post/queryForm/widgets/InputNumericParam.vue +0ms
  vite:cache [memory] /src/components/Post/queryForm/widgets/InputTextMatchParam.vue +0ms
  vite:cache [memory] /src/components/Post/queryForm/widgets/SelectParam.vue +0ms
  vite:cache [memory] /src/components/Post/queryForm/widgets/SelectRange.vue +0ms
  vite:cache [memory] /src/components/Post/queryForm/QueryForm.vue?vue&type=style&index=0&scoped=48f1880c&lang.css +0ms
  vite:cache [memory-hmr] /src/components/Post/renderers/RendererTable.vue +0ms
  vite:cache [memory-hmr] /src/components/paginations/usePaginationButtons.ts +0ms
  vite:time 4.09ms /src/views/Post.vue +1s
  vite:cache [memory] /node_modules/.vite/deps/vue.js?v=7676c3fe +1ms
  vite:cache [memory] /src/components/Post/badges/BadgeThread.vue +0ms
  vite:cache [memory] /src/components/Post/badges/BadgeUser.vue +0ms
  vite:cache [memory] /src/shared/index.ts +0ms
  vite:cache [memory] /node_modules/.vite/deps/vue-router.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/ant-design-vue.js?v=7676c3fe +0ms
  vite:cache [memory] /node_modules/.vite/deps/lodash.js?v=7676c3fe +0ms
  vite:cache [memory] /src/components/Post/renderers/RendererTable.vue?vue&type=style&index=0&scoped=abc10f6a&lang.css +0ms
  vite:cache [memory] plugin-vue:export-helper +0ms
  vite:cache [memory] /src/router/index.ts +0ms
  vite:cache [memory] /src/components/paginations/PageCurrentButton.vue +0ms
  vite:cache [memory] /src/components/paginations/PageNextButton.vue +0ms
  vite:cache [memory-hmr] /src/components/Post/renderers/common.ts +0ms
  vite:cache [memory] /src/main.ts +0ms
  vite:cache [memory] /src/styles/tieba.css +0ms
  vite:cache [memory] /node_modules/.vite/deps/v-viewer.js?v=7676c3fe +1ms
  vite:cache [memory] /node_modules/viewerjs/dist/viewer.css +0ms
  vite:load 4.73ms [fs] /src/components/Post/renderers/RendererList.vue +31s
9:13:26 PM [vite] Pre-transform error: Maximum call stack size exceeded
  vite:cache [memory] /src/components/Post/PostNav.vue +541ms
  vite:time 0.36ms /src/components/Post/PostNav.vue +544ms
  vite:cache [memory] /src/components/Post/PostPage.vue +4ms
  vite:time 0.33ms /src/components/Post/PostPage.vue +3ms
  vite:cache [memory] /src/components/Post/queryForm/QueryForm.vue +2ms
  vite:time 0.53ms /src/components/Post/queryForm/QueryForm.vue +3ms
  vite:cache [memory] /src/components/Post/renderers/rendererList.ts +4ms
  vite:time 0.26ms /src/components/Post/renderers/rendererList.ts +3ms
  vite:cache [304] /src/components/placeholders/PlaceholderPostList.vue +2s
  vite:time 0.22ms /src/components/placeholders/PlaceholderPostList.vue +3ms
  vite:cache [304] /src/stores/triggerRouteUpdate.ts +2ms
  vite:time 0.22ms /src/stores/triggerRouteUpdate.ts +2ms
  vite:cache [304] /src/views/Post.vue?vue&type=style&index=0&scoped=c53b7e1d&lang.css +2ms
  vite:time 0.21ms /src/views/Post.vue?vue&type=style&index=0&scoped=c53b7e1d&lang.css +3ms
  vite:time 0.42ms /node_modules/.vite/deps/checkcss.js.map +2ms
  vite:cache [memory] /src/components/Post/renderers/RendererTable.vue +285ms
  vite:time 0.38ms /src/components/Post/renderers/RendererTable.vue +276ms
  vite:cache [memory] /src/components/paginations/usePaginationButtons.ts +1ms
  vite:time 0.18ms /src/components/paginations/usePaginationButtons.ts +0ms
  vite:load 7.37ms [fs] /src/components/Post/renderers/RendererList.vue +838ms
9:13:27 PM [vite] Internal server error: Maximum call stack size exceeded
  Plugin: vite:vue
  File: /home/n0099/tbm/src/components/Post/renderers/RendererList.vue
      at Function.keys (<anonymous>)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2274:24)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
      at deepEqual (file:///home/n0099/tbm/node_modules/@vitejs/plugin-vue/dist/index.mjs:2283:10)
  vite:time 88.09ms /src/components/Post/renderers/RendererList.vue +84ms
  vite:cache [304] /assets/placeholder-post-list.svg +364ms
  vite:time 0.13ms /assets/placeholder-post-list.svg?import +1ms
  vite:cache [304] /assets/icon-huaji-loading-spinner.avifs +0ms
  vite:time 0.10ms /assets/icon-huaji-loading-spinner.avifs?import +0ms
  vite:cache [304] /assets/icon-huaji-loading-spinner-2nd-frames-removed.gif +1ms
  vite:time 0.10ms /assets/icon-huaji-loading-spinner-2nd-frames-removed.gif?import +1ms
  vite:cache [304] /src/components/placeholders/PlaceholderPostList.vue?vue&type=style&index=0&scoped=a5d0eef1&lang.css +0ms
  vite:time 0.10ms /src/components/placeholders/PlaceholderPostList.vue?vue&type=style&index=0&scoped=a5d0eef1&lang.css +0ms
  vite:cache [304] /src/stores/elementRefs.ts +0ms
  vite:time 0.08ms /src/stores/elementRefs.ts +1ms
  vite:cache [304] /src/components/Post/PostNav.vue?vue&type=style&index=0&scoped=2865d75b&lang.css +1ms
  vite:time 0.12ms /src/components/Post/PostNav.vue?vue&type=style&index=0&scoped=2865d75b&lang.css +0ms
  vite:cache [304] /src/components/Post/queryForm/queryParams.ts +0ms
  vite:time 0.09ms /src/components/Post/queryForm/queryParams.ts +0ms
  vite:cache [304] /src/components/Post/queryForm/widgets/InputNumericParam.vue +1ms
  vite:time 0.10ms /src/components/Post/queryForm/widgets/InputNumericParam.vue +1ms
  vite:cache [304] /src/components/Post/queryForm/widgets/InputTextMatchParam.vue +0ms
  vite:time 0.08ms /src/components/Post/queryForm/widgets/InputTextMatchParam.vue +0ms
  vite:cache [304] /src/components/Post/queryForm/widgets/SelectParam.vue +1ms
  vite:time 0.08ms /src/components/Post/queryForm/widgets/SelectParam.vue +1ms
  vite:cache [304] /src/components/Post/queryForm/widgets/SelectRange.vue +0ms
  vite:time 0.08ms /src/components/Post/queryForm/widgets/SelectRange.vue +0ms
  vite:cache [304] /src/components/Post/queryForm/QueryForm.vue?vue&type=style&index=0&scoped=48f1880c&lang.css +1ms
  vite:time 0.10ms /src/components/Post/queryForm/QueryForm.vue?vue&type=style&index=0&scoped=48f1880c&lang.css +1ms
  vite:cache [memory] /src/components/Post/renderers/common.ts +163ms
  vite:time 0.25ms /src/components/Post/renderers/common.ts +73ms
  vite:cache [304] /src/components/Post/badges/BadgeThread.vue +81ms
  vite:time 0.10ms /src/components/Post/badges/BadgeThread.vue +8ms
  vite:cache [304] /src/components/Post/badges/BadgeUser.vue +2ms
  vite:time 0.10ms /src/components/Post/badges/BadgeUser.vue +2ms
  vite:cache [304] /src/components/Post/renderers/RendererTable.vue?vue&type=style&index=0&scoped=abc10f6a&lang.css +2ms
  vite:time 0.10ms /src/components/Post/renderers/RendererTable.vue?vue&type=style&index=0&scoped=abc10f6a&lang.css +2ms
  vite:cache [304] /src/components/paginations/PageCurrentButton.vue +11ms
  vite:time 0.11ms /src/components/paginations/PageCurrentButton.vue +11ms
  vite:cache [304] /src/components/paginations/PageNextButton.vue +2ms
  vite:time 0.09ms /src/components/paginations/PageNextButton.vue +2ms

Validations

@modelair
Copy link

modelair commented Jan 1, 2024

same here

@ahas
Copy link

ahas commented Jan 2, 2024

Same here

@webfanzc
Copy link

webfanzc commented Jan 2, 2024

same here

1 similar comment
@Amoyens1s
Copy link

same here

@JulienMalcouronne
Copy link

Hello, same here

@n0099
Copy link
Author

n0099 commented Jan 5, 2024

guys plz stop spamming "same here" to every subscriber of this issue
if u wanna up-to-date with this issue plz change its Notifications setting:
image

@HackerWand
Copy link

Is there any temporary solution to this problem? After checking the source code, it seems that Object. keys cannot function properly due to circular references
image

@guygubaby
Copy link

guygubaby commented Jan 8, 2024

Here's a temp fixture

function equal(a, b, excludeProps = []) {
  if (a === b) return true;

  if (a && b && typeof a == 'object' && typeof b == 'object') {
    if (a.constructor !== b.constructor) return false;

    var length, i, keys;
    if (Array.isArray(a)) {
      length = a.length;
      if (length != b.length) return false;
      for (i = length; i-- !== 0;)
        if (!equal(a[i], b[i]), excludeProps) return false;
      return true;
    }

    if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;
    if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();
    if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();

    keys = Object.keys(a).filter(key => !excludeProps.includes(key));
    length = keys.length;
    if (length !== Object.keys(b).length) return false;

    for (i = length; i-- !== 0;)
      if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;

    for (i = length; i-- !== 0;) {
      var key = keys[i];

      if (!equal(a[key], b[key]), excludeProps) return false;
    }

    return true;
  }

  // true if both NaN, false otherwise
  return a!==a && b!==b;
}
  1. Click error stack, go to source code of file index.mjs
  2. Paste new function source code from top
  3. Replace deepEqual in line 2341 with the new fn named equal
  4. Restart vite dev server
  5. Make changes to check if error has gone

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.

8 participants