Skip to content

Get theme updates - #96

Merged
alexander-yevsyukov merged 4 commits into
masterfrom
claude/get-theme-updates-b8c1b5
Oct 30, 2026
Merged

alexander-yevsyukov merged 4 commits into
masterfrom
claude/get-theme-updates-b8c1b5

Conversation

@alexander-yevsyukov

@alexander-yevsyukov alexander-yevsyukov commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

This PR updates site-commons in docs/_preview from b79100d to 9216e48, the latest master. With it, the documentation preview moves from LibSass to Dart Sass.

The update brings in:

As the README asks, go.sum keeps only the entries of the new site-commons version. No other module in go.mod changed. docs/go.mod doesn't pin site-commons.

Part of SpineEventEngine/site-commons#38.

config and .agents/shared

The second commit runs ./config/pull. It moves config from 94a9e08 to f5a8d40 and .agents/shared from fefe0ed to 017c8d3, the tips of their master branches. The .agents/shared pin is force-added because .gitmodules sets ignore = all for it.

The pull brings in config's current templates:

  • .claude/settings.json allows git commit and git push, and asks before a force push.
  • AGENTS.md and init-submodules: a fresh checkout now floats the shared submodules to their branch tips instead of their pinned commits.
  • check-links.yml gets the comments of config's Dart Sass steps.

Local edits stay:

  • settings.json, AGENTS.md, and init-submodules matched config's old templates exactly, so they had no local edits.
  • The local edits to check-links.yml are the Hugo v0.169.0 bump (Move to Hugo v0.169.0 and the latest site-commons #94) and the Dart Sass steps (Prepare for Dart Sass #95). Config's template already has both. A three-way merge shows that config's version only adds comments to them.
  • The other distributed files, such as lychee.toml, .gitignore, CLAUDE.md, and the other workflows, came out unchanged.

Link check

check-links has checked almost nothing until now. The old theme inlined jQuery into the <head> of every page, and Lychee extracted no links past it. From the 95 preview pages it found 7 unique links, all of them in the <head>. With jQuery in its own file, Lychee reads whole pages and finds 794 unique links, 13 of them broken. The third commit fixes the check:

  • The Stack Overflow link in docs/guides/validation.md now uses the answer's /questions/ URL, which lychee.toml excludes because Stack Overflow answers bots with 403.

  • The other 12 links are in the docs of SpineEventEngine/validation, and only that repository can fix them. A new .lycheeignore lists them. ./config/pull doesn't overwrite it, unlike lychee.toml. Fix broken links in the documentation validation#340 tracks fixing the links, and Remove the validation links from .lycheeignore once they are fixed #97 tracks removing the patterns afterwards.

    These are the 12 links:

    • .agents/running-builds.md and .agents/documentation-guidelines.md in validation, which moved into the shared guidelines submodule.
    • EMBEDDING.md and bin/ in embed-code-go, which no longer exist.
    • plugins.gradle.org/plugin/io.spine.validation, which returns 400.
    • Relative links to 06-developers-guide/, developer/, and typical_custom_option.jpg, which resolve outside the module's pages.

Locally, with Lychee 0.24.2 against the preview on port 1313, as CI runs it: 13 errors before the fix, 0 after.

Build warnings

hugo -e development in docs/_preview, with Hugo v0.169.0 and Dart Sass 1.99.0:

Build Warnings
Before (master) 1: css.Sass: libsass was deprecated in Hugo v0.153.0 …
After 0, also with --ignoreCache

CSS comparison

I parsed public/main.css from both builds into rules and compared them: 4,841 rules before, 4,843 after. Shared selectors keep their order. The differences are below.

Expected:

  • Dart Sass formatting and precision.
    • Fractional RGB channels, such as rgb(251.5, 252, 252.5) for #fcfcfd. Rounded, they differ by at most 1 per channel, mostly in Bootstrap's .table-* variables.
    • Literal Unicode characters instead of \f101-style escapes.
    • Double quotes instead of single ones, and unquoted attribute selectors.
    • No spaces around * in calc().
    • Shorter color forms: navy, hsla(0,0%,100%,.5), rgba(0,0,0,0) for transparent.
  • calc() folded to a value: .ratio-4x3, .ratio-16x9, .ratio-21x9 (75%, 56.25%, 42.857…%), and .toc-col (calc(50vw - 380px)).
  • The code-tab indicator gets border-radius: 1px. LibSass emitted the invalid calc($indicator-line-height/2), which browsers drop.
  • No more .h1–.h6 and .small variants of theme selectors. 46 selectors are gone, along with the theme's declarations on bare .h1–.h6 and .small. Bootstrap's own rules for these classes stay. No preview page uses these classes.

Not on the expected list, but intended:

  • Roboto Mono path fix. The medium-weight Roboto Mono @font-face now takes its EOT src from fonts/robotomono/. The old path, fonts/roboto/roboto-mono-v5-latin-500.eot, doesn't exist. The fix is site-commons ae0e4fa, part of Add "Download PDF" button for the architecture diagram #41. Only IE loads EOT, so modern browsers see no change.

The rest of the build output differs only in:

Browser check

I checked three pages:

  • the home page;
  • an article, /docs/introduction/naming-conventions/;
  • a page with code tabs, /docs/validation/user/01-getting-started/generated-code/.

On each page, I loaded the old main.css into the same DOM and compared the computed styles of every element, ::before, and ::after with the new CSS. I did this in both code themes, at 1024 px and 375 px wide. The only difference is the code-tab indicator's border-radius, from 0px to 1px. jQuery 3.6.0 loads from /js/jquery.js, and both the code tabs and the code theme toggle work.

🤖 Generated with Claude Code

Bring in `site-commons` at `9216e48`. The theme now compiles its styles
with Dart Sass (SpineEventEngine/site-commons#40) and uses `@use` and
`@forward` instead of `@import` (SpineEventEngine/site-commons#41).
It also serves jQuery as a file instead of inlining it into every page
(SpineEventEngine/site-commons#39).

As the README asks, `go.sum` keeps only the entries of the new
`site-commons` version.

Part of SpineEventEngine/site-commons#38.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 30, 2026 17:43
@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-30T17:44:37.622792Z 1c60f66 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

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 are reported for the documentation preview’s site-commons dependency update.

No open issues 🎉

What changed in this PR

Updates the documentation preview’s site-commons dependency from b79100d to 9216e48, bringing in Dart Sass support, Sass module syntax, and separately served jQuery.

Changes:

  • Advances the theme dependency without changing other module requirements.
  • Replaces obsolete site-commons checksums with entries for the new version.
File Description
docs/​_preview/​go.sum Updates theme checksums and removes older theme entries.
docs/​_preview/​go.mod Pins the preview to the updated site-commons revision.

Review effort: Balanced

Run `./config/pull`, which moves `config` to `f5a8d40` and `.agents/shared`
to `017c8d3`, the tips of their `master` branches. The `.agents/shared` pin
is force-added, because `.gitmodules` sets `ignore = all` for it.

The pull brings in config's current templates:

- `.claude/settings.json` allows `git commit` and `git push`, and asks before
  a force push.
- `AGENTS.md` and `init-submodules`: a fresh checkout now floats the shared
  submodules to their branch tips instead of their pinned commits.
- `check-links.yml` gets the comments of config's Dart Sass steps.

Local edits stay. The local edits to `check-links.yml`, the Hugo v0.169.0
bump and the Dart Sass steps, are already in config's template. The other
updated files had no local edits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The old theme inlined jQuery into the `<head>` of every page, and Lychee
extracted no links past it: 7 unique links from the 95 preview pages.
With jQuery served as a file (SpineEventEngine/site-commons#39), Lychee
reads whole pages and finds 794 unique links. Thirteen of them are broken.

- The Stack Overflow answer link redirects to a `/questions/` URL, which
  answers bots with 403. `lychee.toml` excludes such URLs, so link to the
  answer by its `/questions/` URL.
- The other twelve are in the docs of `SpineEventEngine/validation`, which
  only that repository can fix. A new `.lycheeignore` lists them. Lychee
  reads it from the repository root, and `./config/pull` does not
  overwrite it, unlike `lychee.toml`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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