Skip to content

Releases: rust-codegen-group/openapi-nexus

0.1.16

26 Jun 06:59

Choose a tag to compare

Release Notes

Added

  • README: add a Codecov coverage badge for the main branch

Changed

  • Rust aioduct: support aioduct 0.2 runtime APIs with HttpEngineSend, RuntimePoll, ConnectorSend, and RequestBuilderSend
  • Rust aioduct: default generated Cargo.toml files to the aioduct = "0.2" semver requirement so generated clients can pick up compatible 0.2.x releases
  • Update package metadata, release links, and mdBook links to rust-codegen-group/openapi-nexus and the main branch

Install openapi-nexus 0.1.16

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/rust-codegen-group/openapi-nexus/releases/download/0.1.16/openapi-nexus-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/rust-codegen-group/openapi-nexus/releases/download/0.1.16/openapi-nexus-installer.ps1 | iex"

Download openapi-nexus 0.1.16

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

0.1.15

22 Jun 07:10

Choose a tag to compare

Release Notes

Fixed

  • TypeScript Fetch: handle adjacent tagged-union payload keys correctly under camelCase property naming
  • TypeScript Fetch: emit tag-only discriminated union variants without synthetic payload fields
  • TypeScript Fetch: preserve nullable array and reference conversions with explicit null guards
  • TypeScript Fetch: simplify redundant generated union type members

Changed

  • Bump sigil-stitch to 0.6.8

Install openapi-nexus 0.1.15

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/adamcavendish/openapi-nexus/releases/download/0.1.15/openapi-nexus-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/adamcavendish/openapi-nexus/releases/download/0.1.15/openapi-nexus-installer.ps1 | iex"

Download openapi-nexus 0.1.15

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

0.1.14

15 Jun 07:02

Choose a tag to compare

Release Notes

Added

  • Multipart request body generation across all generated clients
    • Supports explicit per-part media types from OpenAPI encoding.contentType
    • Adds multipart fixtures for edge cases, nested object parts, unsupported schemas, and optional bodies
  • Optional request body fixture coverage across all generators

Fixed

  • Rust: preserve requestBody.required: false and emit optional request bodies as Option<&T>
    • reqwest and aioduct omit body setup when optional bodies are absent
    • ureq uses the existing empty-send path for absent optional POST bodies
  • Rust: align JSON, form, multipart, XML, text, and binary request body media-type emission
  • TypeScript and Python: align multipart wire output with current generated clients
  • Go, Java, Kotlin, Python, Rust, and TypeScript: fix SDK generation edge cases around array parameters, tagged unions, type aliases, response matching, path prefixes, and media-type selection

Changed

  • Refactor Rust request body emission around sigil_quote!
  • Bump sigil-stitch to 0.6.7

Install openapi-nexus 0.1.14

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/adamcavendish/openapi-nexus/releases/download/0.1.14/openapi-nexus-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/adamcavendish/openapi-nexus/releases/download/0.1.14/openapi-nexus-installer.ps1 | iex"

Download openapi-nexus 0.1.14

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

0.1.13

02 Jun 00:23

Choose a tag to compare

Release Notes

Added

  • cargo-dist support for prebuilt binary releases across 7 platforms
    • Release workflow: pushes version tags → builds + publishes to GitHub Releases
    • Nightly workflow: pushes to master → builds + updates nightly GitHub Release
    • Shell and PowerShell installers generated automatically
    • Install via: curl .../releases/download/nightly/openapi-nexus-installer.sh | sh

Install openapi-nexus 0.1.13

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/adamcavendish/openapi-nexus/releases/download/0.1.13/openapi-nexus-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/adamcavendish/openapi-nexus/releases/download/0.1.13/openapi-nexus-installer.ps1 | iex"

Download openapi-nexus 0.1.13

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

0.0.1-alpha.4

10 Nov 12:11

Choose a tag to compare

0.0.1-alpha.4 Pre-release
Pre-release

Added

  • Cross-compilation support with cross.toml configuration for multi-platform builds
  • GitHub Actions CI workflow now uses cross tool for Linux cross-compilation targets
  • Comprehensive HTTP response handling with status codes and content types
  • ContentType enum for representing HTTP content types with JSON and text support
  • StatusCode struct to handle exact codes, ranges (e.g., 2XX), and default responses
  • HttpResponse struct to normalize OpenAPI responses with status, content types, and schemas
  • OpenApiRefExt trait for resolving component references (schemas, responses, parameters)
  • collect_responses() method to OperationInfo to categorize success, error, and default responses
  • Type-safe response handling code generation for operations with multiple status codes and content types
  • Support for response handling with different content types and optional response bodies
  • Test fixtures for various response scenarios (default responses, fallback, multi-status, no response body)

Changed

  • Refactored return type generation to use HttpResponse and StatusCode for type-safe response handling
  • Updated response transformer to handle different content types and response body presence
  • Updated dependencies in Cargo.toml and Cargo.lock

0.0.1-alpha.3

07 Nov 17:25

Choose a tag to compare

0.0.1-alpha.3 Pre-release
Pre-release

Added

  • Automatic import generation for model dependencies with proper type/value separation
  • Support for duplicated parameter names and recursive JSON typings
  • Extraction of nested inline objects into named interfaces
  • Union type support with member extraction and improved import handling
  • Support for inline objects and any type in union types
  • Type discrimination helpers for union types in JSON serialization
  • Script to check TypeScript build status for test directories

Changed

  • Standardized naming fields and track original schema names throughout the type system

Fixed

  • Improved array type mapping to properly resolve item types

0.0.1-alpha.2

06 Nov 11:21

Choose a tag to compare

0.0.1-alpha.2 Pre-release
Pre-release

Added

  • GitHub Actions workflow for multi-platform builds
  • Duplicate parameter name handling with location-based conflict resolution
  • Property name conversion to camelCase while preserving original names

Changed

  • Updated default TypeScript config values and improved ts_lib handling
  • Updated package.json to use dist output and enable build scripts

Fixed

  • Fixed package.json to use correct source files

0.0.1-alpha

04 Nov 16:46

Choose a tag to compare

0.0.1-alpha Pre-release
Pre-release
  • Initial release of OpenAPI Nexus
  • OpenAPI 3.1 specification parsing using utoipa
  • CLI application with command-line argument support
  • Configuration system supporting CLI, env vars, and config files
  • Template-based code emission using Jinja2
  • TypeScript/fetch code generation with full type safety
  • Multi-file output organization