Releases: adz/FsLiveDocs
Releases · adz/FsLiveDocs
Release list
v0.6.2
FsLiveDocs 0.6.2
Command line
- Add
livedocs tool-version, which prints the installed FsLiveDocs tool version without overloading--version, the option that selects a documentation release version.
Documentation checks
- Reuse an already-loaded assembly during scenario discovery even when a release build changes its assembly version. This prevents documentation checks from failing after versioned builds of projects that share dependencies.
Site
v0.6.1
FsLiveDocs 0.6.1
Documentation rendering
- Fix Markdown immediately following a rendered F# code fence. It now remains Markdown, including inline code, links, lists, and cross-references, instead of being rendered as literal source text.
Verification
- Add regression coverage for a semantic F# fence followed by a Markdown cross-reference.
Site
v0.6.0
FsLiveDocs 0.6.0
Documentation sets
- Add multi-documentation-set sites through
docsSets, with contextual routes, isolated sidebars and API surfaces, site-wide search, and globally validated cross-set links. - Add per-set F# preludes and stable set identity throughout discovery, generated verification, capture, and rendering.
- Preserve the original single-tree output when
docsSetsis absent.
Public API and dogfooding
- Generate this project's public API reference from
FsLiveDocs.Annotationsand theAcme.Docsteaching sample instead of presenting tool internals as supported libraries. - Move
FsLiveDocs.Annotationsfrom C# to F# while preserving its package ID, namespace, CLR type, constructor, property, attribute usage, andnetstandard2.0target. - Add generated and authored documentation for
DocScenarioAttribute, plus package landing-page introductions sourced fromdocs/api/. - Add the repository link to the generated site's top navigation.
Documentation
- Reorganize the site around repository setup, authoring, example verification, generated tests, CI, configuration, and release workflows.
- Tighten the motivating introduction and add clearer guidance for diagnosing documentation failures.
- Split the technical reference into focused pages for discovery, verification, extraction, capsules, history, and security.
- Document documentation-set ownership, routes, and site-wide command behavior.
Release capsules and history
- Bump the content artifact schema to 2, capturing resolved renderer-neutral set models and page set identity.
- Add deterministic schema-1 migration to an implicit legacy set; reject unknown content schemas.
- Preserve legacy semantic block identities during single-tree release capture while using set-prefixed identities for configured documentation sets.
- Render historical releases from their captured set models and switch versions with exact page, set API/root, and site-root fallbacks.
- Fix historical sidebar and same-version navigation links so they remain within the selected version, while shared assets and version switching resolve from the site root.
- Keep version links valid when a guide or API identity does not exist in another release by generating renderer-owned redirects to that release's appropriate landing page.
- Verify links and entry points across every rendered set and historical version.
Verification
- Stop treating referenced assembly names as F# namespaces when preparing FSI sessions. This allows packages such as
FsLiveDocs.Annotationsto use a package name that differs from their public namespace. - Add regression coverage for annotation compatibility, package introductions, documentation-set switching, and missing historical identities.
Site
v0.5.0
FsLiveDocs 0.5.0
Release publication
- Add
history-checkto render and verify the committed release history, with optional support for testing an unpublished local capsule. - Write a
.sha256sidecar during capture and lethistory-addread it with--sha256-file. - Allow
history-addto derive capsule URLs fromhistory.urlPattern. - Let
history-syncdiscover capsules through a user-supplied command, so backfills are not limited to GitHub Releases. - Generate GitHub Actions workflows with upload and Git operations shown as explicit provider-owned steps.
Documentation rendering
- Add a framed
::: renderedcontainer for pages that need to distinguish example output from their own content. - Correct DaisyUI colour variables used by rendered documentation.
Documentation
- Document host-independent release publication and continuous-integration workflows.
Site
v0.4.1
FsLiveDocs 0.4.1
Documentation
- Stop pinning the initial
0.1.0tool version in installation commands so new users install the current release. - Document
docs/api/*.mdas the primary place for long-form namespace, module, and type documentation. - Show both the Markdown source for an API-page example and the compiler-checked block it renders.
Site
v0.4.0
FsLiveDocs 0.4.0
Release history
- Add
history-syncto discover immutable LiveDocs capsules from GitHub Releases, verify GitHub-reported SHA-256 digests, preserve an explicit compatibility floor, and order releases by semantic-version precedence. - Add
verify-outputto require every version entry point, verify generated local links and assets, and check that the version switcher is complete and newest-first. - Add bounded
build-history --retryhandling for transient capsule downloads while continuing to fail immediately on checksum mismatches. - Store local
history-addcapsule paths relative to their index so temporary candidate manifests resolve correctly.
Publication safety
- Release candidates now render and verify the complete synchronized history before publication.
- GitHub Pages is awaited before NuGet publication, and NuGet receives the package artifacts already tested by the release job.
Documentation
v0.3.8
FsLiveDocs 0.3.8
Fixes
- Keep a module whose qualified name matches its package from hiding the package's other API entries in the sidebar.
Documentation
v0.3.7: Style the runnable-example prelude and checking-context label
FsLiveDocs 0.3.7
Style the runnable-example scaffolding that ships in every generated page.
Fixes
Repository F# setup/Shared setup(the collapsible prelude shown above a runnable example)
and theTarget: <tfm>checking-context label had no CSS at all, so they rendered as raw
browser-default<details>/<aside>markup — unstyled text sitting above a page's hero content,
clashing badly with the rest of the theme (visible on Reified's homepage). Both now get proper
badge/card styling consistent with the rest of the generated site.
Documentation
v0.3.6: Reuse an already-loaded assembly by identity during API extraction
FsLiveDocs 0.3.6
Fix a crash extracting API symbols from projects that share a dependency.
Fixes
- API extraction loaded each project's own copy of a shared transitive dependency (e.g. several
packages depending on the same library) withAssembly.LoadFrom, one call per project. The
runtime's default load context refuses a second load of the same assembly identity from a
different path, soaudit/build/capturecrashed withFileLoadException: ... Assembly with same name is already loadedas soon as two audited projects shared a dependency — reliably in
CI, intermittently locally depending on path/timing. Extraction now reuses an already-loaded
assembly of the same identity instead of loading it again.
Documentation
v0.3.5
FsLiveDocs 0.3.5
Fixes
- Flatten C#-style tuple arguments so each element gets its own parameter name.
- Reuse one F# tuple parameter name for the flattened signature elements.
- Recover parameter names from members inside target-framework
#ifblocks.