Reflex

Latest version: v0.7.2

Safety actively analyzes 714875 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 15

0.6.7

Deprecations

* `app.add_custom_404_page` is deprecated -- use `app.add_page(..., route="/404")` instead.
* `external` prop of `rx.redirect` is renamed to `is_external` for consistency.
* Unify `is_external` prop in `rx.redirect` and `rx.link` by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4389

New Features

`async_db_url` and `rx.asession`

Builtin support for async database operations using sqlmodel. Proper usage requires the following:

1. Install `greenlet` for sqlalchemy to use async operations.
2. Install an appropriate async-capable database driver (aiosqlite, pyscopg)
3. Set `ASYNC_DB_URL` in the environment that references the async db driver. This should point to the same database as specified in `DB_URL`, which should still be set for handling alembic migrations and for use in computed vars, etc.
4. Use `async with rx.asession() as asession` -- await most operations on the asession.

Async DB operations are preferred in event handlers to avoid blocking other users on the server.

Var Operations for `datetime` values

* add datetime var comparison operations by Lendemor in https://github.com/reflex-dev/reflex/pull/4406

[Wrapping React] new `deps` and `position` fields in `VarData`

This allows for customization and control of where hooks are rendered relative to other hooks and memoized event handlers. Deps allows for specification of vars that memoized event handlers depend on.

* add deps and position field in VarData by Lendemor in https://github.com/reflex-dev/reflex/pull/4518

Improvements

More Efficient Database Connection Pooling

Each time `rx.session` was used, it was creating a new pool and not reusing connections.

* Reuse the sqlalchemy engine once it's created by masenf in https://github.com/reflex-dev/reflex/pull/4493

Linting
* enable RUF rules by Lendemor in https://github.com/reflex-dev/reflex/pull/4465
* enable FURB rules by Lendemor in https://github.com/reflex-dev/reflex/pull/4466
* add ERA rules to detect commented out code by Lendemor in https://github.com/reflex-dev/reflex/pull/4472
* enable C4 rule by Lendemor in https://github.com/reflex-dev/reflex/pull/4536
* enable PTH rule by Lendemor in https://github.com/reflex-dev/reflex/pull/4476
* enable PERF rules by Lendemor in https://github.com/reflex-dev/reflex/pull/4469
* style: prefer type() over __class__ by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4512

Performance
* minor pickle improvement by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4499
* Avoid double JSON encode/decode for socket.io by masenf in https://github.com/reflex-dev/reflex/pull/4449
* [ENG-4194] TypeError: Cannot create property 'token' on string by masenf in https://github.com/reflex-dev/reflex/pull/4534
* simplify redis code, less redis calls by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4456

Miscellaneous

* Avoid `set_log_level` foot gun by masenf in https://github.com/reflex-dev/reflex/pull/4422
* [HOS-333] Send a "reload" message to the frontend after state expiry by masenf in https://github.com/reflex-dev/reflex/pull/4442
* enable css props via wrapperStyle for recharts components by Lendemor in https://github.com/reflex-dev/reflex/pull/4447
* add default value for text area by Lendemor in https://github.com/reflex-dev/reflex/pull/4462
* add `__repr__` method to MutableProxy by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4506
* [ENG-4135]Default `rx.link` href to `` so `underline` prop works by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4509
* raise StateSerializationError if the state cannot be serialized by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4453
* disable polling by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4441
* deprecate add_custom_404_page by Lendemor in https://github.com/reflex-dev/reflex/pull/4505
* [ENG-4100]Throw warnings when Redis lock is held for more than the allowed threshold by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4522
* Wrap Checkbox component in Context Menu (partial fix for 4262) by vydpnguyen in https://github.com/reflex-dev/reflex/pull/4479
* Include step attribute in input by Joodith in https://github.com/reflex-dev/reflex/pull/4073
* improve StateManagerRedis error message by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4444

Bug Fixes

* [ENG-4137] Handle generic alias passing inspect.isclass check by masenf in https://github.com/reflex-dev/reflex/pull/4427
* fix mutable default in EventNamespace by Lendemor in https://github.com/reflex-dev/reflex/pull/4420
* fix: state size was not checked for dill by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4431
* allow for 'go.Figure | None' annotation in State by Lendemor in https://github.com/reflex-dev/reflex/pull/4426
* follow up to 4426 by Lendemor in https://github.com/reflex-dev/reflex/pull/4436
* rx.upload must include _var_data from props by masenf in https://github.com/reflex-dev/reflex/pull/4463
* fix: multiple mismatched-type-assignment fixes by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4482
* fix: migrate is_backend_only (deprecated) to EnvironmentVariables by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4495
* Fix REFLEX_COMPILE_PROCESSES=0 by masenf in https://github.com/reflex-dev/reflex/pull/4523
* client_state: create Var from value when pushing from backend by masenf in https://github.com/reflex-dev/reflex/pull/4474
* fix: handle default_factory in get_attribute_access_type by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4517
* [ENG-4165] Consider default and default_factory for state vars by masenf in https://github.com/reflex-dev/reflex/pull/4510
* Fix upload cancellation by masenf in https://github.com/reflex-dev/reflex/pull/4527
* [ENG-4153]Use empty string for None values in `rx.input` and `rx.el.input` by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4521
* [ENG-3583] Respect cors_allowed_origins for backend HTTP requests by masenf in https://github.com/reflex-dev/reflex/pull/4533

Documentation
* Add production-one-port example by masenf in https://github.com/reflex-dev/reflex/pull/4489
* add issues templates by Lendemor in https://github.com/reflex-dev/reflex/pull/4455
* [HOS-466]Fix deploy help text by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4508

Version Bumps
* bump ruff to 0.8 and relock poetry by Lendemor in https://github.com/reflex-dev/reflex/pull/4451

Other Changes
* Remove invitation code logic from reflex logoutv2 by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4433
* test dynamic route flakiness (can't reproduce locally) by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4496
* add test for color mode (initial and toggle) by Lendemor in https://github.com/reflex-dev/reflex/pull/4467
* Support python 3.13 by Lendemor in https://github.com/reflex-dev/reflex/pull/4206
* bump CI runners to `macos-latest` by masenf in https://github.com/reflex-dev/reflex/pull/4526
* raise_console_error during integration tests by masenf in https://github.com/reflex-dev/reflex/pull/4535

New Contributors
* vydpnguyen made their first contribution in https://github.com/reflex-dev/reflex/pull/4479
* Joodith made their first contribution in https://github.com/reflex-dev/reflex/pull/4073

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.6.6.post3...v0.6.7

0.6.6.post3

fix non-interactive flag in deploy command by Lendemor in 4498

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.6.6.post2...v0.6.6.post3

0.6.6.post2

Fixup stray `loginv2` command in help text

This should have been removed in 0.6.6.post1, but it was missed

0.6.6.post1

Update CLI for Reflex Cloud hosting

* remove v2 commands (4478)
* [HOS-373][HOS-372]Logout should not open the browser (4475)
* [ENG-4149] require login to deploy named templates (4450)

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.6.6...v0.6.6.post1

0.6.6

New Features

`.temporal` event action drops events when backend is not connected

* New Event Action: temporal by masenf in https://github.com/reflex-dev/reflex/pull/4404

New "performance mode" options

Allow disabling or modifying various guardrails and checks performed by reflex.

* implement performance mode for existing state size check by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4392

Builtin support for existing pydantic v1 and v2 models

State vars can now be typed as pydantic models, with support for modification tracking.

* [ENG-3953] Support pydantic BaseModel (v1 and v2) as state var by masenf in https://github.com/reflex-dev/reflex/pull/4338

`rx.asset` promoted to non-experimental

TBD: docs for new API

* rx._x.asset improvements by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/3624

Improvements

Streamlined `reflex init` workflow

* [GTM-836]Rework Init workflow by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4377

Other Improvements
* export Color and ImportDict in top-level namespace by masenf in https://github.com/reflex-dev/reflex/pull/4352
* redesign error boundary screen by adhami3310 in https://github.com/reflex-dev/reflex/pull/4329
* add typing to function vars by adhami3310 in https://github.com/reflex-dev/reflex/pull/4372
* Add template name to reflex init success msg by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4349
* Fix ternary logic when printing template name by masenf in https://github.com/reflex-dev/reflex/pull/4393
* fix: do not allow instantiation of State mixins by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4347
* add typed dict type checking by adhami3310 in https://github.com/reflex-dev/reflex/pull/4340
* Add datetime to moment by Alek99 in https://github.com/reflex-dev/reflex/pull/4381
* remove deprecation for drawer events by Lendemor in https://github.com/reflex-dev/reflex/pull/4415
* allow to disable checking for the latest package version via env by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4407
* Allow bound method as event handler by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4348
* enable css props via wrapperStyle for recharts components by Lendemor in 4447

Bug Fixes
* fix upload argspec being missing by adhami3310 in https://github.com/reflex-dev/reflex/pull/4335
* Only pass Model.__fields__ when casting event args by masenf in https://github.com/reflex-dev/reflex/pull/4356
* Path change after Astral 0.5.0 update by 1Codev in https://github.com/reflex-dev/reflex/pull/4336
* [ENG-4098] Deconfuse key/value of State.get_value / dict / get_delta by masenf in https://github.com/reflex-dev/reflex/pull/4371
* fix noSSRComponent imports by Lendemor in https://github.com/reflex-dev/reflex/pull/4386
* fix: Failed to CreateArtifact by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4339
* make list suggestions work in rx.input by Lendemor in https://github.com/reflex-dev/reflex/pull/4391
* Don't skip serialization when Var is callable by masenf in https://github.com/reflex-dev/reflex/pull/4399
* ignore rxconfig not in cwd by adhami3310 in https://github.com/reflex-dev/reflex/pull/4398
* protect sys.path manipulation with a mutex by masenf in https://github.com/reflex-dev/reflex/pull/4408
* fix appearance broken by 3812 by Lendemor in https://github.com/reflex-dev/reflex/pull/4403
* [ENG-4130] Disable typer/rich integration appropriately by masenf in https://github.com/reflex-dev/reflex/pull/4412
* [HOS-313] state.js: when a routing error occurs, delete it by masenf in https://github.com/reflex-dev/reflex/pull/4410
* fix for event handlers in py3.9 by Lendemor in https://github.com/reflex-dev/reflex/pull/4416
* Handle Var passed to `rx.toast` by masenf in https://github.com/reflex-dev/reflex/pull/4405
* allow for 'go.Figure | None' annotation in State by Lendemor in 4426
* cb087acbe follow up to 4426 (4436)
* fix mutable default in EventNamespace by Lendemor in 4420
* [ENG-4137] Handle generic alias passing inspect.isclass check by masenf in 4427
* [HOS-333] Send a "reload" message to the frontend after state expiry by masenf in 4442
* rx.upload must include _var_data from props by masenf in 4463

Version Bumps
* Bump reflex-hosting-cli dep to 0.1.15 for v2 by masenf in https://github.com/reflex-dev/reflex/pull/4355
* Temporarily downpin radix-ui/themes <3.1.5 by masenf in https://github.com/reflex-dev/reflex/pull/4370
* require typing_extensions >= 4.6.0 by masenf in https://github.com/reflex-dev/reflex/pull/4373
* update cli version by Kastier1 in https://github.com/reflex-dev/reflex/pull/4394
* [maintenance] bump some packages versions by Lendemor in https://github.com/reflex-dev/reflex/pull/4385
* [ENG-4080]Downgrade syntax highlighter to fix `wrapLongLines` issue by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4368
* Simon/hosting cli upgrades by Kastier1 in https://github.com/reflex-dev/reflex/pull/4417

Other Changes

* Update bug_report.md by Alek99 in https://github.com/reflex-dev/reflex/pull/4382
* add debug statement to evaluate page by adhami3310 in https://github.com/reflex-dev/reflex/pull/4396
* Remove invitation code logic from reflex logoutv2 ElijahAhianyo in 4433

New Contributors
* 1Codev made their first contribution in https://github.com/reflex-dev/reflex/pull/4336

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.6.5...v0.6.6

0.6.5

Known Issues

* 4384 Setting the default `appearance` prop in `rx.theme` is no longer working

Breaking Changes

* `rx.App` is now a dataclass that does not accept additional kwargs. Any unrecognized kwargs passed to `rx.App` will now raise an exception.
* Event handlers that accept annotated `rx.Base` subclasses as arguments will receive an instance of the annotated class instead of a regular `dict`

New Features

New `rx.get_state` interface

* expose rx.get_state() to get instance of state from anywhere by Lendemor in https://github.com/reflex-dev/reflex/pull/3959

Support custom `bunfig.toml`

* allow custom bunfig.toml file by Lendemor in https://github.com/reflex-dev/reflex/pull/4280

New Hosting Service CLI

* Adding hosting v1 support by Kastier1 in https://github.com/reflex-dev/reflex/pull/4309
* update cli version by Kastier1 in https://github.com/reflex-dev/reflex/pull/4333

Improvements

Better Typing Support
* add type validation for state setattr by adhami3310 in https://github.com/reflex-dev/reflex/pull/4265
* handle none case in state setattr by adhami3310 in https://github.com/reflex-dev/reflex/pull/4301
* use better typing for on_load by adhami3310 in https://github.com/reflex-dev/reflex/pull/4274
* [ENG-3943]type check for event handler if spec arg are typed by Lendemor in https://github.com/reflex-dev/reflex/pull/4046
* add noop event by adhami3310 in https://github.com/reflex-dev/reflex/pull/4288
* allow for event handlers to ignore args by adhami3310 in https://github.com/reflex-dev/reflex/pull/4282
* improve typing for non decorated events by adhami3310 in https://github.com/reflex-dev/reflex/pull/4308
* add type hinting for plotly by adhami3310 in https://github.com/reflex-dev/reflex/pull/4279
* unbreak pyi plotly by adhami3310 in https://github.com/reflex-dev/reflex/pull/4320
* improve app_src typing by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4324
* change custom attr to accept any by adhami3310 in https://github.com/reflex-dev/reflex/pull/4323
* improve typing for serializer decorator by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4317
* [ENG-3793] convert event return types to type hints by adhami3310 in https://github.com/reflex-dev/reflex/pull/4331

Experimental Shiki Code Block Features
* [ENG-3892]Shiki codeblock support decorations by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4234
* [ENG-4010]Codeblock cleanup in markdown by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4233

Refactor Environment Variable Handling
* More env var cleanup by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4248

Other Improvements
* Support `locale` prop in `rx.moment` by masenf in https://github.com/reflex-dev/reflex/pull/4229
* delay page until _compile gets called by adhami3310 in https://github.com/reflex-dev/reflex/pull/3812
* fix stateful components on delayed evaluation by adhami3310 in https://github.com/reflex-dev/reflex/pull/4247
* make vardata merge not use classmethod by adhami3310 in https://github.com/reflex-dev/reflex/pull/4245
* port enum env var support from 4248 by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4251
* expose staticPageGenerationTimeout by adhami3310 in https://github.com/reflex-dev/reflex/pull/4266
* rx.event(background=True) by adhami3310 in https://github.com/reflex-dev/reflex/pull/4263
* components as literal vars by adhami3310 in https://github.com/reflex-dev/reflex/pull/4223
* generate docs for event handlers by adhami3310 in https://github.com/reflex-dev/reflex/pull/4277
* improve page title default by adhami3310 in https://github.com/reflex-dev/reflex/pull/4278
* Add option to scroll to bottom by picklelo in https://github.com/reflex-dev/reflex/pull/4276
* [ENG-759] [ENG-1104] patch `json.dumps` to handle `__wrapped__` objects by masenf in https://github.com/reflex-dev/reflex/pull/4166
* Support direct usage of `MutableProxy` wrapped objects in JSON APIs (OpenAI, httpx, etc)
* improve object var symantics by adhami3310 in https://github.com/reflex-dev/reflex/pull/4290
* add metainfo to keyevent by adhami3310 in https://github.com/reflex-dev/reflex/pull/4287

Bug Fixes
* Include value._get_all_var_data when ClientStateVar.set_value is used by masenf in https://github.com/reflex-dev/reflex/pull/4161
* client_state: fix fault VarData.merge call by masenf in https://github.com/reflex-dev/reflex/pull/4244
* Remove Duplicated 'gray' colour from ColorType by lb803 in https://github.com/reflex-dev/reflex/pull/4249
* Handle props annotated as list/dict of EventHandler by masenf in https://github.com/reflex-dev/reflex/pull/4257
* add existing path subclass for env checks by adhami3310 in https://github.com/reflex-dev/reflex/pull/4260
* [ENG-4012]Fix shiki copy button animation firing off after clicking copy button by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4252
* [ENG-4013] Catch more exceptions for dill pickle fallback by masenf in https://github.com/reflex-dev/reflex/pull/4270
* fix typo in dataeditor prop by adhami3310 in https://github.com/reflex-dev/reflex/pull/4281
* Bugfix/leave gitignore as is by grahamannett in https://github.com/reflex-dev/reflex/pull/4291
* Fix wrong hook by abulvenz in https://github.com/reflex-dev/reflex/pull/4295
* fix call_function events sent from backend by adhami3310 in https://github.com/reflex-dev/reflex/pull/4316
* fix imports with alias from $ by adhami3310 in https://github.com/reflex-dev/reflex/pull/4332
* Only pass Model.__fields__ when casting event args by masenf in 4356
* fix upload argspec being missing by adhami3310 in 4335

Documentation
* [ENG-4026]change gallery link to Templates by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4283
* [GTM-345]Define component props in class for doc discoverability by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4183
* Update overlay props by tgberkeley in https://github.com/reflex-dev/reflex/pull/4261
* default props comment for GraphinTooltip by carlosabadia in https://github.com/reflex-dev/reflex/pull/4101
* add toast classname prop by carlosabadia in https://github.com/reflex-dev/reflex/pull/4310
* [GTM-648]Add Missing Table props by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/4322

Version Bumps
* update nodejs to lts 22 for real this time by adhami3310 in https://github.com/reflex-dev/reflex/pull/4267
* rollback to 14.2.16 until v15 is more stable by Lendemor in https://github.com/reflex-dev/reflex/pull/4297
* bump python packages version by Lendemor in https://github.com/reflex-dev/reflex/pull/4302
* pin marked to correct version by adhami3310 in https://github.com/reflex-dev/reflex/pull/4313
* Bump reflex-hosting-cli dep to 0.1.15 for v2 by masenf in 4355
* Temporarily downpin radix-ui/themes <3.1.5 by masenf in 4370

Other Changes
* convert test_table to use playwright by Lendemor in https://github.com/reflex-dev/reflex/pull/4241
* cleanup dead code by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4271
* unbreak ci lighthouse by adhami3310 in https://github.com/reflex-dev/reflex/pull/4273
* resync steps with task advance by adhami3310 in https://github.com/reflex-dev/reflex/pull/4275
* [ENG-3961] move "warn_if_too_large" logic into BaseState by masenf in https://github.com/reflex-dev/reflex/pull/4284
* raise error when get package manager is not found by adhami3310 in https://github.com/reflex-dev/reflex/pull/4289
* better missing system package message by adhami3310 in https://github.com/reflex-dev/reflex/pull/4306
* move check of path to only check name by adhami3310 in https://github.com/reflex-dev/reflex/pull/4299
* special case field in _isinstance by adhami3310 in https://github.com/reflex-dev/reflex/pull/4298
* bypass pydantic runtime validation for state init by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/4256
* add codeowners by Kastier1 in https://github.com/reflex-dev/reflex/pull/4312
* stop ignoring some lint rules by Lendemor in https://github.com/reflex-dev/reflex/pull/4311
* mark var methods as private by adhami3310 in https://github.com/reflex-dev/reflex/pull/4319
* test_exception_handlers: add test case that triggers ErrorBoundary by masenf in https://github.com/reflex-dev/reflex/pull/4327

New Contributors
* lb803 made their first contribution in https://github.com/reflex-dev/reflex/pull/4249
* grahamannett made their first contribution in https://github.com/reflex-dev/reflex/pull/4291

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.6.4...v0.6.5

Page 2 of 15

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.