Fixing an issue with Sprockets and feature tests

A fix we found for issues with the asset pipeline on CircleCI

I’ve just encountered a strange issue which I thought was worth writing about.

We have Dependabot on a lot of our projects and had two PRs raised, one to upgrade Rails from version 6.0.0 to 6.0.1 and active_storage_validations from 0.8.3 to 0.8.4. Locally my test suite was passing but my CircleCI build was failing, with the following error when my feature specs were running:

[SassC::FunctionsHandler] undefined method `[]' for nil:NilClass
[SassC::FunctionsHandler] undefined method `[]' for nil:NilClass
  Viewing one users articles (FAILED - 1)
/home/circleci/repo/vendor/bundle/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/lib/sassc/engine.rb:42: [BUG] Segmentation fault at 0x0000000000000000
ruby 2.6.4p104 (2019-08-28 revision 67798) [x86_64-linux]

This initially caused me to believe that sassc-rails was the issue. After searching for similar failures online and looking through the open PRs on this repo I came up empty handed.

After googling this specific part of the error: sassc-2.2.1/lib/sassc/engine.rb:42: [BUG] Segmentation fault at 0x0000000000000000 I got one result which yielded a fix for me! There appears to be an issue with sprockets 4.0.0. I’ve downgraded my version of sprockets to 3.7.2 which has fixed the issue.

Recent posts View all

Web DevProductivity

Keeping on top of website updates

Learn what website updates are, what they entail, why they are important, and how we can help

Freelancing

Getting the most out of your agency

Here are some tips based on years of working with, for, and as an agency on how to get the most out of any work you do.