Skip to content

Add Dart Sass to the check-links tool requirements - #52

Merged
alexander-yevsyukov merged 1 commit into
masterfrom
check-links-dart-sass
Oct 30, 2026
Merged

alexander-yevsyukov merged 1 commit into
masterfrom
check-links-dart-sass

Conversation

@alexander-yevsyukov

Copy link
Copy Markdown
Contributor

Part of SpineEventEngine/site-commons#38. Companion to SpineEventEngine/config#824.

Why

The Spine Hugo theme is moving from LibSass to Dart Sass, because Hugo deprecated LibSass in
v0.153.0 and will remove it. Hugo does not bundle Dart Sass. It runs the sass binary it finds
on PATH, so once a site updates to that theme version, its build fails without one.

SpineEventEngine/config#824 (merged) installs Dart Sass in the shared check-links.yml
workflow. The local check-links skill mirrors that workflow, but its tool list still named only
Hugo, Node, npm, and Lychee.

The change

All of it is in skills/check-links/SKILL.md:

  • Tooling: a Dart Sass row (brew install sass/sass/sass). "Four binaries" becomes
    "five". A short paragraph says why Hugo needs sass, and that a site still on LibSass
    doesn't.
  • 2. Preflight binaries: a new check, hugo env | grep -q 'github.com/sass/dart-sass'.
    A miss is a warning, not a Must-fix. A site on a LibSass theme builds fine without sass.
    Telling the two cases apart up front would mean finding the "transpiler" "dartsass" option
    in the theme or in a site's own override of the stylesheet partial. The build already does
    that reliably.
  • 4. Build the site: if the build fails with TOCSS-DART and "You need to install Dart
    Sass", stop with Must-fix: "Install Dart Sass (brew install sass/sass/sass)."
  • Pinned versions: DART_SASS_VERSION in .github/workflows/check-links.yml is the CI
    pin. The value isn't copied here. The skill doesn't install Dart Sass or check its version,
    and uses whichever sass is on $PATH. A Sass version skew can change the CSS, but not the
    links in the HTML that Lychee checks.

Verification

Checked on macOS with Hugo 0.169.0 and Homebrew sass 1.99.0:

  • hugo env | grep -q 'github.com/sass/dart-sass' exits 0 with sass on PATH, and 1
    without it.
  • A scratch site whose template calls css.Sass with "transpiler" "dartsass" builds with
    sass on PATH. Without it, the build fails with TOCSS-DART: failed to transform … You need to install Dart Sass. That's the error text step 4 now matches.
  • One catch: Hugo's resources/_gen cache hid the missing sass until I deleted it. A build
    that passed once can pass again without sass. For link checking this is harmless, since the
    HTML is the same.
  • Markdown only, so no build. git diff --check is clean. No added line is over 100
    characters. The review-docs skill found no Must-fix items. It raised three Should-fix
    items, all fixed before the commit: two sentences that started with a code token, and one
    runt line.

🤖 Generated with Claude Code

The Spine Hugo theme is moving from LibSass to Dart Sass, because Hugo
deprecated LibSass in v0.153.0 and will remove it. Hugo does not bundle
Dart Sass: it runs the `sass` binary it finds on `PATH`, and a site on a
theme that asks for Dart Sass fails to build without one. CI installs it
since SpineEventEngine/config#824; the local skill did not mention it.

- Tooling: add a Dart Sass row (`brew install sass/sass/sass`) and say why
  Hugo needs it; "four binaries" becomes "five".
- Preflight: check `hugo env | grep -q 'github.com/sass/dart-sass'`. A
  miss is a warning, not a stop, because a site still on LibSass builds
  without `sass`.
- Build: a `TOCSS-DART` "You need to install Dart Sass" failure becomes a
  Must-fix with the install hint, so the build decides which case applies.
- Pinned versions: `DART_SASS_VERSION` in `check-links.yml` is the CI pin;
  the skill uses whichever `sass` is on `PATH`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 30, 2026 16:49
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-30T16:51:29.492555Z 9de86b2 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approved

No active review issues block approval of the Dart Sass guidance update.

No open issues 🎉

What changed in this PR

Updates the shared check-links skill for the Spine Hugo theme’s move to Dart Sass, aligning local guidance with the CI workflow while preserving support for LibSass-based sites.

Changes:

  • Adds Dart Sass tooling requirements and clarifies CI pinning versus local version handling.
  • Adds a non-blocking preflight check for Dart Sass availability.
  • Provides installation guidance when a site build fails because Dart Sass is missing.
File Description
skills/​check-links/​SKILL.md Documents Dart Sass tooling, preflight warnings, and missing-Sass build failure handling.

Review effort: Balanced

@alexander-yevsyukov alexander-yevsyukov self-assigned this Oct 30, 2026
@alexander-yevsyukov alexander-yevsyukov moved this to In Review in v2.0 Oct 30, 2026
@alexander-yevsyukov
alexander-yevsyukov merged commit 017c8d3 into master Oct 30, 2026
1 check passed
@alexander-yevsyukov
alexander-yevsyukov deleted the check-links-dart-sass branch October 30, 2026 16:52
@github-project-automation github-project-automation Bot moved this from In Review to ✅ Done in v2.0 Oct 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants