Avatar for the reflex-dev user
reflex-dev
reflex
BlogDocsChangelog

Performance History

Latest Results

Sync uv.lock with the testing extra in pyproject.toml (#7047) PR #7008 added the testing optional-dependency group but left uv.lock without the corresponding requires-dist entries and provides-extras entry, so every uv command rewrote the lock file. Regenerated with `uv lock`; only the reflex package metadata changed, no dependency versions were bumped. Claude-Session: https://claude.ai/code/session_01KpSPsdMoxxXp3xqsDUpvVS Co-authored-by: Claude <noreply@anthropic.com>
main
29 minutes ago
Preserve RegistrationContext in telemetry worker threads (#6960) * tests: scope the shared-context config load count to the test's own threads test_get_config_loads_once_for_shared_context patches reflex_base.config._load_config and asserts it ran exactly once. The counter was process-wide, so any background thread that called get_config() inside the patched window was counted as a duplicate load of the shared context. The telemetry worker thread does exactly that: _process_event -> _send -> _prepare_event -> get_event_defaults -> get_bun_version -> path_ops.get_bun_path -> get_config(). That thread carries no RegistrationContext, so ensure_context() creates a fresh one and loads the config for it. When an event queued by an earlier test drains during this test, load_count reaches 2 and the assert fails (seen on Windows CI). Count only loads made from the test's worker threads, via a thread-local marker, so an unserialized load path for the shared context still fails the test while unrelated background loads are ignored. * telemetry: run queued work under the submitter's RegistrationContext The telemetry worker thread carries no RegistrationContext, so a config lookup during event collection (_prepare_event -> get_event_defaults -> get_bun_version -> path_ops.get_bun_path -> get_config()) attached a throwaway context to the worker and re-imported rxconfig.py off-thread — duplicating work the caller had already done, against a config the app is not using, and mutating sys.path from a background thread while doing it. _submit now captures the caller's RegistrationContext (without attaching one to a caller that has none) and _run_suppressed attaches it for the duration of the job, resetting it afterwards so a context never leaks into the next job on the reused worker thread. Collection therefore reuses the already-loaded Config instead of loading its own. Verified across the unit suite: instrumenting _load_config to log calls from non-main threads reported one such load before this change and none after. * changelog: add news fragment for the telemetry registration-context fix * telemetry: document the context-less-job caveat in _run_suppressed --------- Co-authored-by: Claude <noreply@anthropic.com>
main
1 hour ago

Latest Branches

CodSpeed Performance Gauge
0%
Sync uv.lock with the testing extra in pyproject.toml#7047
2 hours ago
6036dd1
claude/laughing-volta-tfqz93
CodSpeed Performance Gauge
0%
docs: add guidance for scaling state#6898
1 hour ago
7c580aa
docs/scaling-state
CodSpeed Performance Gauge
0%
2 hours ago
b9987cf
khaleel/docs-user-authentication
© 2026 CodSpeed Technology
Home Terms Privacy Docs