Repository navigation
Releases: nrynss/rustydocs
Release list
v0.7.1
v0.7.0
This release adds Docusaurus support, JSON schema 2.0, read-only reports, batch Git date lookups, multi-architecture Alpine/Git containers, and Go 1.27.1 builds.
Source builds now require Go 1.27.1. JSON consumers must migrate to schema 2.0; see migration details.
Container: ghcr.io/nrynss/rustydocs:v0.7.0 (Linux amd64/arm64).
Added
-
Multi-architecture Alpine container image with Git and certificates (#38).
GoReleaser publishes Linux amd64/arm64 images to GHCR with exact release tags
andlatestfor stable releases. Images run as a non-root user; CI validates
mounted-repository scans, report permissions and full/shallow history behavior
on both architectures. Snapshot builds create local images without publishing. -
Default-enabled
--git-last-modifiedbatch accelerator for file-level and reusable
Git dates (#46), with graceful fallback to cachedgit loglookups.
Disable with--git-last-modified=false; section-level blame is unchanged. -
Docusaurus profile (#13):
.md/.mdxATX content, detected from
docusaurus.config.jsor.tsor selected with--profile docusaurus.
Static relative Markdown partial imports rendered as components contribute
freshness and provenance to their consuming sections, including rendered
preamble content. Fenced and inline-code examples, MDX comments and
code/package imports are skipped; missing/historyless partials remain unknown.
Uses the embedded profile
registry and shared import map without new dependencies. Aliases including
@site/@themeand JavaScript config execution are outside the supported
subset; see Docusaurus profile. -
JSON schema
2.0exports all analyzed sections, portable repository/file/section
identities, normalized content fingerprints, own/effective Git evidence,
section dependency relationships and tied freshness sources. Repository context,
nullable unknown dates/ages, effective configuration, structured diagnostics and
coverage counters support external consumers. Seedocs/json-v2.mdfor the
breaking schema migration and complete example artifact (#80).
Changed
-
Require Go 1.27.1 for source builds; CI and release builds use the version in
go.mod. Analyzer worker pools usesync.WaitGroup.Gofor goroutine tracking. -
Release publication requires successful CI on the exact tagged commit from
main, waits for in-progress CI, and reuses that result without repeating
tests, lint or container scans. -
Skip expensive CI jobs for documentation-only changes while retaining the
required check statuses needed to merge pull requests. Embedded assets and
test fixtures still trigger the build/test matrix, lint and release snapshots. -
Adopt GoReleaser for tagged releases (#31): build Linux, macOS, and Windows
for amd64 and arm64 with version/commit/date metadata, ship.tar.gzarchives
(.zipon Windows) and SHA256checksums.txt, and preserve GitHub-generated
release notes. CI validates snapshot packaging;make releasenow builds the
same snapshot archives without publishing, replacing the platform recipes. -
HTML is now read-only: review buttons, status tabs, persisted browser state and
page-age/date displays are removed. HTML and Markdown show snippet provenance
beside consuming sections, sections made fresh by snippets, unknown/partial
history details and scan diagnostics. All report ages use the analysis timestamp. -
Refactored built-in profiles into embedded, validated JSON definitions and
identity-free parser capabilities; separated reusable resolution from Markdown
chunking. Existing profile behavior and user configuration are unchanged.
Fixed
-
MDX comment scanning ignores
{/*inside Markdown code spans so examples
cannot hide later imports. Fenced examples and original source offsets are
preserved. -
Authorize reusable supporting files within the resolver's physical root before
template reads, Git history queries and fingerprints. Hugo traversal and
external symlink targets (including discovered theme checkouts) are rejected;
explicit legacy directories authorize only legacy lookup. Reports retain
contextual diagnostics and partial evidence for rejected or missing support. -
Heading detection ignores fenced code, and MDX import declarations no longer
manufacture preamble sections; frontmatter and rendered preamble content retain
their existing behavior. HTML sorting now uses each table's own columns, explicit
numeric/date/text types and consistent unknown-value ordering (#80). -
Git lookup memoization now keeps the repository context of the caller's
directory. A file symlink into another repository no longer shares the
target's cached history (or error); whole-checkout directory aliases still
share entries. Analysis assumes the checkout stays stable during a run. -
Starlight:
{% partial %}tags are now captured on.mdocpages only
(#75). Markdoc tags render in.mdocfiles, never in.md(literal text)
or.mdx(an MDX build error), so an unfenced tag on such a page — stray,
migrated, or illustrative — used to be captured anyway and could fold the
target's recent commit date into a section the tag never rendered, or count
a missing target as an unresolved include. Reusable patterns now carry an
optional extension constraint the parser applies per analyzed file. -
Starlight: a partial written with an import alias — an
@-prefixed
specifier such as{% partial file="@partials/footer.mdoc" /%}, or a bare
extensionless word (the key ofmarkdoc.config'spartialsmap) — that
does not resolve as a path is now classified as deliberately out of scope
instead of a broken include (#74). Astro resolves such attributes through
Vite module resolution at build time, never as the literal path; a broken
alias fails the build upstream regardless. Relative partial paths —
including the./-less form upstream's own fixture uses — are unaffected
and still count as unresolved when missing. Thefile={import('…')}
spelling the issue hypothesised turned out not to exist upstream and is
deliberately not captured: it would fold dates for syntax Astro never
renders.
What's Changed
- Starlight: gate partial detection to .mdoc pages and classify alias partials as out of scope (#74, #75) by @nrynss in #77
- Make documentation profiles declarative with embedded JSON by @nrynss in #78
- Preserve repository context in cached file history by @nrynss in #79
- Export complete JSON v2 snapshots and simplify read-only reports by @nrynss in #81
- Add Docusaurus profile with Markdown partial freshness tracking by @nrynss in #82
- Add opt-in git last-modified accelerator by @nrynss in #83
- Adopt GoReleaser for release automation by @nrynss in #84
- Publish Alpine Git containers and gate releases on green CI by @nrynss in #85
- Prepare v0.7.0 with containers and Go 1.27 by @nrynss in #86
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
Full Changelog: v0.5.0...v0.6.0
v0.5.0
What's Changed
- Bump golangci/golangci-lint-action from 8.0.0 to 9.3.0 by @dependabot[bot] in #60
- Bump actions/setup-go from 6.4.0 to 7.0.0 by @dependabot[bot] in #62
- Bump softprops/action-gh-release from 3.0.1 to 3.0.2 by @dependabot[bot] in #61
- Bump softprops/action-gh-release from 3.0.2 to 3.0.3 by @dependabot[bot] in #64
- Bump actions/checkout from 7.0.0 to 7.0.1 by @dependabot[bot] in #63
- Documentation-tool profiles: plain-markdown default, Mintlify, and build-info versioning (#39, #11, #7) by @nrynss in #66
- Memoize per-file git lookups for one run (#65) by @nrynss in #67
- Resolve MDX imports and stop scanning non-documentation (#68, #69) by @nrynss in #71
- Prepare 0.5.0 with GitBook and complete reusable reports by @nrynss in #72
Full Changelog: v0.4.0...v0.5.0
v0.4.0
v0.3.0
What's Changed
- Add community health files + tracked CLAUDE.md; housekeeping by @nrynss in #40
- Fix cross-platform report paths and CRLF titles; add CI matrix by @nrynss in #47
- Bump actions/checkout from 4 to 7 by @dependabot[bot] in #42
- Bump actions/setup-go from 5 to 6 by @dependabot[bot] in #43
- Bump actions/download-artifact from 4.1.3 to 8.0.1 by @dependabot[bot] in #41
- Bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #44
- Bump softprops/action-gh-release from 1 to 3 by @dependabot[bot] in #45
- Pin GitHub Actions to commit SHAs by @nrynss in #48
- Parse real git blame porcelain headers; raise scanner buffer by @nrynss in #49
- Restrict analysis to documentation extensions; fix exclude over-matching by @nrynss in #50
- Remove dead code; fix git-root error caching; harden report cells by @nrynss in #51
- Prepare 0.3.0 release: changelog + CLAUDE.md refresh by @nrynss in #52
New Contributors
- @nrynss made their first contribution in #40
- @dependabot[bot] made their first contribution in #42
Full Changelog: v0.2.0...v0.3.0
v0.2.0
v0.1.0
Full Changelog: https://github.com/nrynss/rustydocs/commits/v0.1.0