Reflex

Latest version: v0.5.0.post1

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

Scan your dependencies

Page 2 of 10

0.4.7

Not secure
New Features

New `reflex init` templates

We've added 4 new base templates to `reflex init`.

bash
(0) blank (https://blank-template.reflex.run) - A minimal template
(1) dashboard (https://dashboard.reflex.run) - A dashboard with tables and graphs
(2) chat (https://chat.reflex.run) - A ChatGPT clone
(3) sidebar (https://sidebar-template.reflex.run) - A template with a sidebar to navigate pages


You can also specify the template directly


reflex init --template chat


* Update sidebar temp by Alek99 in https://github.com/reflex-dev/reflex/pull/2959
* Support reflex app creation from templates from github by martinxu9 in https://github.com/reflex-dev/reflex/pull/2490

Use any Reflex app on Github as an initial template

`reflex init` now also supports passing in any Github url as a template. Currently the Reflex app must be in the root of the Github directory (meaning the `rxconfig.py` should be in the root.


reflex init --template https://github.com/reflex-dev/reflex-chat


* Support reflex app creation from templates from github by martinxu9 in https://github.com/reflex-dev/reflex/pull/2490

`reflex run` will automatically init the app when required

Previously when updating versions of Reflex or cloning an existing Reflex app, you would have to run `reflex init` before you can `reflex run`. From 0.4.7, `reflex init` is only required the very first time you create an app. If you are missing a `.web` folder or there's a new version of Reflex, `reflex run` and `reflex export` will automatically `init` the app for you.

* Reflex run automatically inits when needed by picklelo in https://github.com/reflex-dev/reflex/pull/3011

`rx.logo()` component to display the Reflex logo

Show Built with Reflex logo.
python
rx.logo()


* adding a reflex logo component by tgberkeley in https://github.com/reflex-dev/reflex/pull/2994

Reflex Experimental Namespace

We've introduced a new `rx._x` namespace where we will be putting experimental features for early testers before they go into general release. This will help us make sure new features have time to mature with real users before we make them public

* add experimental namespace under rx._x by Lendemor in https://github.com/reflex-dev/reflex/pull/2951


Improvements

`None` can be passed in as a component prop and it will be skipped
* Logic for removing the 'None' property along with its corresponding test cases by AmanSal1 in https://github.com/reflex-dev/reflex/pull/2969
Leaving a trailing comma on a reflex component won't throw an error anymore as we unpack the tuple
* Unpack component tuples in a fragment by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2985

Bug Fixes
* [REF-2425] Reduce unnecessary CI runs by martinxu9 in https://github.com/reflex-dev/reflex/pull/2966
* adjust share command prompt by martinxu9 in https://github.com/reflex-dev/reflex/pull/2965
* Windows uvicorn bug fix by sid-38 in https://github.com/reflex-dev/reflex/pull/2954
* use dict instead of set to store hooks by Lendemor in https://github.com/reflex-dev/reflex/pull/2995
* Added custom_attrs to the list of trigger props by SwarajBaral in https://github.com/reflex-dev/reflex/pull/2980
* Exclude .web dir when running uvicorn by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2986
* Fix typo in page.py by thphuc in https://github.com/reflex-dev/reflex/pull/3001

Misc
* Lendemor/improve coverage by Lendemor in https://github.com/reflex-dev/reflex/pull/2988
* Include architecture post in readme by picklelo in https://github.com/reflex-dev/reflex/pull/2993
* Remove extra spaces in the keywords in pyproject.toml template by martinxu9 in https://github.com/reflex-dev/reflex/pull/2990
* add logo to blank template by tgberkeley in https://github.com/reflex-dev/reflex/pull/3014
* [REF-2296] Rename recursive functions by martinxu9 in https://github.com/reflex-dev/reflex/pull/2999
* [REF-2303] Update custom component template for new API by martinxu9 in https://github.com/reflex-dev/reflex/pull/3007
* remove types-tabulate from dev dependencies by martinxu9 in https://github.com/reflex-dev/reflex/pull/2977

New Contributors
* AmanSal1 made their first contribution in https://github.com/reflex-dev/reflex/pull/2969
* sid-38 made their first contribution in https://github.com/reflex-dev/reflex/pull/2954
* SwarajBaral made their first contribution in https://github.com/reflex-dev/reflex/pull/2980
* thphuc made their first contribution in https://github.com/reflex-dev/reflex/pull/3001

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.4.6...v0.4.7

0.4.6

Not secure
Known Issues

* Unhandled runtime error when navigating between pages in a stateless app.
* Fix: https://github.com/reflex-dev/reflex/pull/2490/commits/c78884b7ba4fd30f5047e87d5b24da59475a0fef

This Release was Airdropped from 30000' over Nevada 🪂

![IMG_2840](https://github.com/reflex-dev/reflex/assets/1524005/7468742e-1dde-4704-9bd4-4a65e2eef28b)


Breaking Changes

Use `dill` instead of `cloudpickle`

In reflex-0.4.6, existing states persisted in redis are not compatible. Redis should be cleared and existing states/sessions discarded after upgrading.

* [REF-2089] Use dill instead of cloudpickle for serialization by masenf in https://github.com/reflex-dev/reflex/pull/2922

New Features

`reflex component share` CLI

Simplify sharing of custom 3rd party components to the [Reflex Component Gallery](https://reflex.dev/docs/custom-components/).

* [REF-2168] Add share options to custom component commands by martinxu9 in https://github.com/reflex-dev/reflex/pull/2883

`rx.ComponentState`

An easy way to define per-component State.

python
import reflex as rx

class CounterButton(rx.ComponentState):
count: int

def increment(self):
self.count += 1

def decrement(self):
self.count -= 1

classmethod
def get_component(cls, *children, **props):
return rx.button(
f"Counter {cls.count}",
on_click=cls.increment,
on_context_menu=cls.decrement.prevent_default,
)

counter_button = CounterButton.create

rx.page()
def index():
return rx.vstack(
*[counter_button() for _ in range(10)]
)

app = rx.App()


* [REF-2265] ComponentState: scaffold for copying State per Component instance by masenf in https://github.com/reflex-dev/reflex/pull/2923

Automatically Select Next Available Port

When the configured port is not available, automatically select the next sequential port until one is available

* added feature to automatically change port by wassafshahzad in https://github.com/reflex-dev/reflex/pull/2867

Expanding Textarea

New props on `rx.el.textarea` and `rx.text_area` allow the field to expand to match content and submit the form when Enter is pressed (shift+enter to create a new line)

* textarea: expose auto_height and enter_key_submit props by masenf in https://github.com/reflex-dev/reflex/pull/2884

`rx.scroll_to` event

Scroll the viewpoint to show a given element by ID.

* Scroll to feature by Yummy-Yums in https://github.com/reflex-dev/reflex/pull/2948

Improvements

Simplify Component Wrapping API

[REF-2272] Support declaring EventHandlers directly in component by martinxu9 in https://github.com/reflex-dev/reflex/pull/2952
Props typed as `rx.EventHandler` can be used to define event triggers without overriding `get_event_triggers` method. The argument of the type specifies the JS to Python mapping: `on_click: rx.EventTrigger[lambda e: [e]]`.

generate pyi files when building/publishing 3rd party component by Lendemor in https://github.com/reflex-dev/reflex/pull/2945
Third-party components will now have `.pyi` files generated for them to improve IDE completion, similar to the built in Reflex components.

Updated Lucide Icons

The latest icons available on https://lucide.dev are now usable in Reflex. Some icon names have changed, these will print a deprecation warning pointing to the new name. The old names will be removed in 0.5.0.

* Update LUCIDE_ICON_LIST with newest Icon names by luccavp12 in https://github.com/reflex-dev/reflex/pull/2891

Loosen Requirement Pins

Reflex is now compatible with a wider range of dependencies. Notably, it can be used with packages that depend on Pydantic v2 (although the framework itself is still using v1).

* [REF-2127] Loosen requirements by mahrz24 in https://github.com/reflex-dev/reflex/pull/2796

Note: due to a regression in recent `uvicorn` versions, that dep will remain pinned as it was in 0.4.5.

Avoid content flicker when using `State.is_hydrated`

`is_hydrated` is set to False immediately when a navigation event starts, and is set back to True after all on_load events have executed. This avoids content flickering into view before a loading spinner is displayed when the spinner is conditional on the value of `State.is_hydrated`.

Additionally, the WiFi off connection error pulser is only displayed when connection errors are detected (before it was displayed whenever the page was not hydrated).

* Set is_hydrated=False at route onChangeStart by masenf in https://github.com/reflex-dev/reflex/pull/2949

Miscellaneous

* [REF-1982] state: Warn if redis state is "too big" by masenf in https://github.com/reflex-dev/reflex/pull/2868
* use radix box instead of chakra one for responsive elements by Lendemor in https://github.com/reflex-dev/reflex/pull/2921
* [REF-2229]Dedupe deprecation warnings by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2871
* fix hook order to use ref inside user hooks by Lendemor in https://github.com/reflex-dev/reflex/pull/2906
* Ensure user-defined hooks can always access refs
* [REF-2302] When a Var points to a model, prefer access to model fields. by masenf in https://github.com/reflex-dev/reflex/pull/2893

Bug Fixes

* [REF-2117]:`rx.color_mode_cond` to work in f-strings by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2775
* Default to None if bun/fnm version is Invalid by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2940
* remove inheritance from Flex for list components by Lendemor in https://github.com/reflex-dev/reflex/pull/2936
* Fix markdown rendering of lists
* parse_args_spec: resolve annotations with typing.get_type_hints by masenf in https://github.com/reflex-dev/reflex/pull/2849
* [REF-2219] Avoid refetching states that are already cached by masenf in https://github.com/reflex-dev/reflex/pull/2953
* Fix issue affecting Cookie/LocalStorage values when substates contained computed vars
* [REF-2306] Include twine in dependencies on pyproject.toml by martinxu9 in https://github.com/reflex-dev/reflex/pull/2895

Other Changes
* Fix 2877, PR title not available for push/PR merge by martinxu9 in https://github.com/reflex-dev/reflex/pull/2889
* [REF-2284]Benchmark add extra info on publishing data by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2864
* Revert "add precommit check added large files and git lfs rules (2866)" by picklelo in https://github.com/reflex-dev/reflex/pull/2905
* [REF-1682][REF-1683][REF-1684][REF-2283]Benchmark reflex package size and .web folder by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2880
* fix AppHarness reloading by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2916
* Remove page.pyi: it's out of date, and not necessary by masenf in https://github.com/reflex-dev/reflex/pull/2924
* [REF-2416] Pass shell=True when starting AppHarness on Windows by masenf in https://github.com/reflex-dev/reflex/pull/2944
* updated watchdog dep by Yummy-Yums in https://github.com/reflex-dev/reflex/pull/2946
* Update README.md by ChicIceCream in https://github.com/reflex-dev/reflex/pull/2963

New Contributors
* luccavp12 made their first contribution in https://github.com/reflex-dev/reflex/pull/2891
* mahrz24 made their first contribution in https://github.com/reflex-dev/reflex/pull/2796
* ChicIceCream made their first contribution in https://github.com/reflex-dev/reflex/pull/2963

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.4.5...v0.4.6

0.4.5

Not secure
New Features

Support SQLAlchemy Models Directly

* Bare sqlalchemy metadata by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2355

Experimental Multi-process Compilation

Pass `REFLEX_COMPILE_PROCESSES=0` to opt-in to multiprocess compile, which significantly improves compilation speed of large apps (Mac and Linux only).

* [REF-2122] Opt-in multiprocess compile by masenf in https://github.com/reflex-dev/reflex/pull/2838

Improvements

* improve event handler state references by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2818
* Allow access to position from HighLevelSelect by hjpr in https://github.com/reflex-dev/reflex/pull/2829
* [REF-2157] Allow `rx.download` to resolve `rx.get_upload_url` links by masenf in https://github.com/reflex-dev/reflex/pull/2813
* better default title for seo (also remove default description) by Lendemor in https://github.com/reflex-dev/reflex/pull/2844
* Make rx.memo work with state vars passed as props by masenf in https://github.com/reflex-dev/reflex/pull/2810
* added name of Var to error message by emmakodes in https://github.com/reflex-dev/reflex/pull/2827

Bug Fixes
* [REF-2172] Add DECORATED_PAGES before compiling in thread by masenf in https://github.com/reflex-dev/reflex/pull/2841
* Fix known regression with py3.8 and py3.9
* Remove width prop from rx.select by picklelo in https://github.com/reflex-dev/reflex/pull/2835
* HighLevelSelect: pass flex_shrink prop to SelectTrigger by masenf in https://github.com/reflex-dev/reflex/pull/2876
* Get `client_ip` from `asgi.scope` by masenf in https://github.com/reflex-dev/reflex/pull/2808
* `router.session.client_ip` more likely to be correct now
* convert text inside list_item to span and set icon display to inline by Lendemor in https://github.com/reflex-dev/reflex/pull/2860

Other Changes

* [REF-2086] Avoid "Warning: The path to the Node binary could not be found. by masenf in https://github.com/reflex-dev/reflex/pull/2803
* telemetry refactor + unit tests by Lendemor in https://github.com/reflex-dev/reflex/pull/2786
* When __REFLEX_SKIP_COMPILE == "yes" allow telemetry to fail by masenf in https://github.com/reflex-dev/reflex/pull/2881
* Custom Component Request Template by Alek99 in https://github.com/reflex-dev/reflex/pull/2853
* Benchmark with app harness by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2774
* Fix py3.8 integration test_var_operations.py by masenf in https://github.com/reflex-dev/reflex/pull/2858
* Account for imports of rx.memo components for frontend package installation by masenf in https://github.com/reflex-dev/reflex/pull/2863
* [REF-2216] Warn if windows is used with py312 by masenf in https://github.com/reflex-dev/reflex/pull/2856
* Separate `get_hooks` and `get_hooks_internal` for stable output by masenf in https://github.com/reflex-dev/reflex/pull/2710
* [REF-2219] vars: set `_was_touched` when updating cached vars by masenf in https://github.com/reflex-dev/reflex/pull/2886

New Contributors
* hjpr made their first contribution in https://github.com/reflex-dev/reflex/pull/2829
* emmakodes made their first contribution in https://github.com/reflex-dev/reflex/pull/2827

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.4.4...v0.4.5

0.4.4

Not secure
Known Issues

py3.8 and py3.9 using `rx.page` with `REDIS_URL` set:
`RuntimeError: There is no current event loop in thread 'ThreadPoolExecutor-0_0'.`

Breaking Changes

`Component._get_vars` signature change

Unlikely to affect most users; however the signature of `Component._get_vars` has changed to accept a new `include_children` parameter which should either be handled internally or passed to `super()._get_vars` if this function has been overridden in a custom component.

New signature

python
def _get_vars(self, include_children: bool = False) -> Iterator[Var]:


New Features

Expose `lang` and other attributes on `<html>` tag

* pass lang and custom_attrs from app to html root by macmoritz in https://github.com/reflex-dev/reflex/pull/2697

`rx.upload` exposes `on_drop` event trigger

Trigger upload _immediately_ after files are selected by passing an `rx.upload_files`-wrapped handler directly to `on_drop` trigger.

* Expose `on_drop` event trigger for rx.upload component. by masenf in https://github.com/reflex-dev/reflex/pull/2766

`rx.el.form` supports `on_submit` event trigger

* [REF-1368] Move common form functionality to rx.el.forms by masenf in https://github.com/reflex-dev/reflex/pull/2801

Improvements

Dependency Changes

* remove pipdeptree as reflex dep by martinxu9 in https://github.com/reflex-dev/reflex/pull/2763
* bump up httpx to >= 0.25.1 by martinxu9 in https://github.com/reflex-dev/reflex/pull/2782

Enable `/_upload` when `get_upload_url` is used

Previously, the `rx.upload` component was the only thing that resulted in the endpoint being enabled.

* Mark Upload.is_used when calling get_upload_url by masenf in https://github.com/reflex-dev/reflex/pull/2765

Update `docker-example` for more realistic deployments

* a simple dual port `Dockerfile`
* `compose.yaml` providing a separate backend container and static frontend served with automatic TLS
* Support volumes for data and uploaded files
* `compose.prod.yaml` including postgres database and redis containers
* `app.Dockerfile` for single container, single port deployment on a platform service like Render, Railway, and Google Cloud Run

* docker-example overhaul by masenf in https://github.com/reflex-dev/reflex/pull/2690
* Include app.Dockerfile for deploying to container hosting platform by masenf in https://github.com/reflex-dev/reflex/pull/2784

Improve "Stateless" app detection

Apps which import State, but do not actually use it are considered stateless.

Apps that use `rx.State.router` automatically work without defining a dummy substate.

Apps dynamically create state at runtime (1877) correctly include used dynamic substates.

* Track state usage by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2441

Better support for plain SQLAlchemy

* add support for sqlalchemy AssociationProxys by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2809

`reflex component` CLI improvements

* Build and publish in a single step
* Improved custom component template
* More comprehensive `.gitignore`

* fix template for custom comp by Lendemor in https://github.com/reflex-dev/reflex/pull/2787
* [REF-2141] Custom component command improvements by martinxu9 in https://github.com/reflex-dev/reflex/pull/2807

`EventChain` list syntax is undeprecated

It is now acceptable to pass a list of multiple `EventHandler` to an event trigger, such as `on_click`.

Bug Fixes

* Fix Padding in Accordion component
* Update accordion.py by FrankBold in https://github.com/reflex-dev/reflex/pull/2759
* Skip node install if version requirements are met
* Solved Nodejs prerequisite check by ansuzgs in https://github.com/reflex-dev/reflex/pull/2767
* Fix infinite recursion when a substate named "state" has a computed var by masenf in https://github.com/reflex-dev/reflex/pull/2778
* **Fix `/_upload` 404 and missing `on_load` handlers in production deployment**
* app_module_for_backend: wait for _compile in prod mode by masenf in https://github.com/reflex-dev/reflex/pull/2760
* [REF-2087] Better rx.progress styling integration with radix themes by masenf in https://github.com/reflex-dev/reflex/pull/2762
* Updating initialize_gitignore() to avoid modifying the encoding of the .gitignore file by cllatser in https://github.com/reflex-dev/reflex/pull/2797
* Fix tab freezing and crash when `appearance="dark"` and `theme_panel=True`
* [REF-1994] ThemePanel: clear chakra-ui-color-mode key when using theme panel by masenf in https://github.com/reflex-dev/reflex/pull/2799
* [REF-2098] Allow overlay Close components to have on_click handlers by masenf in https://github.com/reflex-dev/reflex/pull/2793

Other Changes

* Perf improvements (part 1) by masenf in https://github.com/reflex-dev/reflex/pull/2779
* Unwrap images in rx.markdown by picklelo in https://github.com/reflex-dev/reflex/pull/2789
* [AppHarness] add webdriver option arguments via env by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2783

New Contributors
* FrankBold made their first contribution in https://github.com/reflex-dev/reflex/pull/2759
* ansuzgs made their first contribution in https://github.com/reflex-dev/reflex/pull/2767

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.4.3...v0.4.4

0.4.3

Not secure
New Features

Set `initial_value` for `rx.var` and `rx.cached_var`

Provide a placeholder to avoid evaluating computed vars during compile time, for example, if they would perform database queries or other expensive operations.

python
class MyState(rx.State):
rx.var(initial_value=42)
def answer(self):
with rx.session() as session:
session.exec(...)


* Initial values for computed vars by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2670

`State.get_state` allows access to arbitrary substates from within an event handler

python
class MyState(rx.State):
answer: int = 42

class OtherState(rx.State):
async def get_answer(self):
my_state = await self.get_state(MyState)
print(f"The answer is {my_state}.answer")


Note that `get_state` is an async function and must be `await`'ed

* [REF-1988] API to Get instance of Arbitrary State class by masenf in https://github.com/reflex-dev/reflex/pull/2678

CLI for Creating and Publishing 3rd Party Components

* Add support for custom components starter by martinxu9 in https://github.com/reflex-dev/reflex/pull/2314

Improvements

Allow `accent` as a valid choice in `rx.color`

* added accent option in color by wassafshahzad in https://github.com/reflex-dev/reflex/pull/2713

Chakra no longer used when rendering Markdown

* remove chakra from markdown component_map by Lendemor in https://github.com/reflex-dev/reflex/pull/2709

Sidebar template uses all Radix components

* Lendemor/templates radix sidebar by Lendemor in https://github.com/reflex-dev/reflex/pull/2705

Disallow invalid `/api` prefix for frontend page routes

These routes conflict with what NextJS considers special "API routes" and thus do not work for reflex pages.

* [REF-1741] Disallow routes with /api prefix by masenf in https://github.com/reflex-dev/reflex/pull/2711

`rx.plotly` now accepts arbitrary `config` prop

* Add config to rx.plotly component by amirmolavi in https://github.com/reflex-dev/reflex/pull/2745

Computed Backend-only Vars

* DRAFT PR - Added code for computed backend vars by wassafshahzad in https://github.com/reflex-dev/reflex/pull/2540

Connection Pulser While Websocket is Disconnected

Only show the "Connection Error" banner after a few failed reconnection attempts.

* add pulser for connection + adjust condition for connnection_modal by Lendemor in https://github.com/reflex-dev/reflex/pull/2676

Reconnect Websocket in Stale Tabs

When a browser tab regains focus, automatically reconnect the websocket if it is disconnected.

* Reconnection Logic by Yummy-Yums in https://github.com/reflex-dev/reflex/pull/2743

Bug Fixes

* small update to color scheme high level select by tgberkeley in https://github.com/reflex-dev/reflex/pull/2712
* fix inherited backend var deps by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2715
* Avoid frontend errors with getRefValue by masenf in https://github.com/reflex-dev/reflex/pull/2691
* Add missing header variable in el components in __init__.py file. by cllatser in https://github.com/reflex-dev/reflex/pull/2732
* [REF-2101] Support default_value and default_checked on rx.el.input by masenf in https://github.com/reflex-dev/reflex/pull/2739
* fix initial value for color_mode by Lendemor in https://github.com/reflex-dev/reflex/pull/2741
* fix drawer on_open_change event by Lendemor in https://github.com/reflex-dev/reflex/pull/2755
* call default_factorys on State.reset by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2749

Other Changes
* benchmarks.yml: skip benchmarking if the DATABASE_URL is not set by masenf in https://github.com/reflex-dev/reflex/pull/2701
* do not store new_backend_vars in State class by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2707
* fix type of value2 in test_state by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2708
* pyproject.toml: bump to 0.4.2 by masenf in https://github.com/reflex-dev/reflex/pull/2724
* Update sidebar template README.md by thedatadavis in https://github.com/reflex-dev/reflex/pull/2735
* fix telemetry for init event by Lendemor in https://github.com/reflex-dev/reflex/pull/2736
* Only alert users of reflex upgrade once per project by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2731
* fix black+ruff by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2750
* add some backend var state inheritance tests by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2685
* initial attempt at writing test for urls by tgberkeley in https://github.com/reflex-dev/reflex/pull/2689

New Contributors
* thedatadavis made their first contribution in https://github.com/reflex-dev/reflex/pull/2735
* amirmolavi made their first contribution in https://github.com/reflex-dev/reflex/pull/2745

**Full Changelog**: https://github.com/reflex-dev/reflex/compare/v0.4.2...v0.4.3

0.4.2

Not secure
New Features

Syncronize LocalStorage between tabs

Pass the new `sync=True` argument to `rx.LocalStorage` to enable changes on one tab to automatically update in other tabs.

* feat: Synchronizing localStorage between tabs using browser events by abulvenz in https://github.com/reflex-dev/reflex/pull/2533

Improvements

Tuple type annotations are now respected index-wise

* fixed bug in var type for iterable types by wassafshahzad in https://github.com/reflex-dev/reflex/pull/2617

Substates are serialized individually

This allows apps with large state to only serialize and deserialize the parts of the state needed to handle a given event.

* [REF-1885] Shard Substates when serializing to Redis by masenf in https://github.com/reflex-dev/reflex/pull/2574

Better Image Serialization

Improves mime type detection for more types of PIL Image objects.

* fix image serializing - REF-1889 by mentally-gamez-soft in https://github.com/reflex-dev/reflex/pull/2550

Other Improvements

* Progress component to support `color_scheme` on component level by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2684
* ThemePanel is toggleable with bool in Theme by Lendemor in https://github.com/reflex-dev/reflex/pull/2675

Bug Fixes

* Fix SQLAlchemy list types by benedikt-bartscher in https://github.com/reflex-dev/reflex/pull/2668
* [REF-2045] Implement __reduce_ex__ for MutableProxy by masenf in https://github.com/reflex-dev/reflex/pull/2688
* Fix for setting `rx.theme(appearance="dark")` (Note: dark mode does not work with `rx.theme_panel`)
* Apply app theme color_mode/appearance as next-themes default by masenf in https://github.com/reflex-dev/reflex/pull/2654
* `rx.Upload` can now contain children components that use State.
* Make `rx.Upload` a memoization leaf by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2695

Accordion Issues

* Fix Browser Warnings
* Accordion Root Exclude `color_scheme` and `variant` props in tag by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2664
* Fix accordion not working with `rx.foreach`
* Accordion Items unique Value by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2663

Other Changes

* Use classes for allowed components by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2662
* Use sync redis client to determine prod mode worker number and add sanity check by martinxu9 in https://github.com/reflex-dev/reflex/pull/2679
* bump github action versions by martinxu9 in https://github.com/reflex-dev/reflex/pull/2680
* test_input: replace sleep with `_poll_for` by masenf in https://github.com/reflex-dev/reflex/pull/2677
* Debounce `input_ref` Truthiness check for vars by ElijahAhianyo in https://github.com/reflex-dev/reflex/pull/2692
* use direction props from radix.Flex by Lendemor in https://github.com/reflex-dev/reflex/pull/2696
* Bump axios version to 1.6.0 by timmypidashev in https://github.com/reflex-dev/reflex/pull/2699

New Contributors
* mentally-gamez-soft made their first contribution in https://github.com/reflex-dev/reflex/pull/2550

Page 2 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.