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

[email protected] support with circular dependency #64

Open
haripriyaaganesan opened this issue Jan 9, 2021 · 3 comments
Open

[email protected] support with circular dependency #64

haripriyaaganesan opened this issue Jan 9, 2021 · 3 comments

Comments

@haripriyaaganesan
Copy link

haripriyaaganesan commented Jan 9, 2021

I'm migrating my project from [email protected] -> [email protected]. I'm running into circular dependency issue.

Error: Circular dependency detected:
assets/images/card_auth_illustration.png -> assets/images/card_auth_illustration.png

ERROR in Error: Child compilation failed:
Circular dependency detected:
src/index.html -> src/index.html
Error: Circular dependency detected:
src/index.html -> src/index.html

  • index.js:55
    [spa]/[circular-dependency-plugin]/index.js:55:25

  • Hook.js:14 Hook.CALL_DELEGATE [as _call]
    [spa]/[webpack]/[tapable]/lib/Hook.js:14:14

  • Compilation.js:2048 Compilation.seal
    [spa]/[webpack]/lib/Compilation.js:2048:37

  • Compiler.js:1050
    [spa]/[webpack]/lib/Compiler.js:1050:20

  • Compilation.js:1877
    [spa]/[webpack]/lib/Compilation.js:1877:4

  • FlagDependencyExportsPlugin.js:332
    [spa]/[webpack]/lib/FlagDependencyExportsPlugin.js:332:11

  • async.js:2830
    [spa]/[neo-async]/async.js:2830:7

  • async.js:2850 Object.each
    [spa]/[neo-async]/async.js:2850:39

  • FlagDependencyExportsPlugin.js:311
    [spa]/[webpack]/lib/FlagDependencyExportsPlugin.js:311:18

  • async.js:2830
    [spa]/[neo-async]/async.js:2830:7

  • async.js:2850 Object.each
    [spa]/[neo-async]/async.js:2850:39

  • FlagDependencyExportsPlugin.js:46
    [spa]/[webpack]/lib/FlagDependencyExportsPlugin.js:46:16

  • Hook.js:18 Hook.CALL_ASYNC_DELEGATE [as _callAsync]
    [spa]/[webpack]/[tapable]/lib/Hook.js:18:14

  • Compilation.js:1848 Compilation.finish
    [spa]/[webpack]/lib/Compilation.js:1848:28

  • Compiler.js:1045
    [spa]/[webpack]/lib/Compiler.js:1045:19

  • task_queues.js:75 processTicksAndRejections
    internal/process/task_queues.js:75:11

  • task_queues.js:62 runNextTicks
    internal/process/task_queues.js:62:3

  • timers.js:434 processImmediate
    internal/timers.js:434:9

  • child-compiler.js:163
    [spa]/[html-webpack-plugin]/lib/child-compiler.js:163:18

  • Compiler.js:511
    [spa]/[webpack]/lib/Compiler.js:511:11

  • Compiler.js:1059
    [spa]/[webpack]/lib/Compiler.js:1059:17

  • Hook.js:18 Hook.CALL_ASYNC_DELEGATE [as _callAsync]
    [spa]/[webpack]/[tapable]/lib/Hook.js:18:14

  • Compiler.js:1055
    [spa]/[webpack]/lib/Compiler.js:1055:33

  • Compilation.js:2180
    [spa]/[webpack]/lib/Compilation.js:2180:10

  • Hook.js:18 Hook.CALL_ASYNC_DELEGATE [as _callAsync]
    [spa]/[webpack]/[tapable]/lib/Hook.js:18:14

  • Compilation.js:2173
    [spa]/[webpack]/lib/Compilation.js:2173:37

  • Compilation.js:409
    [spa]/[webpack]/lib/Compilation.js:409:10

  • SourceMapDevToolPlugin.js:540
    [spa]/[webpack]/lib/SourceMapDevToolPlugin.js:540:10

  • async.js:2830
    [spa]/[neo-async]/async.js:2830:7

  • async.js:2857 Object.each
    [spa]/[neo-async]/async.js:2857:9

  • SourceMapDevToolPlugin.js:376
    [spa]/[webpack]/lib/SourceMapDevToolPlugin.js:376:17

  • async.js:2830
    [spa]/[neo-async]/async.js:2830:7

  • async.js:2857 Object.each
    [spa]/[neo-async]/async.js:2857:9

  • SourceMapDevToolPlugin.js:204
    [spa]/[webpack]/lib/SourceMapDevToolPlugin.js:204:15

  • Compilation.js:398 fn
    [spa]/[webpack]/lib/Compilation.js:398:9

  • Compilation.js:381 fn
    [spa]/[webpack]/lib/Compilation.js:381:9

  • Hook.js:18 Hook.CALL_ASYNC_DELEGATE [as _callAsync]
    [spa]/[webpack]/[tapable]/lib/Hook.js:18:14

  • Compilation.js:2147 cont
    [spa]/[webpack]/lib/Compilation.js:2147:33

  • Compilation.js:2193
    [spa]/[webpack]/lib/Compilation.js:2193:9

  • async.js:2830
    [spa]/[neo-async]/async.js:2830:7

  • async.js:2850 Object.each
    [spa]/[neo-async]/async.js:2850:39

  • Compilation.js:3258 Compilation.createChunkAssets
    [spa]/[webpack]/lib/Compilation.js:3258:12

webpack.commom.js

const CircularDependencyPlugin = require('circular-dependency-plugin');
plugins: [
new CircularDependencyPlugin({
exclude: /a.js|node_modules/,
include: /src/,
failOnError: true,
})
]

@aackerman
Copy link
Owner

@haripriyaaganesan which version of the plugin were you using? As of 5.2.2 the intent is to never list a self reference circular dependency.

@Doodidan
Copy link

Doodidan commented Apr 6, 2021

I catch this bug on 5.0.2. Upgrading to 5.2.2 helps me, everything is ok now.

@magicznyleszek
Copy link

magicznyleszek commented Apr 11, 2022

I'm upgrading webpack from v4 to v5, and and am currently using 5.72.0 with [email protected] and I get a long list of self referencing files. As a temporary solution I did this:

onDetected({paths, compilation}) {
  if (paths.length === 2 && paths[0] === paths[1]) {
    // SKIP IT
  } else {
    compilation.warnings.push(new Error(paths.join(' -> ')));
  }
},

(I use warnings instead of errors)

Turned out I was running it with 5.2.0 as I forgot to npm install after switching branches. Sorry for trouble!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants