Skip to main content
Version: 3.1

Context

Concurrency since 1.8.9

Starting with Nauthilus v1.8.9, Lua environment and subject sources execute in parallel. The shared request context remains available across scripts, but there is no deterministic order of reads/writes between scripts. Prefer idempotent updates or namespaced keys to avoid conflicts, and do not rely on one source running before another.

local nauthilus_context = require("nauthilus_context")

nauthilus_context.context_set​

Adds a value to the shared Lua context.

Syntax​

nauthilus_context.context_set(key, value)

Parameters​

  • key (string): The key to store the value under
  • value (string/number/boolean/table): The value to store (cannot be a function)

Returns​

None

Example​

local nauthilus_context = require("nauthilus_context")

nauthilus_context.context_set("user_id", 12345)

nauthilus_context.context_get​

Retrieves a value from the shared Lua context.

Syntax​

local value = nauthilus_context.context_get(key)

Parameters​

  • key (string): The key to retrieve the value for

Returns​

  • value (any): The stored value, or nil if the key doesn't exist

Example​

local nauthilus_context = require("nauthilus_context")

local user_id = nauthilus_context.context_get("user_id")

nauthilus_context.context_delete​

Deletes a key/value pair from the shared Lua context.

Syntax​

nauthilus_context.context_delete(key)

Parameters​

  • key (string): The key to delete

Returns​

None

Example​

local nauthilus_context = require("nauthilus_context")

nauthilus_context.context_delete("user_id")