Skip to content

V2 - #1

Merged
hassanalsa3aka merged 8 commits into
mainfrom
v2
Sep 15, 2026
Merged

V2#1
hassanalsa3aka merged 8 commits into
mainfrom
v2

Conversation

@hassanalsa3aka

Copy link
Copy Markdown
Owner

Since the session-signing change invalidates every existing session, write this into the PR description and into a real changelog/release notes entry: what changed, why, and "if you were logged in before this deploy, you'll need to log in again." This is the one behavior-changing item worth being explicit about, not buried in a list of 11 fixes.

- Added support for API routes in the application structure, allowing for dedicated handling of API requests.
- Implemented `apiRoute` function to define API routes with a handler.
- Created middleware to handle API requests, ensuring proper session management and CSRF verification.
- Enhanced request context to support API-specific needs, including handling raw request bodies and headers.
- Updated existing build and development processes to accommodate new API directory structure.
- Introduced tests for API dispatching and module definitions to ensure reliability and correctness.
- Introduced `backendOnly` option in AppRuntimeConfig to support pure API apps.
- Added CORS middleware to handle cross-origin requests.
- Implemented `fromFastifyPlugin` to adapt Fastify plugins into Devora modules.
- Created a disposable registry for managing cleanup on module reloads.
- Enhanced scaffolding for API-only applications with appropriate configurations.
- Added tests for middleware and dispose registry functionalities.
- Updated package dependencies for CORS support.
…ispose hook

- Introduced `getStaticParams()` for dynamic routes to enable static site generation (SSG) and incremental static regeneration (ISR).
- Added `resolveStaticRoutePath()` function to substitute dynamic segments with actual values.
- Enhanced `renderStatic()` to accept `params` for dynamic routes during rendering.
- Implemented `moduleDisposePlugin` to handle cleanup of resources before module reloads in development.
- Updated documentation to reflect changes in the static-params API and module disposal mechanism.
- Added tests for the new module dispose plugin functionality.
- Add `confirmAction` utility for user confirmation prompts in CLI.
- Introduce `gitHelpers` for executing git commands and handling results.
- Create `resolveSplitTarget` to resolve application paths for split and sync operations.
- Implement `split` command to convert directories into git submodules with initial history.
- Add `status` command to report sync state across split-off applications.
- Implement `sync` command for fetching and pushing changes between main and submodule repositories.
- Enhance client-side hydration with `hydrateCsr` and `hydrateIslands` for improved streaming support.
- Introduce `renderStreaming` for streaming responses in server-rendered routes.
- Add tests for render streaming and client-side hydration behaviors.
… improve error handling

- Refactor the `split` command to use `git subtree split` for extracting commit history instead of copying files to a temporary directory.
- Update logging messages to reflect the new process and clarify user instructions.
- Ensure the temporary split branch is deleted after use, regardless of success or failure.
- Improve error messages for clarity when pushing to the remote repository.
- Update the `status` command to use the correct app names when suggesting sync commands.
- Fix bugs in the module registration process to prevent naming collisions among sibling plugins.
- Enhance the handling of dynamic routes to prevent cache poisoning and ensure proper parameter validation.
- Implement a cache clearing mechanism for streaming modules to avoid stale resolutions during development.
- Add tests for the `resolveSplitTarget` and `nameForSplitTarget` functions to ensure correct behavior and fix previously undiscovered bugs.
- Fixed caching issue where rejected island imports would permanently poison the cache, causing stale errors on retries.
- Addressed hanging connections due to unresolved Suspense boundaries by implementing a timeout mechanism.
- Ensured backpressure handling in streaming responses to prevent unbounded memory usage with slow clients.
- Corrected CSP nonce handling to properly apply to `script-src-elem` directives, preventing inline script blocking.
- Enhanced session cookie signing to include the cookie name, ensuring distinct signatures for isolated apps.
- Implemented request body size limits to prevent DoS attacks from unbounded request buffering.
- Validated domain inputs for proxy generation to prevent configuration injection vulnerabilities.
- Added tests to cover the above fixes and ensure robustness against similar issues in the future.
@netlify

netlify Bot commented Sep 15, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for devora-dashboard ready!

Name Link
🔨 Latest commit 36e9e53
🔍 Latest deploy log https://app.netlify.com/projects/devora-dashboard/deploys/6aa9c5b862d23d0009f82873
😎 Deploy Preview https://deploy-preview-1--devora-dashboard.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@vercel

vercel Bot commented Sep 15, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
devora-js-admin Ready Ready Preview Sep 15, 2026 10:24pm UTC
devora-js-dashboard Ready Ready Preview Sep 15, 2026 10:24pm UTC
devora-js-marketing Ready Ready Preview Sep 15, 2026 10:24pm UTC

@hassanalsa3aka

Copy link
Copy Markdown
Owner Author

Since the session-signing change invalidates every existing session, write this into the PR description and into a real changelog/release notes entry: what changed, why, and "if you were logged in before this deploy, you'll need to log in again." This is the one behavior-changing item worth being explicit about, not buried in a list of 11 fixes.

@netlify

netlify Bot commented Sep 15, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for devora-admin ready!

Name Link
🔨 Latest commit 36e9e53
🔍 Latest deploy log https://app.netlify.com/projects/devora-admin/deploys/6aa9c5b8dd46c200089fa3ea
😎 Deploy Preview https://deploy-preview-1--devora-admin.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@hassanalsa3aka
hassanalsa3aka merged commit 2566d7b into main Sep 15, 2026
14 of 15 checks passed
@netlify

netlify Bot commented Sep 15, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for devorajs ready!

Name Link
🔨 Latest commit 36e9e53
🔍 Latest deploy log https://app.netlify.com/projects/devorajs/deploys/6aa9c5b8834eed0008e339a6
😎 Deploy Preview https://deploy-preview-1--devorajs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

This branch was successfully deployed

3 active deployments
Preview – devora-js-admin — 36e9e53d Deployed Sep 15, 2026 by vercel[bot]
Preview – devora-js-dashboard — 36e9e53d Deployed Sep 15, 2026 by vercel[bot]
Preview – devora-js-marketing — 36e9e53d Deployed Sep 15, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant