tevio / jekyll-webpack

Once Jekyll has built your sites HTML, run webpack against the compiled _site
MIT License
5 stars 3 forks source link

fs.Stats constructor is deprecated #10

Open daeh opened 1 month ago

daeh commented 1 month ago

I've started getting this error message. I'm not sure if it's an issue with jekyll-webpack, a dependency, my build pipeline, etc., but thought I'd post it since it just started happening and I've had trouble tracking the exact issue down.

jekyll-webpack v0.2.7 jekyll v4.3.3 ruby v3.3.1 node v22.1.0

Thanks!

bundler: failed to load command: jekyll (~/.rbenv/versions/3.3.1/bin/jekyll)
~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-webpack-0.2.7/lib/jekyll/webpack.rb:47:in `webpack_exec': (node:33392) [DEP0180] DeprecationWarning: fs.Stats constructor is deprecated. (Jekyll::Webpack::Error)
(Use `node --trace-deprecation ...` to show where the warning was created)

    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-webpack-0.2.7/lib/jekyll/webpack.rb:33:in `build'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-webpack-0.2.7/lib/jekyll/webpack.rb:85:in `block in <top (required)>'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/hooks.rb:103:in `block in trigger'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/hooks.rb:102:in `each'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/hooks.rb:102:in `trigger'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/site.rb:234:in `write'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/site.rb:82:in `process'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/command.rb:28:in `process_site'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/commands/build.rb:65:in `build'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/commands/build.rb:36:in `process'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/command.rb:91:in `each'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/lib/jekyll/commands/serve.rb:86:in `block (2 levels) in init_with_program'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/jekyll-4.3.3/exe/jekyll:15:in `<top (required)>'
    from ~/.rbenv/versions/3.3.1/bin/jekyll:25:in `load'
    from ~/.rbenv/versions/3.3.1/bin/jekyll:25:in `<top (required)>'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/cli/exec.rb:58:in `load'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/cli/exec.rb:58:in `kernel_load'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/cli/exec.rb:23:in `run'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/cli.rb:451:in `exec'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/vendor/thor/lib/thor/command.rb:28:in `run'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/vendor/thor/lib/thor.rb:527:in `dispatch'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/cli.rb:34:in `dispatch'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/vendor/thor/lib/thor/base.rb:584:in `start'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/cli.rb:28:in `start'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/bundler-2.5.9/exe/bundle:28:in `block in <top (required)>'
    from ~/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundler/friendly_errors.rb:117:in `with_friendly_errors'
    from ~/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/bundler-2.5.9/exe/bundle:20:in `<top (required)>'
    from ~/.rbenv/versions/3.3.1/bin/bundle:25:in `load'
    from ~/.rbenv/versions/3.3.1/bin/bundle:25:in `<main>'
daeh commented 1 month ago

fyi, the jekyll build works fine if I remove the jekyll/webpack plugin, and fails if the plugin is included (as the last plugin in the _config.yml list) even when the webpack.config.js is minimal:

export default {
  entry: ['./src/index.js'],
  output: {
    filename: 'main.js',
  }
}

Rolling back the node version to 20 lets the build complete.