Commit ebe19ff
Migrate to Reflex plugins and remove deprecated rx.Model usage (#322)
* counter: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* json-tree: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* linkinbio: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* overkey: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* reflexle: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* snakegame: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* todo: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* upload: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* dalle: move App(theme=...) to RadixThemesPlugin in config
* flux-fast: move App(theme=...) to RadixThemesPlugin in config
* chat_v2: replace deprecated rx.Model with sqlmodel.SQLModel and add RadixThemesPlugin
* clock: add explicit set_zone setter, move theme to RadixThemesPlugin
* basic_crud: replace rx.Model with SQLModel, add set_url_query setter, add RadixThemesPlugin
* data_visualisation: replace rx.Model with SQLModel, move theme to RadixThemesPlugin
* form-designer: replace rx.Model with SQLModel, add set_options_editor_open setter, move theme to RadixThemesPlugin
The remaining rx.Model DeprecationWarning originates from reflex_local_auth.LocalUser, which is external to this repo.
* github-stats: add explicit set_username setter, add RadixThemesPlugin
* local-component: add explicit set_who setter, add RadixThemesPlugin
* lorem-stream: replace reflex-chakra circular_progress with rx.progress, add RadixThemesPlugin
* quiz: replace reflex-chakra circular_progress with rx.progress, move theme to RadixThemesPlugin
* translator: replace rx.Base with rx.PropsBase, add explicit setters, move theme to RadixThemesPlugin
* traversal: add explicit set_option setter, add RadixThemesPlugin
* twitter: replace rx.Model with SQLModel, add explicit setters, move theme to RadixThemesPlugin
* nba: move App(theme=...) to RadixThemesPlugin in config
* nba-proxy: add RadixThemesPlugin to config matching nba app
* ag_grid_finance: add RadixThemesPlugin to fix potential implicit Radix Themes deprecation
* azure_auth: add RadixThemesPlugin to fix implicit Radix Themes deprecation
* check_export: replace reflex pin in requirements.txt with REFLEX_DEP
Munge requirements.txt in-place so that the existing 'reflex' (or
'reflex[db]') pin is rewritten to use REFLEX_DEP as a direct reference.
This preserves extras such as [db] that the app needs to function,
instead of installing a stock reflex alongside the requirements file.
* basic_crud: require reflex[db] extra and set explicit db_url
This app uses rx.session, which depends on the optional [db] extra and
the (previously default) sqlite db_url.
* chat_v2: require reflex[db] extra and set explicit db_url
This app uses rx.session, which depends on the optional [db] extra and
the (previously default) sqlite db_url.
* data_visualisation: require reflex[db] extra
This app uses rx.session, which depends on the optional [db] extra.
db_url is already configured via DATABASE_URL env (or sqlite default).
* form-designer: require reflex[db] extra
This app uses rx.session, which depends on the optional [db] extra.
db_url is already configured.
* twitter: require reflex[db] extra and set explicit db_url
This app uses rx.session, which depends on the optional [db] extra and
the (previously default) sqlite db_url.
* counter: drop unused db_url from config
* snakegame: drop unused db_url from config
* todo: drop unused db_url from config
* upload: drop unused db_url from config
* check_export: install reflex from a local checkout of reflex-dev/reflex
The previous approach only pinned the top-level reflex package to the
git URL, so pip still resolved the monorepo's subpackages (reflex-base,
reflex-components-*, etc.) from PyPI. Check out the reflex repo to a
sibling directory and rewrite the requirements pin to a file:// URL of
that checkout so pip can pull the subpackages from the same source.
The workflow_dispatch input is renamed to reflex_ref since we now drive
the install from a git ref rather than a pip spec.
* check_export: fetch full history and tags for reflex checkout
reflex uses dynamic versioning derived from git tags, so a shallow
checkout without tags would fail to compute the package version.
* check_export: use uv pip to install requirements
uv understands workspace source declarations in reflex's pyproject.toml,
which pip ignores. This should resolve reflex's subpackages from the
local checkout instead of pulling them from PyPI.
* form-designer: suppress upstream rx.Model deprecation from reflex_local_auth
reflex_local_auth.LocalUser still subclasses the deprecated rx.Model,
which emits a console.deprecate() warning at import time. Until the
upstream package migrates to SQLModel, monkey-patch console.deprecate
to silence that specific feature name.
* Revert "form-designer: suppress upstream rx.Model deprecation from reflex_local_auth"
This reverts commit e48df0a.
* form-designer: bump reflex-local-auth to >=0.5.0
0.5.0 drops rx.Model in favor of SQLModel, removing the lingering
DeprecationWarning that previously came from the upstream LocalUser.
* azure_auth: use public consumers tenant and example client id
Switches to the shared Microsoft consumers tenant
(9188040d-6c67-4c5b-b112-36a304b66dad) and a public example client id
so the app's OIDC discovery succeeds without a private tenant.
* ag_grid_finance: add explicit set_grid_theme setter
The auto-generated set_* setter no longer exists in current Reflex;
provide an explicit @rx.event handler.
* form-designer: use sqlmodel.select in tests
rx.Model.select was removed alongside rx.Model itself; switch to the
standard sqlmodel.select(Model).where(...) form.
* bump reflex minimum to >=0.9.2 across apps using RadixThemesPlugin
RadixThemesPlugin was introduced in 0.9.2; apps whose rxconfig.py
references it need the matching minimum version.
* counter: drop AppHarness.get_state assertions from tests
AppHarness no longer exposes get_state(); the frontend already asserts
the same count values via poll_for_content, so the backend-state checks
were redundant.
* counter: restore session-storage token polling
Polling for the session-storage token confirms the frontend has
connected to the backend before the test exercises the UI.
* form-designer: use sqlmodel.select in app code
rx.Model.select was removed alongside rx.Model itself; switch the Form
and Response queries to the standard sqlmodel.select(Model).where(...)
form to match the tests.
* check_export: drop local reflex checkout, use git URL with uv
uv pip install understands workspace declarations in a git-fetched
reflex source dist, so we no longer need a sibling checkout of
reflex-dev/reflex to pull in the monorepo subpackages.
* form-designer: use rx.model.migrate() for db setup
Replaces the hand-rolled SQLModel.metadata.create_all(get_engine())
with the public helper. Also sets alembic's path_separator=os to
silence the unrelated alembic DeprecationWarning that the helper
surfaces.
* Revert "check_export: drop local reflex checkout, use git URL with uv"
This reverts commit e24fa3f.
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent b70ea01 commit ebe19ff
85 files changed
Lines changed: 293 additions & 156 deletions
File tree
- .github/workflows
- ag_grid_finance
- ag_grid_finance
- azure_auth
- azure_auth/auth
- basic_crud
- basic_crud
- chat_v2
- chat_v2/page_chat/chat_messages
- clock
- clock
- counter
- tests
- dalle
- dalle
- data_visualisation
- data_visualisation
- flux-fast
- flux_fast
- form-designer
- form_designer
- components
- pages
- tests
- github-stats
- github_stats
- json-tree
- linkinbio
- local-component
- local_component
- lorem-stream
- lorem_stream
- nba-proxy
- nba
- nba
- overkey
- quiz
- quiz
- reflexle
- snakegame
- todo
- translator
- translator
- traversal
- traversal
- twitter
- twitter
- state
- upload
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
9 | 10 | | |
10 | 11 | | |
11 | 12 | | |
12 | | - | |
13 | | - | |
| 13 | + | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
38 | 46 | | |
39 | 47 | | |
40 | 48 | | |
| |||
57 | 65 | | |
58 | 66 | | |
59 | 67 | | |
| 68 | + | |
60 | 69 | | |
61 | | - | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
62 | 87 | | |
63 | 88 | | |
64 | 89 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
32 | 36 | | |
33 | 37 | | |
34 | 38 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
71 | 79 | | |
72 | 80 | | |
73 | 81 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | | - | |
8 | 7 | | |
9 | | - | |
10 | | - | |
| 8 | + | |
| 9 | + | |
11 | 10 | | |
12 | 11 | | |
13 | 12 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
0 commit comments