web-infra-dev / rspack

The fast Rust-based web bundler with webpack-compatible API 🦀️
https://rspack.dev
MIT License
9.38k stars 544 forks source link

`optimization.splitChunks.cacheGroups`'s behavior has regression from `0.3.7`, it doesn't work for grouping dynamic imports #4862

Closed 07akioni closed 8 months ago

07akioni commented 10 months ago

System Info

Doesn't matter

Details

With these:

  optimization: {
    splitChunks: {
      cacheGroups: {
        prismJs0: {
          test: new RegExp(
            `node_modules/prismjs/components/prism-(${highlightConfig.commonLangs.join(
              "|"
            )}).min`
          ),
          priority: 1,
        },
        prismJs1: {
          test: /node_modules\/prismjs\/components\/prism-(a|b|c|d)/,
        },
        prismJs2: {
          test: /node_modules\/prismjs\/components\/prism-(e|f|g|h|i|j|k|l)/,
        },
        prismJs3: {
          test: /node_modules\/prismjs\/components\/prism-(m|n|o|p|q|r)/,
        },
        prismJs4: {
          test: /node_modules\/prismjs\/components\/prism-(s|t|u|v|w|x|y|z)/,
        },
      },
    },
  },

I got

0.3.5 output (expected)

main.js
prismJs0~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-asm6502_min_j~633405.js
prismJs1~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-abap_min_js~n~4e5e57.js
prismJs2~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ebnf_min_js~n~328e32.js
prismJs3~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-magma_min_js~~e2c185.js
prismJs4~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sas_min_js~no~6011cb.js

0.3.14 output (unexpected)

main.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-abap_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-abnf_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-actionscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ada_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-agda_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-al_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-antlr4_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-apacheconf_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-apex_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-apl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-applescript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-aql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-arduino_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-arff_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-armasm_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-arturo_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-asciidoc_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-asm6502_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-asmatmel_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-aspnet_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-autohotkey_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-autoit_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-avisynth_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-avro-idl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-awk_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bash_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-basic_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-batch_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bbcode_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bbj_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bicep_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-birb_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bison_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bnf_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bqn_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-brainfuck_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-brightscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bro_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-bsl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-c_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cfscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-chaiscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cil_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cilkc_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cilkcpp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-clike_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-clojure_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cmake_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cobol_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-coffeescript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-concurnas_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cooklang_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-coq_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-core_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cpp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-crystal_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-csharp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cshtml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-csp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-css-extras_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-css_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-csv_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cue_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-cypher_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-d_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-dart_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-dataweave_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-dax_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-dhall_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-diff_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-django_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-dns-zone-file_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-docker_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-dot_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ebnf_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-editorconfig_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-eiffel_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ejs_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-elixir_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-elm_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-erb_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-erlang_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-etlua_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-excel-formula_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-false_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-firestore-security-rul~36c51e.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-flow_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-fortran_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-fsharp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ftl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gap_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gcode_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gdscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gedcom_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gettext_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gherkin_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-git_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-glsl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gn_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-go-module_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-go_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-gradle_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-graphql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-groovy_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-haml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-handlebars_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-haskell_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-haxe_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-hcl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-hlsl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-hoon_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-hpkp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-hsts_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-http_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ichigojam_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-icon_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-icu-message-format_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-idris_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-iecst_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ignore_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-inform7_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ini_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-io_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-j_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-java_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-javadoc_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-javadoclike_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-javascript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-javastacktrace_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jexl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jolie_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jq_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-js-extras_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-js-templates_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jsdoc_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-json5_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-json_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jsonp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jsstacktrace_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-jsx_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-julia_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-keepalived_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-keyman_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-kotlin_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-kumir_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-kusto_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-latex_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-latte_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-less_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-lilypond_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-linker-script_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-liquid_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-lisp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-livescript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-llvm_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-log_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-lolcode_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-lua_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-magma_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-makefile_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-markdown_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-markup-templating_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-markup_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-mata_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-matlab_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-maxscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-mel_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-mermaid_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-metafont_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-mizar_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-mongodb_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-monkey_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-moonscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-n1ql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-n4js_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nand2tetris-hdl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-naniscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nasm_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-neon_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nevod_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nginx_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nim_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nix_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-nsis_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-objectivec_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ocaml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-odin_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-opencl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-openqasm_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-oz_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-parigp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-parser_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-pascal_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-pascaligo_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-pcaxis_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-peoplecode_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-perl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-php-extras_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-php_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-phpdoc_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-plant-uml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-plsql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-powerquery_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-powershell_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-processing_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-prolog_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-promql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-properties_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-protobuf_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-psl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-pug_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-puppet_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-pure_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-purebasic_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-purescript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-python_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-q_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-qml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-qore_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-qsharp_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-r_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-racket_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-reason_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-regex_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-rego_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-renpy_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-rescript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-rest_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-rip_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-roboconf_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-robotframework_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-ruby_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-rust_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sas_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sass_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-scala_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-scheme_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-scss_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-shell-session_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-smali_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-smalltalk_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-smarty_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-solidity_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-solution-file_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-soy_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sparql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-splunk-spl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sql_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-squirrel_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-stan_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-stata_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-stylus_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-supercollider_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-swift_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-systemd_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-t4-cs_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-t4-templating_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-t4-vb_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-tap_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-tcl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-textile_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-toml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-tremor_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-tsx_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-tt2_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-turtle_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-twig_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-typescript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-typoscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-unrealscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-uorazor_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-uri_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-v_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-vala_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-vbnet_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-velocity_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-verilog_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-vhdl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-vim_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-visual-basic_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-warpscript_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-wasm_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-web-idl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-wgsl_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-wiki_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-wolfram_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-wren_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-xeora_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-xml-doc_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-xojo_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-xquery_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-yaml_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-yang_min_js.js
node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-zig_min_js.js
prismJs2~vendors~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-facto~1597c6.js
prismJs4~vendors~node_modules_pnpm_prismjs_1_29_0_node_modules_prismjs_components_prism-sqf_min_js.js

Reproduce link

https://github.com/07akioni/rspack-split-chunk-issue-reprod

Reproduce Steps

Follow reproduce link, run pnpm i and pnpm build in 0_3_5 and 0_3_14 folder.

07akioni commented 10 months ago

I've tested it. The regression starts from in 0.3.7. Maybe it's caused by

hOb4hnBvX9

JSerFeng commented 10 months ago

If the above is your expectation, means you wish modules that match your cache groups's test to be merged into the same chunk right? Then you need to set the name explictly to that cache group. You can try it with webpack, should be the same with current behaviour

stale[bot] commented 8 months ago

This issue has been automatically marked as stale because it has not had recent activity. If this issue is still affecting you, please leave any comment (for example, "bump"). We are sorry that we haven't been able to prioritize it yet. If you have any new additional information, please include it with your comment!