Elide: Public Alpha #453
sgammon
announced in
Announcements
Replies: 2 comments
-
The new version, |
Beta Was this translation helpful? Give feedback.
0 replies
-
Note: There was an issue at launch with the release (actually two small issues). We've hotfixed the binaries; if you see crashes on startup related to Python or workdir resolution, simply run |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Summary
This release is provided in tandem with Elide's public alpha launch. It is a huge release full of tons of feature work, fixes, and general toil toward stability.
It's also the first release which we are inviting other developers to try. While it may not be fully stable yet, we're nearing a point where that is coming into view, and at this stage feedback, ideas, etc., are all welcome.
Installation
curl -sSL --tlsv1.2 elide.sh | bash -s -
Major features
Polyglot support. Elide supports JavaScript, Python, Ruby, WASM, and LLVM, thanks to GraalVM's language implementations. JS and Python are relatively stable; Ruby is broken in native mode, but that should be fixed in the next release.
It's crazy fast. We have a built-in server intrinsic now, powered by Netty. It is accessible from each language. You can run, say, an ExpressJS-style server, with Netty underneath, using this intrinsic. Elide can run such servers at over 500k+ RPS, depending on native transport support, etc. This is about 75x faster than Node 20, and 5x+ faster than Deno/Bun.
Isolated env. Elide applications, by default, do not have access to host environment variables. This also lands just in time to include Dotenv support, listed below, and matches Elide's closed-world I/O and system guarantees.
Isolated I/O. Elide applications do not have access to Host I/O by default. In fact, Host I/O doesn't even work in this version! (lol). Obviously it will work later, but in the meantime, applications can load "bundles" (tarballs) which become the visible filesystem for an application. Bundles will allow apps to seal their I/O reads and writes. This feature lays the groundwork for several other important features which are coming later.
Universal Dotenv support. If you have a
.env
file in your project directory, Elide will load it and apply the contents to guest VMs in all languages. JavaScript, Python, and Ruby are all supported.Known Issues
Ruby is broken in native mode. This is a known issue upstream.
Server intrinsic sometimes breaks on Linux. This is an issue with native transport libraries, which we are already working to resolve.
Express intrinsic is no longer built-in. This will shortly be distributed via a package, rendering it opt-in.
What's Changed
8946810
to741bae5
in /tools/images/native by @dependabot in chore(deps): bump debian from8946810
to741bae5
in /tools/images/native #378741bae5
to050f00e
in /tools/images/native by @dependabot in chore(deps): bump debian from741bae5
to050f00e
in /tools/images/native #387cli
by @sgammon in fix: native-image jit linkage errors incli
#395bug_report
template by @sgammon in chore: updatebug_report
template #408alpha7
by @sgammon in Pre-release Hotfixes:alpha7
#448alpha7
by @sgammon in Docs: Update atalpha7
#451Full Changelog: 1.0-v3-alpha5-b13...1.0.0-alpha7
This discussion was created from the release Elide: Public Alpha.
Beta Was this translation helpful? Give feedback.
All reactions