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

SSR: No support for server-side router-based rendering (React) #112

Closed
Tracked by #89 ...
sgammon opened this issue Dec 8, 2022 · 0 comments · Fixed by #106 or #116
Closed
Tracked by #89 ...

SSR: No support for server-side router-based rendering (React) #112

sgammon opened this issue Dec 8, 2022 · 0 comments · Fixed by #106 or #116
Labels
bug Something isn't working module:graalvm Modules, changes, and issues relating to GraalVM

Comments

@sgammon
Copy link
Member

sgammon commented Dec 8, 2022

No description provided.

@sgammon sgammon mentioned this issue Dec 8, 2022
7 tasks
@sgammon sgammon changed the title No support for server-side router-based rendering (React) SSR: No support for server-side router-based rendering (React) Dec 8, 2022
@sgammon sgammon linked a pull request Dec 8, 2022 that will close this issue
21 tasks
@sgammon sgammon added bug Something isn't working module:graalvm Modules, changes, and issues relating to GraalVM labels Dec 8, 2022
@sgammon sgammon linked a pull request Jan 12, 2023 that will close this issue
sgammon added a commit that referenced this issue Jan 13, 2023
Complete rewrite of the JavaScript VM (now on v3), with new support for native Kotlin-backed intrinsics, virtual file systems, and more.

Related PRs:
- Base: #106 

Related issues:
- Fixes #80
- Fixes #90
- Fixes #92
- Fixes #99
- #89 
  - Fixes #107 
  - Fixes #108 
  - Fixes #112 

## Changelog

- Add pooling for VM contexts backed by fixed thread pool
- Rewrite and cleanup execution bridge into VM
- Simplify coordinated use of coroutines + threads
- Pre-warm set of contexts (when directed)
- Prep for Java-native intrinsics
- Upgrade Kotlin -> ~~`1.8.0-RC`~~ `1.8.0`
- Upgrade Gradle -> `8.0` (nightly testing)
- Upgrade all eligible dependencies
- Type-aliased annotations
  - DI engine (`jakarta.inject.*`)
  - Micronaut annotations (`io.micronaut.annotations.*`)
- Proto refactors for `alpha2`
  - Transition all packages to `elide.*`
  - Proto3 generator structure
- Improve `base` module
  - Increase supported target set
- Unify RPC modules
- Introduce new `core` module
  - Move pure-Kotlin core code
  - Investigate providing a native entrypoint
  - Increase supported target set
    - `wasm32`
    - iOS/macOS native targets
    - Linux native targets
    - Windows native targets
- New CLI distribution
  - Command line interface and structure
  - `elide run` / `elide shell`
    - Interactive execution of JS
    - File (script) execution
    - Code snippet execution
    - Execute from `stdin`
    - Architecture support
      - x86 Darwin
      - arm64 Darwin
      - x86 Linux
    - JS execution environment
      - JS VM v3
      - Configurability of VM from CLI
      - Intrinsics installed
      - Runtime installed
  - CLI distribution
    - One-line installer
- New intrinsics
  - Structure + testing to load/resolve intrinsics
  - Validate global names
  - Mount to VM
  - Console
  - Base64
  - URL
  - Errors
    - `ValueError`
    - `TypeError`
    - Exception bridge
- VM Thread synchronization
  - Manual (Java threads)
  - Disruptor support
- Stable guest VM implementation
  - API surface definitions
  - New VM invocation interface
    - Workers interface compatibility
- Internal VM changes
  - Warmup phase for contexts
  - No modification of userland code
  - JS module support
- Model support
  - Introduce support for Flatbuffers
  - Translate model to flatbuffers
- New runtime facade
  - Bazel/Closure/TypeScript/J2CL
  - Ship optimized/minified bundle
  - Embed and load in VM on context init
  - Mark sources for runtime as internal
  - Rules to test Elide from a Bazel build
- Repository rules to download an Elide distribution from a Bazel build
  - Facade types and interface
    - `console`
    - `base64`
- VFS support for guest VMs
  - Write Proto model definitions
  - Select implementation and plan structure
  - Implement VFS and provide to VM
    - VFS from plain tarball
    - VFS from compressed tarball
- JS VM: Imports & CJS
  - Support for `require`
  - Support for `import`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working module:graalvm Modules, changes, and issues relating to GraalVM
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant