Skip to content

Releases: noemaforge/vimanam

1.0.1 - 2026-07-07

Choose a tag to compare

@github-actions github-actions released this 07 Jul 13:09

Release Notes

Added

  • --toc flag as the explicit opposite of --no-toc; when both are given, the
    later one wins.
  • A "no effect" warning when --required-only is combined with --detail basic
    or --detail summary, matching the existing --include-schemas/--include-examples
    warnings.

Fixed

  • Swagger 2.0 schemes is now respected when building the server URL from
    host/basePath; previously plain-HTTP specs were rendered with an assumed
    https:// prefix.
  • Response model now has a dedicated $ref field instead of relying on
    flattened extensions, for consistency with other ref-bearing types.
  • MSRV documentation updated from 1.85 to 1.96 (actual MSRV as of 1.0.0).

Install vimanam 1.0.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/noemaforge/vimanam/releases/download/v1.0.1/vimanam-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/noemaforge/vimanam/releases/download/v1.0.1/vimanam-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install noemaforge/tap/vimanam

Download vimanam 1.0.1

File Platform Checksum
vimanam-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
vimanam-x86_64-apple-darwin.tar.xz Intel macOS checksum
vimanam-x86_64-pc-windows-msvc.zip x64 Windows checksum
vimanam-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
vimanam-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

1.0.0 - 2026-07-05

Choose a tag to compare

@github-actions github-actions released this 05 Jul 16:23

Release Notes

Added

  • YAML input support: specs can now be supplied as .yaml/.yml in addition to
    .json, for both OpenAPI 3.x and Swagger 2.0. Format is detected by extension
    (case-insensitive) and falls back to the other parser for misnamed or
    extension-less files. YAML and JSON inputs produce byte-identical output (#4).

Changed

  • Adopted the Rust 2024 edition and raised the MSRV to 1.96.
  • Replaced the deprecated serde_yaml dependency with the maintained serde_norway
    fork, which better handles YAML 1.1 quoting footguns (the "Norway problem").

Security

  • All GitHub Actions across CI and the dist release workflow are now pinned to full commit
    SHAs, and a pin-check CI job enforces it. dist does not SHA-pin its generated workflow, so
    release.yml is hand-pinned after generation; re-running dist generate reverts the pins
    (the pin-check job catches it).

Install vimanam 1.0.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/noemaforge/vimanam/releases/download/v1.0.0/vimanam-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/noemaforge/vimanam/releases/download/v1.0.0/vimanam-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install noemaforge/tap/vimanam

Download vimanam 1.0.0

File Platform Checksum
vimanam-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
vimanam-x86_64-apple-darwin.tar.xz Intel macOS checksum
vimanam-x86_64-pc-windows-msvc.zip x64 Windows checksum
vimanam-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
vimanam-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.6.0 - 2026-06-26

Choose a tag to compare

@github-actions github-actions released this 26 Jun 07:01
722d526

Release Notes

Added

  • Release automation via dist. Each v*
    tag now also publishes shell + PowerShell install scripts and a Homebrew formula
    (brew install noemaforge/tap/vimanam), and cargo binstall vimanam works against
    the released binaries — alongside the existing crates.io publish and prebuilt
    archives (#32, #25, #26).
  • aarch64-unknown-linux-gnu (ARM64 Linux) release binaries.

Changed

  • Release archives are now .tar.xz named vimanam-<target-triple> (dist's
    convention) and additionally bundle CHANGELOG.md; previously .tar.gz named
    vimanam-<version>-<target-triple>. Checksums (.sha256) and a combined
    sha256.sum are still published.
  • crates.io publishing moved from the old hand-rolled release workflow to a dedicated
    publish-crate.yml, since dist does not publish to crates.io.

Install vimanam 0.6.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/noemaforge/vimanam/releases/download/v0.6.0/vimanam-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/noemaforge/vimanam/releases/download/v0.6.0/vimanam-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install noemaforge/tap/vimanam

Download vimanam 0.6.0

File Platform Checksum
vimanam-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
vimanam-x86_64-apple-darwin.tar.xz Intel macOS checksum
vimanam-x86_64-pc-windows-msvc.zip x64 Windows checksum
vimanam-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
vimanam-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

Vimanam v0.5.1

Choose a tag to compare

@github-actions github-actions released this 24 Jun 12:15
0e965e8

Fixed

  • Parameters given as a $ref (#/components/parameters/...) are now resolved
    during parsing; previously such specs failed to parse entirely because the
    bare $ref parameter carries no name/in (#48)
  • Path items given as a $ref (#/components/pathItems/...) now contribute
    their operations instead of being silently dropped; an unresolvable path-item
    reference is logged and skipped (#50)
  • OpenAPI 3.1 type arrays (e.g. ["string", "null"]) now parse instead of
    failing; multiple non-null members render as a pipe-separated union such as
    string | integer (#51)
  • Operations missing a responses object no longer abort the entire parse (#56)
  • An operation-level parameter now overrides a path-level one of the same
    (name, in) instead of both rendering as duplicate rows (#54)
  • Operations tagged with a value not in the declared tags list now get their
    own service section instead of being silently reassigned to the first service;
    service extraction is also $ref-aware so tags inside referenced path items
    are seen (#60)

Changed

  • Release artifacts are now compressed archives instead of bare binaries:
    .tar.gz for Linux/macOS and .zip for Windows, named
    vimanam-<version>-<target-triple> (cargo-binstall-friendly) and bundling the
    binary, README.md, and LICENSE. Each archive ships with a matching
    .sha256 checksum, which downstream package managers need to verify
    downloads (#24)

Compressed archives (.tar.gz for Linux/macOS, .zip for Windows) with per-asset .sha256 checksums for Linux, macOS (Intel & Apple Silicon), and Windows are attached. Also available via cargo install vimanam.

Vimanam v0.5.0

Choose a tag to compare

@github-actions github-actions released this 21 Jun 19:36
27987b6

Added

  • --include-examples is now implemented: at --detail full it renders request
    and response examples as fenced JSON blocks, pulling from media-type example
    and examples and resolving $refs into components/examples. It previously
    printed only a placeholder (#6)
  • --group-by path groups endpoints by path, emitting one section per path with
    its methods listed underneath, in spec order (#8)
  • --max-tokens <N> fits output to a token budget: it renders at the requested
    --detail level and, if the estimated token count (a chars/4 heuristic) is
    over budget, steps the detail level down (full → standard → basic → summary)
    until it fits, reporting any reduction on stderr (#7)

Changed

  • The examples maps on media types and components.examples switched from
    HashMap to IndexMap, so rendered examples preserve spec order and keep the
    output-determinism guarantee

Fixed

  • --required-only now also drops parameters whose required is unspecified,
    not only those explicitly marked required: false
  • A requestBody given as a $ref (#/components/requestBodies/...) is now
    resolved during parsing; previously such specs failed to parse entirely
    because the referenced body carries no inline content

Internal

  • The ~1200-line markdown.rs was split into a markdown/ module (views,
    endpoint, schema, examples) behind the unchanged generate_markdown
    entry point, and shared preamble, endpoint-filter, HTTP-method-list, and
    JSON-pointer helpers were de-duplicated. No behavior change.
  • Example and MediaType gained #[serde(flatten)] extension maps, so
    unknown vendor (x-*) fields are preserved rather than dropped, matching the
    other model structs.

Binaries for Linux, macOS (Intel & Apple Silicon), and Windows are attached. Also available via cargo install vimanam.

Vimanam v0.4.0

Choose a tag to compare

@github-actions github-actions released this 16 Jun 07:29
eecd31c

Fixed

  • Fatal errors are now printed to stderr regardless of the RUST_LOG setting,
    instead of being silently swallowed when logging was not enabled (#14)
  • --method-filter is now case-insensitive; methods are stored uppercase, so a
    lowercase value such as --method-filter get previously matched nothing and
    silently produced empty output (#13)
  • --service-filter is now case-insensitive, for the same reason (#19)
  • clean_for_id now collapses runs of 3+ consecutive separators into a single
    dash, so anchor IDs derived from inputs like a///b are clean (#15)
  • The ## Authentication section is now emitted in spec order and is
    deterministic across runs; security_schemes switched from HashMap to
    IndexMap, and serde_json's preserve_order feature keeps OpenAPI 2.0
    securityDefinitions in declaration order rather than alphabetical (#16)
  • The table of contents and body sections now share one endpoint ordering in
    every view, so TOC anchor links always point to the corresponding section in
    document order (#18)

Changed

  • Schema composition variant indices (allOf/oneOf/anyOf) are now 0-based
    (allOf[0], allOf[1], ...) to match JSON Pointer/jq conventions (#21)

Performance

  • $ref resolution no longer re-serializes the entire spec on every reference;
    the spec is serialized to JSON once per parse, making $ref-heavy large specs
    significantly faster (#17)

Internal

  • --group-by is no longer wrapped in a misleading Option (it always has a
    clap default), removing an unreachable fallback branch (#20)

Binaries for Linux, macOS (Intel & Apple Silicon), and Windows are attached. Also available via cargo install vimanam.

Vimanam v0.3.0

Choose a tag to compare

@github-actions github-actions released this 15 Jun 05:39
782de4f

Added

  • Schema expansion at --detail full --include-schemas (#5): the Schema model
    now captures title, description, format, properties, items,
    required, allOf/oneOf/anyOf, enum, nullable, and
    additionalProperties, and request/response schemas are rendered as nested
    field tables instead of a one-line type or reference name. $refs are
    resolved against components.schemas (OpenAPI 3) and definitions
    (OpenAPI 2), with cycle detection and a depth guard so self-referential
    schemas terminate cleanly

Changed

  • --detail full --include-schemas output format: request/response schemas now
    render as | Field | Type | Required | Description | tables instead of the
    previous single-line // Schema type: / // Reference: comment

Binaries for Linux, macOS (Intel & Apple Silicon), and Windows are attached. Also available via cargo install vimanam.

Vimanam v0.2.2

Choose a tag to compare

@github-actions github-actions released this 11 Jun 05:40

Added

  • --version / -V flag reporting the crate version (#3)
  • crates.io publishing: registry metadata (keywords, categories) and an
    automated cargo publish job on release tags (#10)
  • This changelog; release notes are now generated from it

Binaries for Linux, macOS (Intel & Apple Silicon), and Windows are attached. Also available via cargo install vimanam.

Vimanam v0.2.1

Choose a tag to compare

@github-actions github-actions released this 11 Jun 05:15

Vimanam v0.2.1

OpenAPI/Swagger JSON to Markdown documentation generator.

Features:

  • Convert OpenAPI JSON files to Markdown documentation
  • Group endpoints by service or HTTP method
  • Filter by service, path, or method
  • Multiple detail levels (summary, basic, standard, full)
  • Sorting options for endpoints

Downloads:

Binaries for Linux, macOS (Intel & Apple Silicon), and Windows are attached to this release.

Vimanam v0.2.0

Choose a tag to compare

@github-actions github-actions released this 18 Mar 07:30
9bf2646

Vimanam v0.2.0

OpenAPI/Swagger JSON to Markdown documentation generator.

Features:

  • Convert OpenAPI JSON files to Markdown documentation
  • Group endpoints by service or HTTP method
  • Filter by service, path, or method
  • Multiple detail levels (summary, basic, standard, full)
  • Sorting options for endpoints

Downloads:

Binaries for Linux, macOS (Intel & Apple Silicon), and Windows are attached to this release.