Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
980e96d
Introduce mxl-sys crate
pac-work Jun 20, 2025
779cbc5
Add first skeleton for "middle layer" binding
pac-work Jun 20, 2025
7ef300f
vscode: set root for rust analyzer
pedro-alves-ferreira Jun 22, 2025
bb8c350
modules: create a separate module for errors
pedro-alves-ferreira Jun 22, 2025
930f54d
modules: create a separate module for the ffi api
pedro-alves-ferreira Jun 22, 2025
593c1a6
modules: create a separate module for the instance
pedro-alves-ferreira Jun 22, 2025
706dcb9
modules: create a separate module for flow information
pedro-alves-ferreira Jun 22, 2025
e7fd75b
modules: create a separate module for the flow reader
pedro-alves-ferreira Jun 22, 2025
6b1df90
instance: don't use unwrap.
pedro-alves-ferreira Jun 22, 2025
ffe2fbf
instance: don't expose a destroy method as that breaks the invariants
pedro-alves-ferreira Jun 22, 2025
594ec88
build: add a build.rs file to expose the mxl build path
pedro-alves-ferreira Jun 22, 2025
2e0555b
build: use mxl headers directly
pedro-alves-ferreira Jun 22, 2025
095a1fe
examples: add basic example
pedro-alves-ferreira Jun 22, 2025
20f0672
reader: decouple lifetime from instance
pedro-alves-ferreira Jun 24, 2025
36e8a6a
instance: add a destroy function for testing
pedro-alves-ferreira Jun 24, 2025
58ce51a
reader: consume self on destroy so that the invariants are not broken
pedro-alves-ferreira Jun 24, 2025
c56f7ba
grain data: don't allocate and copy payload & user data
pedro-alves-ferreira Jun 22, 2025
c0fe09d
error: preserve the error code for unknown errors
pedro-alves-ferreira Jun 23, 2025
7227f65
layout: rename rust-bindings to rust
pedro-alves-ferreira Jun 24, 2025
7734213
grain data: add OwnedGrainData and conversion from GrainData
pedro-alves-ferreira Jun 24, 2025
49e1736
Reflect function name changes in MXL
pac-work Jul 11, 2025
3a49677
Add basic discrete flow writer Rust wrapper
pac-work Jul 9, 2025
7a4ee2c
Fix double free on explicit instance destruction in test
pac-work Jul 9, 2025
a6d997d
Rename GrainWriter to GrainWriteAccess
pac-work Jul 10, 2025
89eb7a0
Change MxlFlowWriter into a factory class for more specific writers
pac-work Jul 10, 2025
e0e4098
Add basic continuous flow writer Rust wrapper
pac-work Jul 11, 2025
9db262f
Change MxlFlowReader into a factory class for more specific readers
pac-work Jul 17, 2025
898c115
Add basic continuous flow reader Rust wrapper
pac-work Jul 18, 2025
0f884a9
Convert instance destroy into safe function
pac-work Jul 18, 2025
16bbb18
Allow referencing rust crates without the need to build MXL
pac-work Jul 22, 2025
98fc37f
Allow instance cloning
pac-work Jul 31, 2025
fb060be
Implement Send for readers and writers
pac-work Jul 31, 2025
196fa6f
refactor: re-organise module structure
cwtchan Jul 23, 2025
13c64e9
feat: add build options to build neither tests nor tools
cwtchan Aug 13, 2025
12baf92
feat: ignore generated mxl version header file
cwtchan Aug 13, 2025
fc5fba1
Merge branch 'pac-work/rust-bindings' into rust-bindings
cwtchan Sep 25, 2025
5e9cea9
fix(rust-workflows): use `-W clippy::pedantic` as per PR feedback
cwtchan Sep 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ jobs:
env:
RUSTDOCFLAGS: "-D warnings"
- name: Clippy
run: cargo clippy --all-targets -F mxl-not-built -- -D warnings
run: cargo clippy --all-targets -F mxl-not-built -- -D warnings -W clippy::pedantic

tests:
name: Run the tests
Expand Down
3 changes: 3 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ if(ccache_executable)
set(CMAKE_CXX_COMPILER_LAUNCHER ${ccache_executable})
endif()

option(BUILD_TESTS "Build the tests" OFF)
option(BUILD_TOOLS "Build the tools" ON)

# Enable testing for the project
enable_testing()

Expand Down
Loading