CON-805: Upgrade Ruby to 3.4.7#193
Conversation
anero
left a comment
There was a problem hiding this comment.
👍 looks good, middleman is set up to test against ruby 4.0 on their main branch (https://github.com/middleman/middleman/blob/main/.github/workflows/ci.yml#L16), so it's reasonable to assume they'll add support for v4 on their next release
There was a problem hiding this comment.
These new Github actions don't need any changes for upgrading, right?
There was a problem hiding this comment.
I dont think so. I believe I've done this for other repos successfully
|
@anero middleman 4.6.3 supports ruby 4.0 already, so I added it in this PR. |
# Conflicts: # .ruby-version # Gemfile.lock
|
@anero sorry for the confusion on this PR. I was "attempting" to get to Middleman 4.6.3 Middleman 4.6.3 switches from "ruby sass" to "SassC" for Sprockets CSS rendering, and the SassC processor fails to actually compile the SCSS (raw @import directives and // comments pass through unprocessed to autoprefixer). This seems like it would take more investment to fix than its worth, so lets just keep it at 3.4.7 |
generated from commit 528644b
Addresses CON 805
The upgrade to Ruby 4.0.1 is blocked because Middleman has not yet released official Ruby 4.0 support (it exists only on their main branch in PR #2911 but hasn't been published to RubyGems), and multiple gems in the dependency tree (rouge, borrower, standard library extractions like cgi, logger, ostruct) break under Ruby 4.0.
Upgrading Middleman beyond 4.4.x is separately blocked by an incompatibility between middleman-sprockets 4.1.1 and Sprockets 4.x, causing Sprockets to return raw uncompiled SCSS that then crashes Autoprefixer.
Pinning Sprockets to 3.7.x works around this by falling back to Ruby Sass, but that limits us to the current Middleman 4.4.3 until middleman-sprockets is updated to work correctly with Sprockets 4's asset resolution API.