-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[IMPL] - Custom backend server and improved configuration capabilities #4337
Open
KronosDev-Pro
wants to merge
49
commits into
reflex-dev:main
Choose a base branch
from
KronosDev-Pro:add-custom-backend-config
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
[IMPL] - Custom backend server and improved configuration capabilities #4337
KronosDev-Pro
wants to merge
49
commits into
reflex-dev:main
from
KronosDev-Pro:add-custom-backend-config
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
hm... why not just use Pydantic Config package? |
Basically, |
* require typing_extensions >= 4.6.0 TypeAliasType was added in 4.6 https://github.com/python/typing_extensions/blob/main/CHANGELOG.md#release-460-may-22-2023 * update lock file, even though nothing has changed
Co-authored-by: simon <[email protected]>
* make list suggestions work * fix pyi
* bump some versions * update ruff to 0.7.4 * bump tailwind version * relock deps --------- Co-authored-by: Masen Furer <[email protected]>
* fix: do not allow instantiation of State mixins Closes reflex-dev#4343 * improve error message for ComponentState mixins * fix typo Co-authored-by: Masen Furer <[email protected]> --------- Co-authored-by: Masen Furer <[email protected]>
* add typed dict type checking * technically it has to be a mapping, not specifically a dict
* Add datetime to moment * Remove recharts update * Support other formats * simplify * Precommit * PYI * change imports for pyi compat --------- Co-authored-by: Alek Petuskey <[email protected]> Co-authored-by: Masen Furer <[email protected]>
* ignore rxconfig not in cwd * no type ignore * resolve paths * Remove rxconfig module from sys.modules cache when reloading * modify sys path * add try except * refactor inner function --------- Co-authored-by: Masen Furer <[email protected]>
* fix appearance broken by reflex-dev#3812 * fix again to pass tests
) The `rich` module should be set to `None`, indicating that rich should not be used. Setting it to `False` worked before, but recently added code in typer fails when checking `if rich is not None`. ref: fastapi/typer#847
…v#4410) In some cases, a routing failure can cause the failure to be cached. When the router has a cached failure, pushing such a route will never call routeChangeComplete, and thus on_load event will never be fired for that route. Purposely clearing the error from the router allows the page to properly load on subsequent attempts without refreshing the app.
Compiling pages in separate threads can result in `sys.path` being cleared, which breaks subsequent imports.
* subtract 1 arg if the method is a bound method * fix it early in user_args * only bound methods pls * add test
* Handle Var passed to `rx.toast` If the user provides a `Var` for `message` then apply it as `props["title"]` to avoid a var operations error. * remove unnecessary parentheses * remove weird hacks * get it right pyright --------- Co-authored-by: Khaleel Al-Adhami <[email protected]>
When an event/event spec is marked as "temporal", it will not be queued unless the backend is up. This can be used to prevent periodic events (like from `rx.moment`) from queueing up while the backend is down, and then stampeding when the backend comes up and the queue is drained. It can be used to avoid processing many periodic events at once when the app is only expecting to process such an event every so often.
* Rework Init workflow * minor format * refactor * add comments * fix pyright alongside some improvements * add demolink for blank template * fix darglint * Add more templates and keep template name in kebab case * revert getting other templates since we'll use the submodules approach * remove debug statement * Improvements based on standup comments * Add redirect logic * changes based on new flow --------- Co-authored-by: Masen Furer <[email protected]>
…x-dev#4338) * [ENG-3953] Support pydantic BaseModel (v1 and v2) as state var Provide serializers and mutable proxy tracking for pydantic models directly. * conditionally define v2 serializer Co-authored-by: Khaleel Al-Adhami <[email protected]> * Add `MutableProxy._is_mutable_value` to avoid duplicate logic * Conditionally import BaseModel to handle older pydantic v1 versions * pre-commit fu --------- Co-authored-by: Khaleel Al-Adhami <[email protected]>
* wip rx._x.asset improvements * only add symlink if it doesn't already exist * minor improvements, add more tests * use deprecated Generator for python3.8 support * improve docstring * only allow explicit shared, only validate local assets if not backend_only * fix darglint * allow setting backend only env to false. * use new is_backend_only in assets * ruffing * Move to `rx.asset`, retain old API in `rx._x.asset` --------- Co-authored-by: Masen Furer <[email protected]>
* update cli version * little change man * thats ruff * v bump --------- Co-authored-by: simon <[email protected]>
…Dev-Pro/reflex into add-custom-backend-config
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Idea
Customize the backend server configuration as you like, and create a complete new backend server support.
Example
We can define which
BackendServer
to use fordevelopment
andproduction
modes and thus customize the configuration (all parameters for eachBackendServer
are the actual parameters corresponding to the web server involved).We can also create a customized
BackendServer
with theCustomBackendServer
class, such asGranianBackendServer
All Submissions:
Type of change
New Feature Submission:
Changes To Core Features: