Skip to content

From fsevent-sys to objc2-core-services#93

Merged
DavyLandman merged 2 commits intomainfrom
from-fseventsys-to-objc2coreservices
Mar 24, 2026
Merged

From fsevent-sys to objc2-core-services#93
DavyLandman merged 2 commits intomainfrom
from-fseventsys-to-objc2coreservices

Conversation

@sungshik
Copy link
Contributor

@sungshik sungshik commented Mar 24, 2026

On macOS, we used to use Rust crate fsevent-sys to access native libraries. However, as of November 2025 (version 5.2.0), that crate is deprecated and succeeded by crate objc2-core-services. This PR migrates our Rust code for macOS to that crate.

(See comment below for further context.)

  - Replace crate `fsevent-sys` with crate `objc2-core-services` (because `fsevent-sys` is deprecated)
  - Replace crate `core-foundation` with crate `objc2-core-foundation` (because `objc2-core-services` depends on it)
  - Increase version number of crate `dispatch2` to latest (because the older version is no longer needed to work with `fsevent-sys`)
@sungshik sungshik changed the title From fseventsys to objc2coreservices From fsevent-sys to objc2-core-services Mar 24, 2026
@codecov
Copy link

codecov bot commented Mar 24, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 79.3%. Comparing base (2573399) to head (112b8a9).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main     #93     +/-   ##
=========================================
- Coverage     79.5%   79.3%   -0.3%     
+ Complexity     176     175      -1     
=========================================
  Files           23      23             
  Lines          774     774             
  Branches        89      89             
=========================================
- Hits           616     614      -2     
  Misses          96      96             
- Partials        62      64      +2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sungshik
Copy link
Contributor Author

sungshik commented Mar 24, 2026

To add some further context... We used to depend specifically on:

That particular PR was merged and released as version 5.1.0 of fsevent-sys in October 2025. However, the same release also contained commit octplane/fsevent-rust@c7c35d2 (not part of that particular PR), which updates the dispatch2 dependency of fsevent-sys to version 0.3.0. It also updates some of the types in the interface accordingly. These types don't exist yet in version 0.2.0, though, so for us to continue to use fsevent-sys, we would need to update to version 0.3.0 as well.

As updating to version 0.3.0 would require roughly the same (or more) code rewrites as the migration to objc2-core-services, this PR favors the latter.

Copy link
Member

@DavyLandman DavyLandman left a comment

Choose a reason for hiding this comment

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

Thanks for upgrading the dependency and updating the code to the new library.

@DavyLandman DavyLandman marked this pull request as ready for review March 24, 2026 16:31
@DavyLandman DavyLandman merged commit f6c4fbd into main Mar 24, 2026
18 checks passed
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.

2 participants