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

Windows compat for nauty #124

Closed
wants to merge 3 commits into from
Closed

Windows compat for nauty #124

wants to merge 3 commits into from

Conversation

kris-brown
Copy link
Collaborator

@kris-brown kris-brown commented Mar 6, 2024

Catlab is committed to having Windows support, so for nauty to be used there we need to have it supported in ACSets.jl. This could be done by a relatively-naive reimplementation of nauty within Julia (used only if one is on Windows), which is adapted from some big chunks of https://github.com/AlgebraicJulia/CSetAutomorphisms.jl.

Much like the nauty interface code, it is not pretty (though there is a path to making the other code better: #52). Given that its only reason for existence is to allow our tests to pass on Windows, this might be acceptable.

Documentation of what's going on in the code at a high level in this blog post

@kris-brown kris-brown self-assigned this Mar 6, 2024
@kris-brown kris-brown added the enhancement New feature or request label Mar 6, 2024
Copy link

codecov bot commented Mar 6, 2024

Codecov Report

Attention: Patch coverage is 96.32353% with 5 lines in your changes are missing coverage. Please review.

Project coverage is 89.24%. Comparing base (6345d8d) to head (31610e7).

Files Patch % Lines
src/nauty/CSetAutomorphisms.jl 96.84% 3 Missing ⚠️
src/nauty/ColorRefine.jl 94.11% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #124      +/-   ##
==========================================
+ Coverage   88.82%   89.24%   +0.41%     
==========================================
  Files          22       25       +3     
  Lines        1960     2092     +132     
==========================================
+ Hits         1741     1867     +126     
- Misses        219      225       +6     

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

Kris Brown added 2 commits March 7, 2024 17:06
The code wasn't being hit in the test cases
@kris-brown
Copy link
Collaborator Author

I've tested AlgebraicJulia/Catlab.jl#893 with this branch and it works both with the external call to nauty as well as the native julia implementation, so I think this is ready to be looked at (once it's merged, the catlab PR can be merged)

@kris-brown kris-brown marked this pull request as ready for review March 8, 2024 02:03
@kris-brown
Copy link
Collaborator Author

I'll take a path of lower resistance for the time being, though fixing this up would be nice to return to in the future!

@kris-brown kris-brown closed this Apr 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant