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

feat: Forward ports #182

Merged
merged 29 commits into from
Oct 4, 2024
Merged

feat: Forward ports #182

merged 29 commits into from
Oct 4, 2024

Conversation

mattstam and others added 29 commits October 3, 2024 10:44
- Replaced `Field` trait with `Sync` in various modules for the `Poseidon2WideChip` implementation and friends, thereby updating associated dependencies.
- In the `fri_fold` module, updated functions and methods to support the new interface and constraints with revised struct and replaced `Field` trait with `Sync`,
- Renamed package from `sp1-recursion-gnark-cli` to `sphinx-recursion-gnark-cli`
- Updated dependency from `sp1-recursion-gnark-ffi` to `sphinx-recursion-gnark-ffi`
- Included macOS-specific linking for CoreFoundation and Security frameworks in gnark-ffi package
- Enhanced error handling across three critical go files in recursion/gnark-ffi, ensuring each function returns an error along with its intended output if any error occurs.
- Improved `randomPolynomial` function to return an error along with the polynomial and added necessary error checks.
- Improved safety by adding error handling for `SetString` and `SetRandom` operations, the program will now terminate in case of any error.
- Added error handling for critical function calls, such as `os.MkdirAll` and `vk.ExportSolidity` in build.go.
- Strengthened guard against unexpected panic conditions in `prove.go` by enabling error handling for `ReadFrom` methods for the R1CS, proving key, and verifier key.
- Added a step in the GitHub workflow to install the `sphinx-recursion-gnark-cli` for integration testing.
- Prepared for future testing capabilities by adding a note for `test-plonk-bn254`, pending CLI readiness.
- Introduced cross-platform support for the Go build command in the gnark-ffi's build.rs script.
- Enhanced detection of the current operating system to set the appropriate GOOS environment variable.
- Replaced static type `F` with generic type parameter `T` across multiple methods in `MultiChip` struct,
- this should lead to better compatibility with upstream.
@huitseeker huitseeker changed the title Forward ports 46 feat: Forward ports Oct 4, 2024
@huitseeker huitseeker marked this pull request as ready for review October 4, 2024 15:20
@huitseeker huitseeker enabled auto-merge (squash) October 4, 2024 15:20
Copy link
Member

@wwared wwared left a comment

Choose a reason for hiding this comment

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

I think some of the LC programs will require a very minor update to use sphinx_lib for the unconstrained! macro, but this looks good to merge.

@huitseeker huitseeker merged commit b392e25 into dev Oct 4, 2024
9 of 10 checks passed
@huitseeker huitseeker deleted the forward_ports_46 branch October 4, 2024 18: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.

5 participants