server_native 0.1.2 copy "server_native: ^0.1.2" to clipboard
server_native: ^0.1.2 copied to clipboard

Rust-backed transport boot APIs for Dart HTTP servers.

Changelog #

All notable changes to server_native will be documented in this file.

0.1.2 #

  • Split large Dart runtime files into focused modules for server boot, proxy runtime, direct path, and bridge codec/request/response layers.
  • Added extensive Dart and Rust internal documentation across hot-path runtime code and protocol helpers.
  • Fixed NativeMultiServer.bind to consistently forward the http2 flag.
  • Fixed NativeHttpServer.connectionsInfo() tracking in native callback mode by wiring request/socket lifecycle counters on the direct callback path.
  • Added callback-free direct frame polling mode for native direct transport to avoid Rust->Dart callback teardown races.
  • Fixed NativeHttpServer.close(force: true) shutdown hangs by cancelling active Rust connection tasks during shutdown.
  • Added explicit regression tests for NativeHttpServer.close(force: true) in both bridge and native-callback modes.
  • Reduced runtime log noise by silencing expected shutdown cancellation/tunnel teardown messages by default.
  • Added server_native.verbose_logs toggle for opt-in verbose runtime diagnostics (including non-TLS HTTP/3 downgrade notices).
  • Split native binary publishing to dedicated prebuilt release tags (server-native-prebuilt-v*) independent from Dart package tags.
  • Updated server_native:setup to resolve latest prebuilt-specific release tags instead of generic repository latest release.
  • Added generated prebuilt release metadata (lib/src/generated/prebuilt_release.g.dart) sourced from pubspec.yaml version.
  • Updated hooks/setup to use versioned prebuilt paths (.dart_tool/server_native/prebuilt/<tag>/<platform>/) with legacy path fallback.
  • Updated prebuilt CI workflow to auto-derive release tags from package version when no tag input is provided.
  • Removed save_to_repo prebuilt commit path from CI to avoid drift from release source-of-truth.
  • Updated hook prebuilt lookup priority to prefer downloaded versioned prebuilts over packaged fallback binaries.
  • Switched setup/hook cache path from .prebuilt/... to .dart_tool/server_native/prebuilt/....
  • Removed checked-in native prebuilt binaries from the repository; GitHub binary releases are now the source-of-truth.
  • Added hook-level prebuilt auto-download from versioned GitHub release assets when no local prebuilt is found.
  • Regenerated native/bindings.h and lib/src/ffi.g.dart to keep generated FFI artifacts in sync with native source updates.

0.1.1 #

  • Reduced packaged prebuilt binary sizes for pub.dev publish limits.
  • Updated prebuilt CI flow to strip artifacts and skip ios-sim-x64 in repo prebuilts.

0.1.0 #

  • Initial release of server_native.
  • Added NativeHttpServer with HttpServer-style bind/loopback APIs.
  • Added multi-bind helpers: NativeMultiServer and NativeServerBind.
  • Added native callback and direct-request server modes.
  • Added framework and transport benchmark harnesses and documentation.
8
likes
0
points
235
downloads

Publisher

unverified uploader

Weekly Downloads

Rust-backed transport boot APIs for Dart HTTP servers.

Homepage
Repository (GitHub)
View/report issues

Documentation

Documentation

Funding

Consider supporting this project:

www.buymeacoffee.com

License

unknown (license)

Dependencies

archive, code_assets, contextual, ffi, hooks, native_toolchain_rust

More

Packages that depend on server_native