Releases: cartesi/machine-emulator
Releases · cartesi/machine-emulator
v0.19.0-test2
v0.19.0-test1
Test tag for packaging.
v0.18.2-test1
Testing new add-created-files.diff
that should use (the default) -p1
instead of -p0
.
v0.18.1
v0.18.0
Added
- Makefile target
create-generated-files-patch
to generateadd-generated-files.diff
patch - CI now creates and uploads
add-generated-files.diff
as artifact on tagged releases - Added unversioned symlinks to shared libraries in src directory
Changed
- Updated test rootfs to 0.16.0
- Updated outputs merkle height (for output unification v2)
- Updated makefile to make it compatible with a homebrew formulae
- Changed listening port to close immediately in JSONRPC shutdown
- Bundled nlohmann JSON into third party directory
- Rewritten jsonrpc-remote-machine using Boost ASIO
- Updated test data due to input contract prev_randao field
- Bumped MARCHID version to 18
- Changed compile to release mode with debug info by default
- Changed layout of uarch json logs
Fixed
- Fixed regression saving snapshots on first machine yield
- Fixed TIME_WAIT connections accumulation on Linux
- Fixed Homebrew build
- Ensured make clean target works with no submodules
- Fixed TLB reads while computing hash with uarch
- Fixed rollback remote machine for rejected advance state via the cli
- Fixed prefix when brew is present in the system
- Fixed system error when loading or saving snapshots
v0.17.0
Added
- Added
--no-rollback
and--remote-fork
options - Added
rebind()
API to JSONRPC - Added
commit()
API for discarding machine snapshots - Added
send_cmio_response
function - Added integration tests
- Added C API to translate virtual address
- Added optimizations for
fdiv
andfsqrt
instructions for uarch - Added
--env
,--workdir
, and--hostname
command line options - Added new runtime option to skip storing machine root hash
- Introduced the
--user
command line option - Used Sv39 address spacing by default to support nodejs and improve performance
- Decoded uarch ECALL and EBREAK
- Added support for VirtIO
- Added VirtIO command line options
- Added support for binding different host addresses in VirtIO net device
- Added iunrep CSR for unreproducible machines, VirtIO configs to C/Lua APIs, VirtIO net device, VirtIO 9P device, VirtIO console device, and PLIC device
- Made
--volume
create guest directory before mounting
Changed
- Simplified solidity step generation
- Split reasons for manual and auto yields
- Reworked rollup and renamed it to cmio
- Optimized out state accessor initialization in uarch interpret
- Replaced uarch mmio with ecall
- Included uarch-reset log in catalog.json
- Combined uarch state accessors
Removed
- Removed gRPC features
- Removed unmaintained and broken benchmarks script
Fixed
- Fixed ilog2 function which was always returning 0
- Aligned output merkle tree depth with solidity
- Corrected compile error with
slirp=no
on Linux - Allowed using
--network
in read-only filesystems - Resolved compile errors with WASI toolchain
- Corrected
reset_uarch
documentation - Removed trailing comma in
jsonrpc-discover.json
- Fixed Homebrew libslirp options
- Resolved build issue on macOS with macports lua-luarocks
- Set
yield_data
typo - Fixed
EADDRNOTAVAIL
on rapid successive requests
Continuous Integration
- Sped up uarch testing in CI.
- Implemented vm.mmap_rnd_bits workaround for the ubuntu-22.04 runner.
v0.16.1
Fixed
- Fixed amd64 debian package build in release mode
Changed
- Made uarch compilation independent of release/debug build settings