Skip to content
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

Refactor load sequence of Extension Manager #678

Open
sybrew opened this issue Jun 14, 2024 · 1 comment
Open

Refactor load sequence of Extension Manager #678

sybrew opened this issue Jun 14, 2024 · 1 comment

Comments

@sybrew
Copy link
Owner

sybrew commented Jun 14, 2024

Extension Manager's load sequence currently loads extensions before account operations. So, if an account downgrades from Premium to Free or upgrades from Free to Premium, the interface doesn't always reflect the change state because some stuff is loaded and cached before the account changes state.

This was never an issue because these actions were invoked manually via a form, after which the user was redirected.
Since Extension Manager v2.7, we dynamically upgrade users from Free to Premium when their license reactivates. We also use this new system to downgrade users from Premium to Free.

Refactoring the order of operations would make this less of an issue.
In admin, we should always load all pending admin actions before loading in extensions.

Refactoring how we cache options and expensive operations, or even removing some caches entirely, would resolve many quirks yet to be accounted for. At the same time, we should eliminate a lot of needless DRM stuff; it's giving me a headache.

@sybrew
Copy link
Owner Author

sybrew commented Jun 14, 2024

Speaking of load sequence... We should decouple the "TSF isn't active," "TSF is active," and "TSF is active and meets version requirements" early, perhaps even in the main file. We have already done this to some degree, but the separation needs to be more apparent.

sybrew added a commit to sybrew/The-SEO-Framework-Extension-Manager that referenced this issue Jun 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant