OxL Reference

Guides

Testing and simulation, observability, debugger, LSP, analyzer, packages, clusters

In this chapter

Deterministic simulation (test sim, [С §18.4])Stage 4, wave 2 (agent SIM, D-4100..D-4110).
Observability: spans, metrics, logsEnglish translation of docs/observability.md (the Russian text is the original).
Interfaces: import proto, oxl gen, ORM relationsEnglish translation of docs/interfaces.md (the Russian text is the original).
HTTP/JSON gateway, API keys, sessions, replica reads, builtin:// migrationsEnglish translation of docs/gateway.md (the Russian text is the original).
Local debugger (ч. III.5, requirement И6)oxl dap is a Debug Adapter Protocol server on stdin/stdout.
The OxL language server (oxl lsp)Standard [С ч. III.3], TZ requirements И3 (formatter in the editor) and И4 (LSP, "M"
Static analyzer (ч. III.4) — status of every ruleThe analyzer runs in oxl check, oxl build and the language server.
.oxlrec — the request journaloxl trace --record ([С III.1], D-6860) journals the unary rpcs a cluster receives over the network; test ab …
Sanitizers (TZ 3.5 / 5.2)OXL_SANITIZE builds the runtime (liboxlrt), the compiler (oxlc, oxl) and every test binary with AddressSanitizer + UndefinedBehaviorSanitizer, and makes oxl build link the sanitizer runtime into every compiled OxL progra…
Fuzzing (TZ 3.5 / 5.2)libFuzzer harnesses for the code that parses bytes we do not control live in tests/fuzz/.
Line coverage (TZ 3.5)Targets: compiler/ >= 85 %, runtime/ >= 80 % of the lines, measured by unit tests + conformance (stages <= 3).
BenchmarksPerformance targets of TZ 3.2 and how they are measured.
Compiler and runtime designImplementation of the OxL language (standard