-
-
Notifications
You must be signed in to change notification settings - Fork 119
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
Replace robust-predicates
#1468
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
According to my reading of the `libc` source code, they should be equivalent.
According to my reading of the `libc` source code, these should be equivalent.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
robust-predicates
contains C code, which has caused issues with cross-compilation in the past (see #1278, for example). This pull request replaces it as a dependency, with two components:robust
, a pure-Rust library created from the same C code. It only provides 2D predicates, unfortunately, meaning it isn't a full replacement.fj_math::robust
, a new module infj-math
with transpiled code from the same C source, which provides the missing 3D predicate.Adding all this code isn't ideal, but since this comes from an old and stable C library (public domain, no less), I don't think it will be much of a problem. Still, it would be better to contribute the missing predicate to
robust
instead. I've decided against that for now, as I don't have any tests for this code, beyond the indirect coverage of our own test suite.I will monitor how the new code works out, and might re-evaluate this decision at a later point.