Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/599 add rust bindings #603

Merged
merged 3 commits into from
Aug 9, 2023
Merged

Conversation

pnoltes
Copy link
Contributor

@pnoltes pnoltes commented Aug 2, 2023

Apache Celix Rust2C Binding

This PR updates the "Hello World" Rust bundle with the addition of Apache Celix Rust-to-C bindings, enabling the usage of celix_bundleContext_log.

The main changes in this PR are as follows:

  1. Introducing a new Rust library named "celix_bindings," which utilizes bindgen to automatically generate the necessary Rust-to-C bindings.

  2. Updating the "Hello World" bundle by adding a RustBundle object and adding error handling mechanisms.

@codecov-commenter
Copy link

Codecov Report

Merging #603 (9e10867) into master (88bec1d) will increase coverage by 1.12%.
Report is 6 commits behind head on master.
The diff coverage is 36.36%.

❗ Current head 9e10867 differs from pull request most recent head 035593f. Consider uploading reports for the commit 035593f to get more accurate results

@@            Coverage Diff             @@
##           master     #603      +/-   ##
==========================================
+ Coverage   78.56%   79.68%   +1.12%     
==========================================
  Files         260      256       -4     
  Lines       35415    34686     -729     
==========================================
- Hits        27823    27641     -182     
+ Misses       7592     7045     -547     
Files Changed Coverage Δ
libs/framework/src/bundle.c 70.76% <ø> (-0.16%) ⬇️
libs/framework/src/manifest_parser.c 92.85% <ø> (+60.79%) ⬆️
libs/framework/src/module.c 83.00% <0.00%> (+8.63%) ⬆️
libs/framework/src/celix_launcher.c 92.35% <100.00%> (ø)
libs/framework/src/framework.c 85.10% <100.00%> (+0.13%) ⬆️

... and 8 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

Copy link
Contributor

@PengZheng PengZheng left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Though my poor knowledge of rust-lang does not allow me to make further comments, I do think a bundle container with all goodies like log admin/tui will encourage outsiders (like myself) to play with it (like firing a debugger). With our new update command, it will be fun to modify a bundle and load it into a running framework with a single command.

@pnoltes pnoltes merged commit 5281a39 into master Aug 9, 2023
22 checks passed
@pnoltes pnoltes deleted the feature/599-add-rust-bindings branch August 9, 2023 14:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants