Jekyll serve fails with --trace mentioning execjs

Jekyll serve now fails but the trace message does not seem helpful to me. These are the steps I have taken so far and the error messages as well as the crucial environment versions. Mac OS X was recently updated so it must have something to do with that, but I see that I am still running Ruby 2.6.1. I did some searching here and on SO without much related to my actual trace error.

MacOSX Big Sur 11.4
Updated XTools had missing extensions, so I updated it.

$ which ruby
/Users/jhogue/.rvm/rubies/ruby-2.6.1/bin/ruby
$ ruby -v
ruby 2.6.1p33 (2019-01-30 revision 66950) [x86_64-darwin19]

RVM does not have 3.0 installed as an option — is it required for Jekyll 4.2 (which I am running as well)? Bundle has been updated twice. Gemfile.lock has been deleted and recreated.

$ jekyll serve --trace produces:

Traceback (most recent call last):
        43: from /Users/jhogue/.rvm/gems/ruby-2.6.1/bin/ruby_executable_hooks:15:in `<main>'
        42: from /Users/jhogue/.rvm/gems/ruby-2.6.1/bin/ruby_executable_hooks:15:in `eval'
        41: from /Users/jhogue/.rvm/gems/ruby-2.6.1/bin/jekyll:23:in `<main>'
        40: from /Users/jhogue/.rvm/gems/ruby-2.6.1/bin/jekyll:23:in `load'
        39: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/exe/jekyll:15:in `<top (required)>'
        38: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
        37: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
        36: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
        35: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
        34: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
        33: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/commands/serve.rb:86:in `block (2 levels) in init_with_program'
        32: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
        31: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/command.rb:91:in `each'
        30: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
        29: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/commands/build.rb:36:in `process'
        28: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/commands/build.rb:65:in `build'
        27: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/command.rb:28:in `process_site'
        26: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/site.rb:82:in `process'
        25: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/site.rb:234:in `write'
        24: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/hooks.rb:102:in `trigger'
        23: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/hooks.rb:102:in `each'
        22: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-4.2.0/lib/jekyll/hooks.rb:103:in `block in trigger'
        21: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-autoprefixer-1.0.2/lib/jekyll-autoprefixer.rb:24:in `block in <top (required)>'
        20: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:20:in `process'
        19: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:20:in `each'
        18: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:23:in `block in process'
        17: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:23:in `open'
        16: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:27:in `block (2 levels) in process'
        15: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/autoprefixer-rails-9.8.6.5/lib/autoprefixer-rails.rb:16:in `process'
        14: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/autoprefixer-rails-9.8.6.5/lib/autoprefixer-rails/processor.rb:53:in `process'
        13: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/autoprefixer-rails-9.8.6.5/lib/autoprefixer-rails/processor.rb:170:in `runtime'
        12: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/execjs-2.8.1/lib/execjs/runtime.rb:64:in `eval'
        11: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/execjs-2.8.1/lib/execjs/external_runtime.rb:21:in `eval'
        10: from /Users/jhogue/.rvm/gems/ruby-2.6.1/gems/execjs-2.8.1/lib/execjs/external_runtime.rb:39:in `exec'
         9: from Function.Module._load (internal/modules/cjs/loader.js:529:3)
         8: from tryModuleLoad (internal/modules/cjs/loader.js:537:12)
         7: from Module.load (internal/modules/cjs/loader.js:598:32)
         6: from Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
         5: from Module._compile (internal/modules/cjs/loader.js:688:30)
         4: from Object.<anonymous> ((execjs):1:120)
         3: from (execjs):1:102
         2: from (execjs):19:14
         1: from (execjs):1:275
eval (eval at <anonymous> ((execjs):1:275), <anonymous>:1:10): TypeError: Cannot read property 'version' of undefined (ExecJS::ProgramError)

I added execjs to my Gemfile (which was not formerly present) and ran bundle update. Output confirms I am Using execjs 2.8.1. Still fails quietly when running jekyll serve without a trace command:

$ jekyll serve
Configuration file: /Users/jhogue/github/artinruins-com/_config.yml
            Source: /Users/jhogue/github/artinruins-com
       Destination: /Users/jhogue/github/artinruins-com/_stage
 Incremental build: disabled. Enable with --incremental
      Generating... 
                    ------------------------------------------------
      Jekyll 4.2.0   Please append `--trace` to the `serve` command 
                     for any additional information or backtrace. 
                    ------------------------------------------------
$

Now I’m stuck and do not know what to try next.

check this thread for similar errors and some ideas, looks like it might be due to autoprefixer. Try removing that and see if it works.

Ok, nice find! According to that thread the Ruby version or the Execjs version needs to be changed, and pinning execjs to version 2.7.0 fixed the build issue. Thanks so much