Commit Graph

2131 Commits

Author SHA1 Message Date
Thomas Brandého
858a85a4dc
rename private fields with leading underscore in App ()
* rename private fields with leading underscore in App

* fix constants API

* fix public API for some attributes of App()

* fix conflicts properly 🙈

* remove extra private

---------

Co-authored-by: Masen Furer <m_github@0x26.net>
Co-authored-by: Khaleel Al-Adhami <khaleel.aladhami@gmail.com>
2025-01-23 15:28:56 +01:00
Ahmad Hakim
c58db4d005
pie chart type annotation fix ()
Co-authored-by: pourhakimi <84860195+pourhakimi@users.noreply.github.com>
2025-01-23 15:52:25 +02:00
Khaleel Al-Adhami
3aaa26c82f
attempt to upgrade windows latest python version ()
* attempt to upgrade windows latest python version

* remove that silly one
2025-01-22 17:56:41 -08:00
Masen Furer
6d314d10c5
Fix setting default color mode in dev mode ()
* Fix setting default color mode in dev mode

Without this, the last_compiled_timestamp local storage never gets set because
it's always `null` until it gets set.

* test_client_storage: also pop `theme` key from next-themes
2025-01-22 15:30:11 -08:00
Elijah Ahianyo
1ca36fa6c1
[ENG-1796]reflex rename- B ()
* `reflex rename`- B

* add unit tests

* precommit

* dont need this comment

* move loglevel

* calm down, darglint

* add current dir to sys path
2025-01-22 15:26:12 -08:00
Masen Furer
818788da63
Do not track compile in posthog metrics () 2025-01-22 15:23:34 -08:00
Khaleel Al-Adhami
0139cab13f
refactor client state to restore prior API ()
* refactor client state to restore prior API

* maybe add that
2025-01-22 15:23:06 -08:00
Khaleel Al-Adhami
8dea682781
update bun to 1.2.0 () 2025-01-22 15:19:25 -08:00
Khaleel Al-Adhami
1106aae76e
remove integration screenshots () 2025-01-22 15:18:35 -08:00
Masen Furer
109b272bc2
Bump frontend and backend deps ()
* relock backend deps

* bump frontend library versions

* go back to react 18.3

* revert to react 18.3.1 (as it was before)

* reflex-web keep reflex from current revision, rather than main

* relock backend deps (again)

* don't check ag-grid version on main repo

* config_path is passed via `extra` to avoid pyright error when None

* bump next again

---------

Co-authored-by: Lendemor <thomas.brandeho@gmail.com>
2025-01-22 15:18:05 -08:00
Thomas Brandého
4c2b2ed1c6
removing deprecated features for 0.7.0 and removing py3.9 support ()
* remove deprecated features and support for py3.9

* remove other deprecated stuff

* update lock file

* fix units tests

* relock poetry

* fix _replace for computed_var

* fix some merge typo

* fix typing of deploy args

* fix benchmarks.yml versions

* console.error instead of raising Exception

* fix tests

* ignore lambdas when resolving annotations

* simplify redirect logic in event.py

* more fixes

* fix unit tests again

* give back default annotations for lambdas

* fix signature check for on_submit

* remove useless stuff

* update pyi

* readd the getattr

* raise if log_level is wrong type

* silly goose, loglevel is a subclass of str

* i don't believe this code

* add guard

---------

Co-authored-by: Khaleel Al-Adhami <khaleel.aladhami@gmail.com>
2025-01-22 11:54:37 -08:00
Khaleel Al-Adhami
db13fe65b8
reflex export environment should default to prod ()
* reflex export environment should default to prod

* what

* wat

* what is this silly goose
2025-01-22 11:11:47 -08:00
Khaleel Al-Adhami
8de14d4384
Fix recharts min width/height () 2025-01-22 11:11:25 -08:00
Thomas Brandého
728607643f
attempt to fix usage when volta is installing node ()
* attempt to fix usage when volta is installing node

* use absolute() instead of resolve()

* fix stuff
2025-01-22 16:58:33 +01:00
Khaleel Al-Adhami
a923f657ac
retry failed tests ()
* retry failed tests

* retry even more
2025-01-22 16:27:17 +01:00
Ahmad Hakim
80966dbff0
[ENG-4406] cell component wrapper ()
* cell component wrapper

* add pyi files changes

---------

Co-authored-by: pourhakimi <84860195+pourhakimi@users.noreply.github.com>
Co-authored-by: Lendemor <thomas.brandeho@gmail.com>
2025-01-22 09:00:43 +02:00
Elijah Ahianyo
048416163d
Remove token check in reflex deploy ()
This logic has been moved upstream to reflex-hosting-cli
2025-01-21 13:28:05 -08:00
Khaleel Al-Adhami
bea266b8ed
make object var handle all mapping instead of just dict ()
* make object var handle all mapping instead of just dict

* unbreak ci

* get it right pyright

* create generic variable for field

* add support for typeddict (to some degree)

* import from extensions
2025-01-21 13:14:02 -08:00
Elijah Ahianyo
abaaa22adb
Allow deploy with project name and app id ()
* `reflex deploy --project-name`

* add app id as well

* config file update

* Update reflex/reflex.py

Co-authored-by: Masen Furer <m_github@0x26.net>

* Update reflex/reflex.py

Co-authored-by: Masen Furer <m_github@0x26.net>

---------

Co-authored-by: simon <simon@reflex.dev>
Co-authored-by: Masen Furer <m_github@0x26.net>
2025-01-21 13:06:12 -08:00
Khaleel Al-Adhami
0c70146013
check frontend version on connect ()
* check frontend version on connect

* do something a bit silly

* thanks masen

* just delete the tests you don't pass
2025-01-21 13:05:35 -08:00
Masen Furer
212b2d4af9
Skip saving page components when skipping compile output ()
Obviously we still have to evaluate the pages to make sure we know about all
states, but not saving them to `App.pages` dict reduces high-line memory usage
for backend-only process from ~900Mb to ~530Mb on reflex-web.
2025-01-21 13:05:04 -08:00
Khaleel Al-Adhami
4dc106545b
add defensive checks against data being funny () 2025-01-20 14:00:08 -08:00
Thomas Brandého
2855ed4887
add some of the TRY rules () 2025-01-20 13:58:17 -08:00
Thomas Brandého
9c019a65d5
check for dict passed as children for component () 2025-01-20 13:55:53 -08:00
Elijah Ahianyo
268effe62e
[ENG-4134]Allow specifying custom app module in rxconfig ()
* Allow custom app module in rxconfig

* what was that pyscopg mess?

* fix another mess

* get this working with relative imports and hot reload

* typing to named tuple

* minor refactor

* revert redis knobs positions

* fix pyright except 1

* fix pyright hopefully

* use the resolved module path

* testing workflow

* move nba-proxy job to counter job

* just cast the type

* fix tests for python 3.9

* darglint

* CR Suggestions for  ()

* reload_dirs: search up from app_module for last directory containing __init__

* Change custom app_module to use an import string

* preserve sys.path entries added while loading rxconfig.py

---------

Co-authored-by: Masen Furer <m_github@0x26.net>
2025-01-20 10:12:54 -08:00
Thomas Brandého
4da32a122b
allow dynamic icons name ()
* allow dynamic icons name

* handle literal vars

* clean up code
2025-01-17 16:43:11 -08:00
Thomas Brandého
6e546526b4
computed var default to cache=True ()
* computed var default to cache=True

* fix lifespan integration tests

* fix redis test
2025-01-16 21:49:54 +01:00
Khaleel Al-Adhami
c8de356d98
cast return_expr to Var all the time () 2025-01-16 20:22:56 +01:00
Thomas Brandého
e8dd0ae47d
don't need node when --backend_only is used () 2025-01-15 15:57:50 -08:00
Khaleel Al-Adhami
cb24492371
fix boolean to boolen comparisons ()
* fix boolean to boolen comparisons

* fixes 

* fix tests
2025-01-15 14:23:45 -08:00
Khaleel Al-Adhami
b50b7692b2
improve type support for .get_state ()
* improve type support for .get_state

* dang it darglint
2025-01-15 14:21:33 -08:00
Thomas Brandého
9fe8e6f1ce
bump nextJS to v15 ()
* bump nextJS to v15

* make turbopack depends on env var
2025-01-15 14:20:04 -08:00
Masen Furer
fbf9524a6c
Show file and line number in deprecation warnings ()
* Show file and line number in deprecation warnings

* Exclude modules/packages by import

Less bespoke method of considering some packages to be part of the framework
and passed over when finding user code.
2025-01-15 14:19:11 -08:00
Khaleel Al-Adhami
caf29c3680
put import at the top of dynamic component evaluation () 2025-01-15 14:17:58 -08:00
Masen Furer
e8a7112249
[ENG-4383] Handle special float values on frontend ()
Add a test case to `test_computed_vars.py` which renders a list of special floats.

Fix 
2025-01-15 13:04:15 -08:00
Thomas Brandého
f69be58f59
small fix for color_mode_button () 2025-01-14 15:02:54 +01:00
Masen Furer
1e7a37bcf9
[ENG-4351] Add mapping for lucide icons ()
* [ENG-4351] Add mapping for lucide icons

For icon names that don't auto-translate to the correct lucide tag name,
provide manual override.

Fix 

* account for new mapping in unit tests
2025-01-10 15:23:16 -08:00
Masen Furer
427d7c56ab
Revert "[ENG-4005] Proxy backend requests on '/' to the frontend ()" ()
This reverts commit 438b31f270.
2025-01-09 16:30:49 -08:00
Masen Furer
fe9c02062d
EventChain.create accepts arbitrary kwargs ()
Pass _var_data when creating LiteralVar

Partial fixes for 
2025-01-09 16:14:38 -08:00
Khaleel Al-Adhami
79611abdab
make that one line better () 2025-01-08 17:16:38 -08:00
Masen Furer
4c97072a3c
pyproject.toml: bump to 0.7.0dev1 for further development () 2025-01-08 09:37:33 -08:00
Masen Furer
5d877d54d0
Use older python versions for macos actions ()
Use python versions that have a darwin/arm64 build for use with the newer
(faster) macos actions runners
2025-01-07 15:46:26 -08:00
Khaleel Al-Adhami
0ad0a84ee1
fix recursive UI ()
* fix recursive UI

* get it right pyright

* dang it darglint
2025-01-07 15:11:38 -08:00
Khaleel Al-Adhami
880975ae94
improve client state ()
* improve client state

* no comma

* update python for unit tests

* overwrite it for windows

* bump other python versions
2025-01-07 14:41:03 -08:00
Masen Furer
93245ef143
[ENG-4255] Code blocks lead to redefined const in web page ()
Instead of potentially defining `_LANGUAGE` constant twice in a component,
simply pass the language prop directly to the hook generator function.

If no language is passed, then it defaults to `_LANGUAGE`, which continues to
work for markdown component_map use case.
2025-01-07 13:20:25 -08:00
Masen Furer
5f169bc884
test_lifespan: stop periodic events ()
avoid lingering events after getting the information we came for
2025-01-07 13:20:10 -08:00
Masen Furer
08d9fbf9bc
unbreak link _hover ()
* unbreak link _hover

* add a test to catch the error

* change tmp path for harness

* add () to fixture

* add spacer to avoid initial hover

* only install chromium browser for faster ci

---------

Co-authored-by: Lendemor <thomas.brandeho@gmail.com>
2025-01-07 10:35:36 -08:00
Masen Furer
72d7616726
Enable automatic retry on redis errors ()
* Enable automatic retry on redis errors

ExponentialBackoff 3x retry for BusyLoadingError, ConnectionError, and TimeoutError

* retry on any redis error

* Use default single-retry for any RedisError

Using the default Retry means that async and sync clients get the appropriate type of Retry
2025-01-07 10:24:43 -08:00
Masen Furer
eae15e3a83
poetry 2.0.0 compatibility ()
Remove `packages` key, since this project uses the "default" package layout, so
this key isn't needed.
2025-01-06 14:35:45 -08:00
Thomas Brandého
9fafb6d526
use position in vardata to mark internal hooks ()
* use position in vardata to mark internal hooks

* update all render to use position

* use macros for rendering

* reduce number of iterations over hooks during rendering

* cleanup code and add typing

* add __future__

* use new macros to render component maps in markdown

* remove calls to _get_all_hooks_internal

* fix typo

* forgot to replace this

* unnecessary expand in utils.py
2025-01-06 13:06:56 -08:00