Skip to content

ci: run the checks on Windows beside Linux - #94

Merged
Upd4ting merged 2 commits into
mainfrom
ci/windows-ci
Nov 13, 2026
Merged

Upd4ting merged 2 commits into
mainfrom
ci/windows-ci

Conversation

@Upd4ting

@Upd4ting Upd4ting commented Nov 13, 2026 •

Copy link
Copy Markdown
Member

Why

The goal is to know the whole AntelopeJS stack works on Windows. This PR runs interface-database's CI on Windows beside Linux and fixes the one Windows break it has. Part of ANT-2205 (parent ANT-1664).

What

  • ci.yml passes windows: true to ci-node.yml@v1, so the node and test jobs also run on windows-latest, in parallel with Linux. The repo had no hand-written Windows job to replace.
  • @antelopejs/tooling-configs goes from 0.5.5 to 0.5.8, the release with Windows support for the pack's checks. antelopejs-sync updated its two managed files (README.md, .agents/skills/verify-interface/SKILL.md).
  • .gitattributes sets * text=auto eol=lf. With core.autocrlf=true, the Git for Windows default, .agents/setup was checked out with CRLF and bash refused it. Renormalizing changed no tracked file.

The tests need no service setup on Windows. ajs module test starts an in-memory MongoDB replica set itself.

No Windows-only skip was added. No lint rule or guardrails ceiling changed.

Proof

Windows CI before and after

Before, the first run with windows: true at 916f753: https://github.com/AntelopeJS/interface-database/actions/runs/43430888432

After, at 502344c: https://github.com/AntelopeJS/interface-database/actions/runs/43431385807

Linux runs the same 227 tests. The 2 skipped checks on Windows are test, which runs in its own job, and sync:check, which ci-node.yml skips on Windows.

The first Windows run was already green, because ci-node.yml checks out with core.autocrlf false. That hides the CRLF break. The break shows up for a developer on a default Git for Windows install.

CRLF checkout of .agents/setup

The repro clones with core.autocrlf=true and runs bash -n .agents/setup.

Before, on origin/main:

$ git clone -c core.autocrlf=true ... && file .agents/setup && bash -n .agents/setup
.agents/setup: Bourne-Again shell script, ASCII text executable, with CRLF line terminators
.agents/setup: line 27: syntax error near unexpected token `$'in\r''
.agents/setup: line 27: `case "$manager" in'
bash -n exit=2

After, on this branch:

$ git clone -c core.autocrlf=true ... -b ci/windows-ci && file .agents/setup && bash -n .agents/setup
.agents/setup: Bourne-Again shell script, ASCII text executable
bash -n exit=0

pnpm run checks passes locally: Checks: 11 passed, 0 failed.

flowchart LR
  PR[pull_request] --> CI[ci-node.yml@v1 windows: true]
  CI --> L[ubuntu-latest: Node, Test, checks, docs]
  CI --> W[windows-latest: Node, Test]
Loading

Bump @antelopejs/tooling-configs to 0.5.8, which ships Windows support for the pack's checks, and sync its managed files.
With core.autocrlf=true, the default of Git for Windows, .agents/setup was checked out with CRLF and bash refused it.
@Upd4ting
Upd4ting marked this pull request as ready for review November 13, 2026 13:12
@Upd4ting
Upd4ting merged commit ec26c78 into main Nov 13, 2026
10 checks passed
@Upd4ting
Upd4ting deleted the ci/windows-ci branch November 13, 2026 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant