Repository navigation
Highlights
- Modularized host integrations: Moved console, process, OS, and filesystem integrations into runtime modules, separating host-specific behavior from the VM core.
- Added configurable Cargo features: The default feature set now enables
nodeandconsole. Thenodefeature groupsprocess,os, andfs; each integration can also be enabled independently. - Added Node-style host modules: Added
process,os,fs, andfs/promisesmodules, with support for bare andnode:specifiers.process.exit()requests JavaScript execution to stop without terminating the embedding process. - Expanded platform support: Added OS runtime implementations and made platform-specific OS dependencies optional.
- Improved embeddability: Moved script evaluation and module-graph setup into the runtime layer while preserving the public
evaluate_scriptentry points. - Added a Node.js comparison benchmark: Added a standalone Python script to compare arithmetic, function-call, and object/array workloads, verify matching checksums, and report in-script and end-to-end timings.
- Updated documentation and tests: Documented the feature model and runtime APIs, and added or updated coverage for host integrations and feature configurations.
Compatibility Notes
- The former
stdCargo feature has been replaced bynode,process,os,fs, andconsolefeatures. - Legacy
sprintfandtmpfilestandard-library integrations have been removed. - The default build now enables Node-style host integrations and console support.
Version: 0.3.5
Full Changelog: v0.3.4...v0.3.5