Releases: Twinklebear/ispc-rs
Releases · Twinklebear/ispc-rs
2.0.1
What's Changed
- CI: Drop unnecessary
actions-rs
toolchain setup by @MarijnS95 in #24 - ci: Test binaries on latest ISPC 1.20 release by @MarijnS95 in #25
- README: Fix CI badge and add docs.rs/license badge by @MarijnS95 in #26
- compile: Replace ancient
gcc
crate withcc
by @MarijnS95 in #28 - Add dependabot configuration by @MarijnS95 in #29
- Update bindgen requirement from 0.61.0 to 0.69.1 by @dependabot in #30
- MacOS: Install
ispc
by downloading versioned release from GitHub by @MarijnS95 in #31
Thanks @MarijnS95 for all the great contributions!
Full Changelog: 2.0.0...2.0.1
2.0.0
Breaking Changes
- compile: Upgrade to
bindgen 0.61
and useBuilder
withClone
by @MarijnS95 in #22- API Change: You can now pass a
bindgen::Builder
directly to theispc::Config
instead of having to pass theispc::BindgenOptions
. This allows applications to set any options supported by bindgen as needed for their use case, however some care should be taken to not break the bindings being generated. If builds start to fail after adding some bindgen options, they may be conflicting or introducing some error to the binding generation step.
- API Change: You can now pass a
Key Changes
- Make
Config::compile
not have side effects on theConfig
(5dbda31).- API Change: The
Config
will no longer save internal state about a specific library compilation, allowing a singleConfig
to be created and used to compile multiple libraries that share the same build options. This will likely not break existing code, but will allow applications to potentially simplify their build scripts by re-usingConfig
s, so I want to highlight it here in the release notes.
- API Change: The
What's Changed
- Add missing
edition = "2021"
tocompile
andruntime
crates by @MarijnS95 in #21 - Run clippy in the CI with warnings disallowed by @MarijnS95 in #23
Thanks @MarijnS95 !
Full Changelog: 1.1.0...2.0.0
1.1.0
Changes
- @MarijnS95 #20 Added API to pass through an allowlist of functions to Bindgen. This is done by setting the
bindgen_options
option on theispc_compile::Config
. This sets theallowlist_function
option in the Bindgen settings for generating the header: https://docs.rs/bindgen/latest/bindgen/struct.Builder.html#method.allowlist_function , enabling applications to filter out undesired items from the generated Rust module file. See the simple example for an example of using this feature.
Fixes
- @MarijnS95 #17 replace the yanked
aligned_alloc
crate withstd::alloc
- @MarijnS95 #19 update
image
dependency to address CVE in dependency, #18 cleanups to formatting and build config - Update to Rust edition 2021
Thanks @MarijnS95 !
1.0.14
Changes
ispc_compile
now supports building optimized builds with debug symbols. This can be done by creating theispc::Config
(orispc_compile::Config
object and setting the debug and optimization flags for the ISPC library being built.
1.0.13
Changes
Runtime
- @KYovchevski Replace usage of deprecated
aligned_alloc
withstd::alloc
#15 . Thanks @KYovchevski !
1.0.12
Changes
- @Danielmelody: Add Clone, Copy and PartialEq for enum TargetISA #14. Thanks @Danielmelody !
Release 1.0.11
Changes
- @jelmansouri Fix Cargo change detection in the runtime #12 . Thanks @jelmansouri !
- Fix default execution issues on macOS M1 machines where ISPC would default to x86_64 + SSE4 as the compiler binary runs through Rosetta and thus gets the wrong architecture information.
- Add the
TargetOs
flag to allow cross-compilation. This is an untested and experimental feature, please open any issues on the issue tracker
Release 1.0.10
Release 1.0.9
Changes
- Fix issue parsing the ISPC version string on ISPC 1.13.0 due to changes in how the string is formatted.
Release 1.0.8
Changes
- Add new ARM/Neon architecture and ISA flags supported in ispc 1.12