Skip to content
This repository has been archived by the owner on Jan 8, 2024. It is now read-only.

Conversation

prozacchiwawa
Copy link

--operators-version can now be used in situations where disassembly is output to select an older version of the operator set.

@coveralls-official
Copy link

coveralls-official bot commented Jun 6, 2023

Pull Request Test Coverage Report for Build 5764461447

  • 128 of 179 (71.51%) changed or added relevant lines in 17 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.2%) to 78.559%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/classic/clvm/sexp.rs 5 6 83.33%
src/classic/clvm/mod.rs 10 12 83.33%
src/compiler/compiler.rs 4 6 66.67%
src/classic/clvm_tools/cmds.rs 30 33 90.91%
src/classic/clvm_tools/clvmc.rs 6 10 60.0%
src/classic/clvm_tools/stages/stage_2/optimize.rs 4 14 28.57%
src/classic/clvm_tools/stages/stage_2/operators.rs 21 34 61.76%
src/classic/clvm_tools/stages/stage_2/compile.rs 2 18 11.11%
Totals Coverage Status
Change from base Build 5743833607: 0.2%
Covered Lines: 7306
Relevant Lines: 9300

💛 - Coveralls

@prozacchiwawa
Copy link
Author

Gonna add tests of the bls operators then set it Ready.

@prozacchiwawa
Copy link
Author

ok waiting for green then gonna mark it ready.

@cameroncooper
Copy link

I think @arvidn wanted to remove the bls prefix from g1 and g2 ops: https://github.com/Chia-Network/clvm_rs/blob/main/op-tests/test-bls-ops.txt#L136-L267

@prozacchiwawa
Copy link
Author

prozacchiwawa commented Jun 22, 2023 via email

@freddiecoleman
Copy link

Any chance this could be updated to use clvmr 0.2.6 to get the secp operators as well? Thanks.

@prozacchiwawa
Copy link
Author

prozacchiwawa commented Jun 27, 2023 via email

… change, remove bls operator prefixes and add tests for more operators, add secp256k1_verify and secp256kr1_verify and test ability to use the wide opcodes
@prozacchiwawa
Copy link
Author

ok changed the operator names and added the secp256 operators. requires a clvmr bump which changes clvmr's api just a bit.

…r version of glibc than would have been supported since 1.62. Since the new clvmr dependencies require rust 1.65, we need to bump to manylinux2014
@freddiecoleman
Copy link

freddiecoleman commented Jun 28, 2023

I manually compiled and ran a Chialisp program that uses secp256r1_verify and can confirm it returns () when run with a valid pk/msg/sig and throws FAIL: secp256r1_verify failed when the signature is invalid.

@aqk
Copy link

aqk commented Jul 28, 2023

@aqk
Copy link

aqk commented Jul 28, 2023

Is removing val_stack_limit connected with this change? If not, it could be a separate PR.

https://github.com/Chia-Network/clvm_tools_rs/pull/180/files#diff-2074b76a9ca8bff0a579d5ef151d660b817ccdfab3ece092a64780493ca2e636L312

@aqk
Copy link

aqk commented Jul 28, 2023

@arvidn
Copy link

arvidn commented Jul 28, 2023

Is the softfork extension argument mandatory?

technically it's not, in order to be backwards compatible. but we will require it in all our soft-forks, by convention.

@aqk
Copy link

aqk commented Jul 28, 2023

For _extension: OperatorSet, is there a way to specify a combination of several OperatorSets?

Or were you thinking "just specify a complete set for each new dialect" ?

https://github.com/Chia-Network/clvm_tools_rs/pull/180/files#diff-2074b76a9ca8bff0a579d5ef151d660b817ccdfab3ece092a64780493ca2e636R354

@prozacchiwawa
Copy link
Author

regarding the extension set, apologies, that particular thing fell through the cracks. pr here.
https://github.com/Chia-Network/clvm_tools_rs/pull/202

@prozacchiwawa
Copy link
Author

added a comment to OPERATORS_LATEST_VERSION.

@prozacchiwawa
Copy link
Author

much of the rest of the commentary here was about the clvmr upgrade, which went into a separate pr and got merged.

@arvidn
Copy link

arvidn commented Aug 1, 2023

For _extension: OperatorSet, is there a way to specify a combination of several OperatorSets?

Or were you thinking "just specify a complete set for each new dialect" ?

At the core of it, we can do whatever we want, since anything is a soft-fork anyway. Regarding the CLVM implementation, and how it interprets this field, it's an enum that essentially specifies the soft-fork version. We don't expect to have a lot of soft-fork in flight in parallel, so a version is enough. We considered a bitmask, but that would limit us to 64 soft-forks (in practice, then we would need a wider type), without really providing any benefit, since later soft-forks are expected to include all features from previous ones.

@prozacchiwawa
Copy link
Author

prozacchiwawa commented Aug 1, 2023 via email

aqk
aqk previously approved these changes Aug 3, 2023
@prozacchiwawa prozacchiwawa merged commit 2f3d88a into Chia-Network:base Aug 4, 2023
21 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants