Skip to content

chore(repo): version packages#343

Merged
HugoRCD merged 1 commit into
mainfrom
changeset-release/main
May 25, 2026
Merged

chore(repo): version packages#343
HugoRCD merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented May 10, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

evlog@2.18.0

Minor Changes

  • #351 ee997b3 Thanks @HugoRCD! - Add evlog/memory — an in-memory ring buffer drain that works in any runtime, including Cloudflare Workers (workerd) where Node's fs module is unavailable.

    import {
      createMemoryDrain,
      readMemoryLogs,
      clearMemoryLogs,
      parseReadMemoryLogsQuery,
    } from "evlog/memory";
    
    // Wire the drain
    app.use(evlog({ drain: createMemoryDrain() }));
    
    // Expose a dev-only endpoint — agents can filter via query params
    app.get("/_evlog/logs", (c) =>
      c.json(readMemoryLogs(parseReadMemoryLogsQuery(c.req.query()))),
    );

    Key features:

    • Zero runtime dependencies — pure in-memory, no fs, no network
    • Bounded ring buffer — configurable maxEvents (default 1000) prevents unbounded memory growth
    • Named stores — isolate buffers per service or test suite via the store option
    • Filtering APIreadMemoryLogs accepts since, until, level, filter, and limit options, matching the readFsLogs interface
    • parseReadMemoryLogsQuery(query) — coerce HTTP query-string params (Record<string, string>) into typed ReadMemoryLogsOptions; works with Hono, h3/Nitro, Express, Fastify, Next.js, Elysia, NestJS
    • clearMemoryLogs(store?) — reset a store, useful in tests
    • Environment variablesNUXT_EVLOG_MEMORY_STORE / EVLOG_MEMORY_STORE, NUXT_EVLOG_MEMORY_MAX_EVENTS / EVLOG_MEMORY_MAX_EVENTS (via resolveAdapterConfig)
    • Nuxt moduleModuleOptions.axiom now documents apiKey as the canonical field; legacy token remains as a deprecated alias until the next major release

    Closes #349.

  • #344 5bc3c73 Thanks @HugoRCD! - Add oRPC integration (evlog/orpc) with automatic wide-event logging. Two complementary primitives:

    • withEvlog(handler) — wraps RPCHandler / OpenAPIHandler from @orpc/server/fetch. Each matched request becomes one wide event with full pipeline support (drain, enrich, include/exclude, route-based service overrides, tail sampling). Excluded routes still receive a no-op context.log so procedures never crash on missing fields.
    • evlog() — procedure-level middleware (os.use(evlog())). Tags the wide event with operation (procedure path joined with .), forwards the request logger as context.log, promotes the level to error when a procedure throws, and bridges createError() / defineErrorCatalog() throws to ORPCError (code, status, message, plus why/fix/link in data).
    import { os } from "@orpc/server";
    import { RPCHandler } from "@orpc/server/fetch";
    import { evlog, withEvlog, type EvlogOrpcContext } from "evlog/orpc";
    
    const base = os.$context<EvlogOrpcContext>().use(evlog());
    
    const router = {
      ping: base.handler(({ context }) => {
        context.log.set({ pinged: true });
        return { ok: true };
      }),
    };
    
    const handler = withEvlog(new RPCHandler(router));
    
    export default async function fetch(request: Request) {
      const { matched, response } = await handler.handle(request, {
        prefix: "/rpc",
      });
      return matched ? response : new Response("Not Found", { status: 404 });
    }

    useLogger() is exposed for off-context access (utility modules / deep service functions). EvlogOrpcContext is the type to plug into os.$context() for typed access.

    Closes #297.

  • #339 31b6b31 Thanks @HugoRCD! - Add log.setLevel(level) to promote the wide event level explicitly without touching the error context.

    log.error(err) populates error: { name, message, stack, ... } from the thrown value. When you want to mark the event as error (or warn) while controlling the error field yourself — typed error codes, no stack, custom shapes — call log.setLevel('error' | 'warn' | 'info' | 'debug') and pair it with log.set({ error: { code: 'PAYMENT_DECLINED' } }). The explicit level wins over the level computed from .error() / .warn().

    log.setLevel("error");
    log.set({
      error: { code: "PAYMENT_DECLINED", reason: "insufficient_funds" },
    });

    Closes #301.

Patch Changes

  • #348 6d4d87c Thanks @HugoRCD! - Fix evlog/nitro and evlog/nitro/v3 on Windows. The module passed native path.resolve() paths to nitro.options.plugins and nitro.options.errorHandler. Nitro raw-interpolates those into the #nitro/virtual/plugins and #nitro/virtual/error-handler JS string literals, so Windows backslashes were parsed as escape sequences (\n, \v, …) and broke module resolution — surfacing as Cannot find module … imported from '#nitro/virtual/error-handler'. Paths are now normalized to forward slashes before being handed to Nitro.

    Closes #345.

evlog-community-adapter-skeleton@4.0.0

Patch Changes

evlog-community-enricher-skeleton@4.0.0

Patch Changes

evlog-community-framework-skeleton@4.0.0

Patch Changes

@vercel

vercel Bot commented May 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
evlog-docs Ready Ready Preview, Comment, Open in v0 May 25, 2026 7:30am
just-use-evlog Ready Ready Preview, Comment May 25, 2026 7:30am

@github-actions github-actions Bot force-pushed the changeset-release/main branch from e306964 to 8bf74e8 Compare May 21, 2026 12:13
@github-actions github-actions Bot force-pushed the changeset-release/main branch from 8bf74e8 to 2937d81 Compare May 21, 2026 19:36
@github-actions github-actions Bot force-pushed the changeset-release/main branch from 2937d81 to aa54eba Compare May 24, 2026 12:44
@github-actions github-actions Bot force-pushed the changeset-release/main branch from aa54eba to e68c723 Compare May 24, 2026 16:49
@github-actions github-actions Bot force-pushed the changeset-release/main branch from e68c723 to f3b52cb Compare May 24, 2026 16:51
@github-actions github-actions Bot force-pushed the changeset-release/main branch from f3b52cb to fd959f1 Compare May 24, 2026 17:36
@github-actions github-actions Bot force-pushed the changeset-release/main branch from fd959f1 to 34fac2f Compare May 25, 2026 07:05
@github-actions github-actions Bot force-pushed the changeset-release/main branch from 34fac2f to b13ca14 Compare May 25, 2026 07:27
@HugoRCD HugoRCD merged commit 4fd67af into main May 25, 2026
3 of 4 checks passed
@HugoRCD HugoRCD deleted the changeset-release/main branch May 25, 2026 07:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant