Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

[✨] Delta Builds to Add Routes on Live Servers w/o Restart -- Moonshot #80

Closed
n8sabes opened this issue May 3, 2023 · 1 comment
Closed
Labels
[STAGE-2] incomplete implementation Remove this label when implementation is complete [STAGE-2] not fully covered by tests yet Remove this label when tests are verified to cover the implementation [STAGE-2] unresolved discussions left Remove this label when all critical discussions are resolved on the issue [STAGE-3] docs changes not added yet Remove this label when the necessary documentation for the feature / change is added [STAGE-3] missing 2 reviews for RFC PRs Remove this label when at least 2 core team members reviewed and approved the RFC implementation

Comments

@n8sabes
Copy link

n8sabes commented May 3, 2023

Is your feature request related to a problem?

There is currently no way to add (or remove) routes without rebuilding and redeploying an entire site.

Describe the solution you'd like

There should be a way to add routes without rebuilding and redeploying the entire site on a live server. New routes would be compiled against a prior build, "adding" new modules to the existing collection.

To update the live server, simply copy the new files. No restart required. This enables new routes that are truly complied to operate against an existing code base on the server, bringing them online live w/o the downtime of a restart. This could be used for automatically generated routes on the fly (via code templates or other pipelines).

pnpm deltabuild ./prior_build_path

It would also be cool if 301 / 302 / 404 could be applied to existing routes in a delta build as well.

Describe alternatives you've considered

Dynamically generating pages SSR using templates but this defeats the speed and value proposition Qwik offers.

Additional context

Other possible ways to describe a build process that extends (builds upon, or changes) a prior build:

  1. Extend Build
  2. Differential Build
  3. Delta Build
  4. Progressive Build
  5. Cumulative Build
  6. Evolutive Build

The result would behave like the head of a git repo, or worm storage system.

pnpm moonshot 😉

@gioboa
Copy link
Member

gioboa commented Oct 14, 2024

We moved this issue to qwik-evolution repo to create a RFC discussion for this.
Here is our Qwik RFC process thanks.

@gioboa gioboa transferred this issue from QwikDev/qwik Oct 14, 2024
@github-project-automation github-project-automation bot moved this to In Progress (STAGE 2) in Qwik Evolution Oct 14, 2024
@github-actions github-actions bot added [STAGE-2] incomplete implementation Remove this label when implementation is complete [STAGE-2] not fully covered by tests yet Remove this label when tests are verified to cover the implementation [STAGE-2] unresolved discussions left Remove this label when all critical discussions are resolved on the issue [STAGE-3] docs changes not added yet Remove this label when the necessary documentation for the feature / change is added [STAGE-3] missing 2 reviews for RFC PRs Remove this label when at least 2 core team members reviewed and approved the RFC implementation labels Oct 14, 2024
@QwikDev QwikDev locked and limited conversation to collaborators Oct 14, 2024
@gioboa gioboa converted this issue into discussion #156 Oct 14, 2024
@github-project-automation github-project-automation bot moved this from In Progress (STAGE 2) to Released as Stable (STAGE 5) in Qwik Evolution Oct 14, 2024
@shairez shairez removed this from Qwik Evolution Oct 15, 2024

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
[STAGE-2] incomplete implementation Remove this label when implementation is complete [STAGE-2] not fully covered by tests yet Remove this label when tests are verified to cover the implementation [STAGE-2] unresolved discussions left Remove this label when all critical discussions are resolved on the issue [STAGE-3] docs changes not added yet Remove this label when the necessary documentation for the feature / change is added [STAGE-3] missing 2 reviews for RFC PRs Remove this label when at least 2 core team members reviewed and approved the RFC implementation
Projects
None yet
Development

No branches or pull requests

2 participants