• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

PeculiarVentures / ssh / 38879969790
82%

Build:
DEFAULT BRANCH: main
Ran 16 Oct 2026 09:22AM UTC
Jobs 1
Files 18
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Oct 2026 09:22AM UTC coverage: 81.767% (-0.05%) from 81.818%
38879969790

push

github

web-flow
build!: ship ESM-only output for Node.js ^20.19.0 || >=22.12.0 (#12)

* test: colocate compatibility specs and fixtures under src/

Move the ssh-keygen compatibility specs next to the code they exercise
(src/key/public_key.compat.spec.ts, src/signature.compat.spec.ts,
src/cert/certificate.compat.spec.ts) and the key parsing spec to
src/wire/public_key.parsing.spec.ts. The fixture files and test helpers
move to src/fixtures/ (testFixtures.ts becomes index.ts, compatibility.ts
becomes ssh_keygen.ts), and the fixture loader resolves files from
import.meta.url instead of __dirname.

The tests/ folder is gone; src/fixtures/ is only imported by specs and
is not part of the build.

* build!: ship ESM-only output for Node.js ^20.19.0 || >=22.12.0

Switch to the pvtsutils build and tooling setup:

- tsdown: pvtsutils's config with entry src/index.ts and the existing
  SPDX copyright banner. ESM only, unbundled, attw profile esm-only. The
  syntax target comes from engines (node20.19.0).
- package.json: "type": "module", engines ^20.19.0 || >=22.12.0,
  regenerated exports/main/module/types, and sideEffects narrowed from
  true to ["./build/registry.js"], the module that registers the
  ed25519/rsa/ecdsa bindings at import time.
- tsconfig: pvtsutils's plus lib DOM (WebCrypto types). No
  esModuleInterop/allowSyntheticDefaultImports, no vitest globals.
  Type-only imports where verbatimModuleSyntax requires them.
- .oxlintrc.json, .oxfmtrc.json, vitest.config.ts, .vscode/settings.json
  and .gitignore copied from pvtsutils. Config files are .ts.
- Dependencies: @peculiar/utils ^4.0.0 (no API changes needed), tsdown,
  oxlint, oxfmt, vitest and @vitest/coverage-v8 to latest, @types/node
  26 (only the specs use Node.js APIs). TypeScript stays ^6.

BREAKING CHANGE: @peculiar/ssh is ESM-only and requires Node.js
^20.19.0 || >=22.12.0. The CommonJS build is removed.

* docs: document v3 breaking changes and rewrite CONTRIBUTING.md

Add "Breaking Changes In v3" to t... (continued)

342 of 499 branches covered (68.54%)

Branch coverage included in aggregate %.

1102 of 1267 relevant lines covered (86.98%)

63.18 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
81.59
-0.84% src/algorithms/ecdsa.ts
Jobs
ID Job ID Ran Files Coverage
1 38879969790.1 16 Oct 2026 09:22AM UTC 18
81.77
GitHub Action Run
Source Files on build 38879969790
  • Tree
  • List 18
  • Changed 4
  • Source Changed 3
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #38879969790
  • ea1bf20f on github
  • Prev Build on main (#38878688099)
  • Next Build on main (#38880449200)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc