-
Notifications
You must be signed in to change notification settings - Fork 41
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
Bring back c-sources: cbits/blst_util.c #412
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
In #255 we somehow removed the ``` c-sources: cbits/blst_util.c ``` from the library. This included the symbol: `size_blst_p1`, which _is_ used in `cardano-crypto-class` 😱 . E.g. https://github.com/input-output-hk/cardano-base/blob/e48f2ec561713f7a0863e58e34004b8099079cab/cardano-crypto-class/src/Cardano/Crypto/EllipticCurve/BLS12_381/Internal.hs#L372 And thus we now run into undefined symbols issues 🤯
angerman
added a commit
to IntersectMBO/plutus
that referenced
this pull request
May 12, 2023
This depends on IntersectMBO/cardano-base#412.
lehins
approved these changes
May 12, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for catching it! 👍
lehins
pushed a commit
that referenced
this pull request
May 18, 2023
In #255 we somehow removed the ``` c-sources: cbits/blst_util.c ``` from the library. This included the symbol: `size_blst_p1`, which _is_ used in `cardano-crypto-class` 😱 . E.g. https://github.com/input-output-hk/cardano-base/blob/e48f2ec561713f7a0863e58e34004b8099079cab/cardano-crypto-class/src/Cardano/Crypto/EllipticCurve/BLS12_381/Internal.hs#L372 And thus we now run into undefined symbols issues 🤯
lehins
pushed a commit
that referenced
this pull request
May 23, 2023
In #255 we somehow removed the ``` c-sources: cbits/blst_util.c ``` from the library. This included the symbol: `size_blst_p1`, which _is_ used in `cardano-crypto-class` 😱 . E.g. https://github.com/input-output-hk/cardano-base/blob/e48f2ec561713f7a0863e58e34004b8099079cab/cardano-crypto-class/src/Cardano/Crypto/EllipticCurve/BLS12_381/Internal.hs#L372 And thus we now run into undefined symbols issues 🤯
michaelpj
added a commit
to IntersectMBO/plutus
that referenced
this pull request
Jun 1, 2023
* Initial version of BLS pairing builtins * WIP * WIP * WIP: implementations of GT operations * Tidy up instances * More-or-less complete implementation for UPLC * Initial costing benchmarks for BLS builtins * Update benchmarks * Update R code * Forgot source files * Wrong denotation for GT_mul * Partial updates to CreateBuiltinCostModel * Fix typos in function names * Update memory models for BLS12_381 builtins * Update memory models for BLS12_381 builtins * WIP * Rename BLS (de)serialise -> (un)compress * Reformat * inline-r workaround; corrections to cost model generation code * inline-r workaround * Update cost model tests for BLS functions * Update benching results and cost model file for BLS * Update benching results and cost model file for BLS * Update comment * Update comment * Add some extra stuff for the benefit of the QuickCheck shrinker * Add new builtins to plutus-tx * Add a few Haskell BLS examples * WIP * Update cabal file * Merge master * WIP * Update BLS throughput benchmarks * Update cost model for uncompress vs deserialise * Update BSL benchmark program * WIP * Nix weirdness * Updates after merge * Add Groth16 verification example * Tidying up; get rid of SourceSpans * Minor updates * Minor updates * Add proper Criterion benchmarks * Tidying up * Moved file * Forgot cabal file * Fix typo * Update comment * Fix cabal version constraints * Add missing cases for geqStep * Update deriving methods * WIP: property tests * Add Plutus versions of most of the property tests * Tidy up the test code a bit * Use folds for repeated addition; adjust sizes of test inputs * Better folding * Update FFI code to new version * Name change: millerLoop -> pairing * Reorganise files * Tidy up * Tidy up * More tidying up * Add comment * Abstraction for BLS property tests * Tidying up * WIP * Incorporate Inigo's updates * Banish Hedgehog * Add conformance tests for BLS12-381 constants * Add BLS12-381 addition conformance tests * Add BLS12-381 equality conformance tests * Add BLS12-381 negation conformance tests * Update comment on cofactors * More conformance tests * Correct test name * Add BLS12-381 scalar multiplication conformance tests * Remark about source of data for Groth16 verification example * Add BLS12-381 pairing operation conformance tests * Update comment in BLS12-381 peoperty tests * Update comment in BLS12-381 peoperty tests * Typo in file name * Fix types in bls-sizes executable * Update names in costing benchmark CSV file * Update names of built-in types and functions in plutus-core * Update names in conformance tests * Update BLS names in plutus-tx-plugin * Remove parser for MlResult; fix Groth16 example * Tidy up the Groth16 example * Update versions in plutus-benchmark.cabal * applyCode -> unsafeApplyCode after PLT-1552 * Update comment * Minor formatting updates * Make plutus-metatheory work with the BLS builtins to some extent * Fix incorrect test * Exclude failing BLS12-381 Agda tests * Exclude failing BLS12-381 Agda tests * Add property test for periodicity of scalar multiplication * Minor code rearrangement * Import scalarPeriod for tests * Add more property tests for BLS compression * Add conformance tests for BLS scalar mulitplication periodicity * Add descirptive comments to the BLS conformance tests * Improve printing of known builtins when parser encounters an unknown one * Reorganise files containing cryptographic functions * Reorganise Crypto files * hashToCurve -> hashToGroup * Adjust spacing in print-builtin-signatures * Justification * Attempt to update to work with iohk-nix version of libblst * Merge Mauro's metatheory updates * Update to new version of BLS bindings * Update to new version of BLS bindings * Update to new version of BLS bindings * Merge Mauro's metatheory improvements * Still trying to get libblst to work with nix * More informative BLS names in metatheory * Update some comments * Get BSL sizes from blst * Pairing.pairing -> Pairing.millerLoop * Backpatch cost model * Turn on immediate warnings in R * Restore golden budget results after cost model backpatch * Attempt to fix plututs-ledger-api version tests * Restore comment * Add comment * Fix name of plutus-tx-plugin-tests * Improve comments * Extend comments * Reformat comments * Add comments to ignore cbits * Comments on costing benchmarks * Tidying up * Add some more comments * Add changelog entries for BLS12-381 modifications * Remove unnecessary changelog directories from unversioned packages * Update plutus-core/plutus-core/src/PlutusCore/Parser/Builtin.hs Co-authored-by: Michael Peyton Jones <[email protected]> * Address some PR comments * Crypto -> PlutusCore.Crypto for stuff we've defined * Address some more PR comments * Update metatheory for package name change * Update metatheory for package name change * Update version numbers in cabal file * Update BLS branch to work with merged version of BLS bindings in cardano-base * Remove commented-out Haskell code in plutus-metatheory * Missing cases in metatheory * Missing cases in metatheory * Missing cases in metatheory * Missing cases in metatheory * Missing cases in metatheory * Reorder constructors in ledger-api cost model interface * Update the comments about wrapping BLS12-381 types * Remove Haskell property tests for BLS12-381 (tested in cardano-base) * Refactoring * Refactoring * Remove some stuff that was left in accidentally * Remove empty lines * Resolve merge problems * Fix comment * Delete unused boilerplate from changelog entry * Update cabal file * Fix alignment * Address some PR comments * Address some PR comments * fromIntegral -> fromSatInt * GHC.Tick -> GHC.HpcTick * Trying to get rid of wrong version of Expr.hs in plutus-tx-plugin * Add missing golden files * Fix weird results in TypeSynthesis/Golden/Bls12* * Try to fix blst * Add BLS builtins to metatheory * Fix Untyped/CEK.lagda; make Agda conformance tests pass * Correct spacing * Remove some remaining merge conflicts * Correct spacing * Correct formatting * Correct formatting * Some renaming * Update flake * Bump plutus-core at el from 1.5 -> 1.6 * Bump haskell.nix, iohk-nix, CHaP * bump cardano-base we needed to get proper blst discovery, until 2.2.0.0 is released. This also means we need to bring in cardano-mempool. * Fix missing blst symbols. This depends on IntersectMBO/cardano-base#412. * Agda fixes * liftCode -> liftCodeDef * Remove superlfuous dependencies * Add DST argument to hashToGroup builtins * Address a couple of PR comments * bump haskell.nix * Add NOINLINE to listOfSizedByteStrings * Address some PR comments * Bump haskell.nix To get input-output-hk/haskell.nix#1948 * Error type for overlong DSTs * Error type for overlong DSTs * Stuff about shrinking * Make CI happy. x is unused. * plutus windows cross 8.10 * Finish incomplete test * Typo * Address PR comments * Fix parser for bls12_381_mlresult type * WIP updating things * bump iohk-nix * Improve hash collision tests * Update benching.csv to new format to make merge easier * Resolve some remaining conflicts * Update ciJobs.nix * bump haskell.nix * Update nix/cells/automation/ciJobs.nix * Update nix/cells/automation/ciJobs.nix * Update plutus-metatheory/src/Algorithmic/Erasure.lagda --------- Co-authored-by: Michael Peyton Jones <[email protected]> Co-authored-by: Moritz Angermann <[email protected]> Co-authored-by: Hamish Mackenzie <[email protected]>
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.
In #255 we somehow removed the
from the library. This included the symbol:
size_blst_p1
, which is used incardano-crypto-class
😱 .E.g. https://github.com/input-output-hk/cardano-base/blob/e48f2ec561713f7a0863e58e34004b8099079cab/cardano-crypto-class/src/Cardano/Crypto/EllipticCurve/BLS12_381/Internal.hs#L372
And thus we now run into undefined symbols issues 🤯