NyxJ 2.0.0
NyxJ 2.0.0 marque un tournant : le projet passe d'un simple parseur à une plateforme complète pour le traitement JSON et les services web, écrite en C11 sans dépendance runtime. Cette release introduit un moteur de parsing thread-safe conforme RFC 8259, avec décodage complet des échappements, validation UTF-8 stricte et protection contre les attaques par déni de service JSON (profondeur maximale,…
NyxJ 2.0.0 represents a significant milestone in the project's evolution. This release transcends the role of a simple JSON parser to become a comprehensive platform for handling JSON and web services, all written in C11 without runtime dependencies. The core of the update introduces a thread-safe parsing engine that adheres to RFC 8259, featuring complete escape decoding, strict UTF-8 validation, and protection against JSON denial-of-service attacks (including depth limit, input size, and duplicate key rejection).
An arena allocator enables the release of entire trees in O(1) time, while a linear serializer ensures optimal round-trip serialization of numbers.
Beyond the core features, NyxJ 2.0.0 expands its capabilities with a dozen additional modules. These include a JSON-to-C struct mapping generator with code generation, JSON Schema validation, JSONPath queries (via NyxQuery), JSON Pointer/Patch/Merge Patch operations, MessagePack encoding/decoding, a zero-copy token view, SAX parsing in constant memory, and heuristically repairing almost valid JSON.
Runtime enhancements include a thread pool with backpressure management, an embedded key-value store with TTL, Prometheus metrics, Unix sockets, and a shared memory ring buffer.
The web framework component features a router with parameters and wildcards, middleware chaining, built-in HTTPS/TLS support, a native HTTP client, OpenAPI 3 generation with Swagger UI, /health and /ready probes, reverse proxy Safe-Gate mode, .so/.dll plugin system, and experimental gossip clustering. The accompanying toolset comprises a CLI (nyxj) with validation, formatting, querying, repairing, diffing, patching, MessagePack encoding, and struct generation commands, a configurable server, and a WebAssembly build with a browser demo.
Comprehensive testing covers over 500 checks, with continuous integration spanning Linux x64/ARM64, macOS, Windows, sanitizers, and WebAssembly environments. A full documentation suite (36 chapters) is provided with this release. NyxJ 2.0.0 is now available on GitHub at https://github.com/fomadev/nyxj/releases/tag/v2.0.0.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.