Skip to content

Releases: znight-org/znight

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 02 Nov 22:04
5ded846

All packages are released together at 0.1.4: @znight/core · @znight/compiler · @znight/http · @znight/openapi · @znight/cli · @znight/config · @znight/messaging · @znight/observability · @znight/schedule · @znight/testing

@znight/core

Patch Changes

  • c21ef01: GraphQL error codes ZNIGHT060–066 and the graphql:operation hook with its GraphQLOperationEvent (RFC 0005).

@znight/compiler

Patch Changes

  • c21ef01: Type shapes gain instance members (getters, visibility), enum members and literal order; extensions can declare lazy edges and emit extra files, which znight generate --check reports when stale.

@znight/http

Patch Changes

  • b6d42bc: The fast lane of the request pipeline now serves requests with http:request listeners or wrappers instead of sending them through the general pipeline, with the same replies and the same hook events (applications with @znight/observability get it).
  • c21ef01: RouteMetaCarrier (route decorators read metadata from any carrier), readRouteMeta, effectiveRouteMeta and requiredRouteGroups exported from @znight/http/compiler, and a per-route bodyLimit on plugin routes.

@znight/openapi

Patch Changes

  • 1fb7b0e: Update development dependencies: @biomejs/biome, tsdown, @aws-sdk/client-secrets-manager, @aws-sdk/client-sqs and @cfworker/json-schema.

@znight/cli

Patch Changes

  • c21ef01: Type shapes gain instance members (getters, visibility), enum members and literal order; extensions can declare lazy edges and emit extra files, which znight generate --check reports when stale.

@znight/config

Patch Changes

  • 1fb7b0e: Update development dependencies: @biomejs/biome, tsdown, @aws-sdk/client-secrets-manager, @aws-sdk/client-sqs and @cfworker/json-schema.

@znight/messaging

Patch Changes

  • 1fb7b0e: Update development dependencies: @biomejs/biome, tsdown, @aws-sdk/client-secrets-manager, @aws-sdk/client-sqs and @cfworker/json-schema.

@znight/observability

Patch Changes

  • b6d42bc: ObservabilityPlugin registers only the hooks of the features its options enable: with HTTP logging, metrics and tracing off, no http:request wrapper slows requests down.

@znight/testing

Patch Changes

  • c21ef01: TestApp boots GraphQL resolvers, their guards and loaders by default.

Changelogs: packages/*/CHANGELOG.md in znight-org/znight.

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 31 Oct 09:00
047bea6

All packages are released together at 0.1.3: @znight/core · @znight/compiler · @znight/http · @znight/openapi · @znight/cli · @znight/config · @znight/messaging · @znight/observability · @znight/schedule · @znight/testing

@znight/core

Patch Changes

  • 39f7f5f: A fast lane for simple routes: a synchronous handler returning JSON is served without promises and its headers come from a template computed at boot; container.openScope() opens a request scope without a callback.

@znight/compiler

Patch Changes

  • 39f7f5f: Faster validated routes: the generated invoke of a route validating arguments with schemas stays synchronous while the schemas validate synchronously (no promise and no await per request), and falls back to awaiting them, in parameter order, for asynchronous schemas. coerce.number, coerce.integer and coerce.boolean read plain values without a regular expression, validate reads ~standard once, isThenable is exported for the generated code, and code generators get the block builder.

@znight/http

Patch Changes

  • 39f7f5f: Faster Hono adapter on Bun, with the same behaviour: a request body with a Content-Length is read at once (request.bytes()) instead of through a Web stream, responses go to Bun.serve() untouched (no response.body read, no wrapper without Hono middleware), and the GET and HEAD routes of a path are one Hono route.
  • 39f7f5f: Faster Node.js adapters, with the same responses: the Fastify adapter serves a Znight route from its onRequest hook when no other hook needs Fastify's lifecycle (no content type parsing) and writes text replies on the raw response when no onSend/onResponse hook runs; the node, Fastify and Express adapters read request bodies and count in-flight requests without closures or map lookups per request.
  • 39f7f5f: A fast lane for simple routes: a synchronous handler returning JSON is served without promises and its headers come from a template computed at boot; container.openScope() opens a request scope without a callback.
  • 39f7f5f: Faster serialisation and request bodies, with the same responses: response header records stay in V8's fast mode (about 100 ns per request on Node.js), text bodies are encoded once, content-type values are parsed once per distinct value, the request context parses its buffered body without an extra promise, and isHttpResponse answers object literals and arrays at once.
  • 39f7f5f: Faster validated routes: the generated invoke of a route validating arguments with schemas stays synchronous while the schemas validate synchronously (no promise and no await per request), and falls back to awaiting them, in parameter order, for asynchronous schemas. coerce.number, coerce.integer and coerce.boolean read plain values without a regular expression, validate reads ~standard once, isThenable is exported for the generated code, and code generators get the block builder.

Changelogs: packages/*/CHANGELOG.md in znight-org/znight.

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 30 Oct 22:11
ca9a59c

All packages are released together at 0.1.2: @znight/core · @znight/compiler · @znight/http · @znight/openapi · @znight/cli · @znight/config · @znight/messaging · @znight/observability · @znight/schedule · @znight/testing

@znight/core

No changes in this release.

@znight/http

Patch Changes

  • 4f680af: Faster request pipeline on every adapter (1.4× to 2.7× the requests per second on Node.js), with the same behaviour: the async context is captured for streamed bodies only, serialiser headers are not checked twice, text bodies reach the adapters as strings (AdapterReply.text), and the Hono adapter reads HTTP/1.1 requests from Node.js directly.
    • @znight/core@0.1.2

@znight/cli

Patch Changes

  • @znight/compiler@0.1.2
  • @znight/core@0.1.2

@znight/config

Patch Changes

  • @znight/core@0.1.2

@znight/messaging

Patch Changes

  • @znight/core@0.1.2

@znight/schedule

Patch Changes

  • @znight/core@0.1.2

Changelogs: packages/*/CHANGELOG.md in znight-org/znight.

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 30 Oct 15:13
516da72

All packages are released together at 0.1.1: @znight/core · @znight/compiler · @znight/http · @znight/openapi · @znight/cli · @znight/config · @znight/messaging · @znight/observability · @znight/schedule · @znight/testing

@znight/core

No changes in this release.

@znight/compiler

Patch Changes

  • dc8ac11: Depend on oxc-parser 0.156 (^0.156.0): the 0.1.0 range (^0.155.0) kept applications on 0.155.x.

Changelogs: packages/*/CHANGELOG.md in znight-org/znight.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 13:08
de7c0fa

All packages are released together at 0.1.0: @znight/core · @znight/compiler · @znight/http · @znight/openapi · @znight/cli · @znight/config · @znight/messaging · @znight/observability · @znight/schedule · @znight/testing

@znight/core

Initial release

  • First public release of @znight/core. Znight core runtime: compile-time DI container, lifecycle, plugins and marker decorators.

@znight/compiler

Initial release

  • First public release of @znight/compiler. Znight compiler: Vite plugin that analyzes your code and generates the DI container at build time.

@znight/http

Initial release

  • First public release of @znight/http. Znight HTTP plugin: controllers, routing, guards, interceptors, validation with Fastify, Express or Hono.

@znight/openapi

Initial release

  • First public release of @znight/openapi. Znight OpenAPI: OpenAPI 3.1 documents generated at build time from your controllers, served with Scalar or Swagger UI.

@znight/cli

Initial release

  • First public release of @znight/cli. Znight CLI: scaffold projects, generate code, run dev server and builds.

@znight/config

Initial release

  • First public release of @znight/config. Znight config plugin: type-safe configuration classes loaded from env, files and secret stores.

@znight/messaging

Initial release

  • First public release of @znight/messaging. Znight messaging plugin: consumers, retries and dead-letter queues with RabbitMQ, SQS or Kafka.

@znight/observability

Initial release

  • First public release of @znight/observability. Znight observability plugin: structured logging (Pino), Prometheus metrics and OpenTelemetry tracing.

@znight/schedule

Initial release

  • First public release of @znight/schedule. Znight schedule: cron, interval and timeout jobs validated at build time, with distributed locks and graceful shutdown.

@znight/testing

Initial release

  • First public release of @znight/testing. Znight testing utilities: TestBed with auto-mocking and TestApp for end-to-end tests.

Changelogs: packages/*/CHANGELOG.md in znight-org/znight.