v0.2.0 Release
v0.2.0 Release Overview
This release is a near-complete rewrite/reorganization of TSFFS with several goals:
- Use SIMICS build & packaging workflow
- Enable binary/package distribution and installation without building from source
- Improve the scripting interface to TSFFS
- Remove the CLI interface to TSFFS
- Improve the SIMICS API and migrate TSFFS to use the improved (more idiomatic) bindings
Release Notes
- Migrated to using the SIMICS build system/provided makefiles for building
- Simplifies building and detection of SIMICS version/available symbols
- Removes the need for C stubs in the SIMICS module code
- Moves toward eventual binary releases
- Adds Windows host support
- Adds RISC-V (32/64 bit) and x86 guest support
- Improves the SIMICS/Python scripting interface
- Adds GitHub pages documentation at intel.github.io/tsffs/
- Added the public SIMICS HTML documentation to the GitHub Pages documentation
- Added crate rustdoc documentation for all component crates to the GitHub Pages documentation
- Rewrote the SIMICS API bindings
- AttrValue is now a first-class serialization/deserialization target with derive macros
- Idiomatic bindings for exception-throwing APIs translate SIMICS exceptions to Rust Results
- Added documentation for most SIMICS APIs in the bindings, including HAPs and Interfaces
- Added distribution builds into the CI pipeline to output installable
.ispm
packages for all modern
Linux systems. Build yourself with./scripts/build.sh
.
Merged Pull Requests
- CI fixes for public CI, update outdated dependencies by @novafacing in #16
- Bump ISPM version in setup guide by @novafacing in #18
- Do not document dependencies in CI by @novafacing in #21
- Fix another issue with CI doctest, fix typo, update FAQ by @novafacing in #22
- Fix Box::into_raw and add checks by @novafacing in #27
- 0.2.0 Release Candidate by @novafacing in #30
- Add development install documentation by @novafacing in #31
- Update logging API for deprecations in 6.0.177 by @novafacing in #32
- Add packaging for distribution by @novafacing in #33
- Add tutorials and fixes by @novafacing in #34
- Update doc build command by @novafacing in #35
- Additional doc build fixes by @novafacing in #36
- Fix permissions on documentation permissions fixing by @novafacing in #37
- Doc updates by @novafacing in #38
Full Changelog: https://github.com/intel/tsffs/commits/v0.2.0