Skip to content

Releases: jonbaldie/queue

v0.11.6

Choose a tag to compare

@jonbaldie jonbaldie released this 11 Oct 20:43
2a961f5

Included changes

  • Make FileStore's JSON serialization contract explicit (#159).
  • Handle short writes on full persistence storage without acknowledging incomplete items or corrupting subsequent log records (#160, #163).
  • Preserve Queue state when persistence writes fail (#161, #164).
  • Add real OS short-write/restart regressions and record full-disk exploratory testing (#162).

Verification

  • Deno 2.7.6; frozen dependency install, type check, compile and production quality gate passed.
  • 345 local production tests and 376 full-suite PR CI tests passed.
  • Compiled binary smoke passed: auth, payload validation, typed FIFO, non-destructive HEAD, crash replay and graceful shutdown/restart replay.
  • All four CI checks passed on both main and v0.11.6, including full Mutasaurus and Stryker mutation gates.
  • Release tag identifies merge commit 2a961f5e107b028941236e70f2ea502fa92747d9 of release PR #168; no additional source changes.

Full Changelog: v0.11.5...v0.11.6

v0.11.5

Choose a tag to compare

@jonbaldie jonbaldie released this 07 Oct 20:12
8a73d0d

Included changes

  • Encapsulate payload size pre-flight in the payload reader (#153, #154).
  • Rename CONTEXT.md to GLOSSARY.md (#155, docs only).
  • Install mattpocock/skills v1.3.1 skills to .agents/skills (#156, agent tooling only).

Full Changelog: v0.11.4...v0.11.5

v0.11.4

Choose a tag to compare

@jonbaldie jonbaldie released this 04 Oct 22:03
ae8a067

Highlights

  • Type HTTP queue payloads as JSON values (JsonValue / Payload) across the payload module, HTTP handler, queue manager, and store wiring, replacing the unchecked <string> assertion. Top-level null remains rejected. No intended change to HTTP behaviour.

Verification

  • Deno test suite: 364 passed, 0 failed.
  • Production quality gate passed.
  • Compiled binary smoke passed: health check, authentication rejection, malformed JSON and top-level null rejection, and authenticated enqueue/dequeue of string, number, and nested object payloads in FIFO order.
  • Release PR #145 CI passed: Test, Production quality, Mutation testing (Mutasaurus), and Mutation testing (Stryker).

Full Changelog: v0.11.3...v0.11.4

v0.11.3

Choose a tag to compare

@jonbaldie jonbaldie released this 27 Sep 22:05
30cc20b

Highlights

  • Extract request payload ingestion and validation (size limit, UTF-8 decoding, JSON parsing, nesting depth, number precision) from the HTTP handler into a dedicated module with direct unit tests. No intended change to HTTP behaviour.

Verification

  • Deno test suite: 578 passed, 0 failed.
  • Production quality gate passed.
  • Compiled binary smoke passed: health check, authentication rejection, malformed JSON rejection, and authenticated enqueue/dequeue round-trip.
  • Release PR #143 CI passed: Test, Production quality, Mutation testing (Mutasaurus), and Mutation testing (Stryker).

Full Changelog: v0.11.2...v0.11.3

v0.11.2

Choose a tag to compare

@jonbaldie jonbaldie released this 23 Sep 22:13
86aeb00

Highlights

  • Reject invalid UTF-8 enqueue request bodies.
  • Return 400 for JSON nested beyond the parser's stack depth.
  • Avoid per-value JSON reviver overhead during numeric validation.
  • Make rate limiter checks independent of window size.

Verification

  • Deno test suite: 338 passed, 0 failed.
  • Production quality gate passed.
  • Compiled binary smoke passed: health check, authentication rejection, and authenticated enqueue/dequeue round-trip.
  • Release PR #135 CI passed: Test, Production quality, Mutation testing (Mutasaurus), and Mutation testing (Stryker).

Full Changelog: v0.11.1...v0.11.2

v0.11.1

Choose a tag to compare

@jonbaldie jonbaldie released this 20 Sep 23:00
238159e

Highlights

  • Reject whitespace-only, internally spaced, and invalid QUEUE_API_TOKEN values.
  • Preserve remaining items when crash recovery replays under tighter limits.
  • Default HOST to 127.0.0.1 for IPv4 loopback reachability.
  • Make the Docker persistence path writable by the non-root user.
  • Replace persist.dat snapshots atomically and report cleanup failures.
  • Add exploratory testing reports and evidence.

Verification

  • Deno test suite: 325 passed, 0 failed.
  • Production quality gate passed.
  • Compiled binary smoke test passed: health check, authentication rejection, enqueue, and dequeue.

Full Changelog: v0.11.0...v0.11.1

v0.11.0

Choose a tag to compare

@jonbaldie jonbaldie released this 10 Sep 22:06
855fd38

What's Changed

Full Changelog: v0.10.1...v0.11.0

v0.10.1

Choose a tag to compare

@jonbaldie jonbaldie released this 09 Sep 22:01
2cb528a

What's Changed

  • fix: support HEAD requests on GET endpoints per RFC 9110 §9.3.2 (#78) by @jonbaldie in #79
  • fix: include required Allow header in 405 responses (RFC 9110 §15.5.6) (#77) by @jonbaldie in #80
  • fix: allow multiple spaces and tabs in Bearer tokens (RFC 9110 §11.1) (#76) by @jonbaldie in #81
  • Fix router method shadowing on shared pathnames by @jonbaldie in #82
  • fix: reject missing or empty QUEUE_API_TOKEN before bind by @jonbaldie in #86
  • fix: canonicalize percent-encoded queue names from URI path by @jonbaldie in #87
  • fix: enforce request body limit while streaming (#85) by @jonbaldie in #88

Full Changelog: v0.10.0...v0.10.1

v0.10.0

Choose a tag to compare

@jonbaldie jonbaldie released this 06 Sep 22:03
d2a9e0b

What's Changed

Full Changelog: v0.9.9...v0.10.0

v0.9.9

Choose a tag to compare

@jonbaldie jonbaldie released this 31 Aug 18:52
c0a7f28

What's Changed

  • fix: make auth Bearer scheme match case-insensitive (RFC 9110) by @jonbaldie in #69
  • fix: make /health endpoint trailing-slash tolerant by @jonbaldie in #70
  • fix: read env vars by name instead of Deno.env.toObject() (#64) by @jonbaldie in #71
  • fix: grant unrestricted --allow-write so PERSIST can be any directory (#65) by @jonbaldie in #72
  • fix: grant unrestricted --allow-net so PORT/HOST can differ at runtime (#68) by @jonbaldie in #73

Full Changelog: v0.9.8...v0.9.9