Context manager for setting contextvars variables
Project description
This module provides Set, a context manager which sets one or more contextvars variables upon activation and resets them to their previous values at exit.
Usage:
import contextvars, with_contextvars A = contextvars.ContextVar("A") B = contextvars.ContextVar("B") A.set("Hello,") B.set("world!") print(A.get(), B.get()) # prints: Hello, world! with with_contextvars.Set((A, "other"), (B, "value")): print(A.get(), B.get()) # prints: other value print(A.get(), B.get()) # prints: Hello, world!
Even the entirety of variable assignments of a contextvars.Context object (as obtained from contextvars.copy_context()) can be activated by initializing Set with its items:
with with_contextvars.Set(*context.items()): ...
However, using contextvars.Context.run() is more efficient and should be preferred where possible.
More information can be found in the documentation of Set.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
with-contextvars-0.1.1.tar.gz
(3.1 kB
view hashes)
Built Distribution
Close
Hashes for with_contextvars-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5588273b4b8228f952ebdc67fc458018f4fe861db7f0b719eed0edb9f9a371a7 |
|
MD5 | 633198abd76bc80ec228b9184ea07865 |
|
BLAKE2b-256 | 3e95b0187283239359d8e2daf115db53b7d05c5cab8654407a6c093acd96d9dc |