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

Release Candidate v5.0 #758

Merged
merged 568 commits into from
Oct 12, 2022
Merged

Release Candidate v5.0 #758

merged 568 commits into from
Oct 12, 2022

Conversation

aslesarenko
Copy link
Member

@aslesarenko aslesarenko commented Dec 17, 2021

This PR finalizes v5.0 implementation.

Summary of changes:

  • AOT costing of ErgoTree will be replaced by JIT costing
  • introduced new AOT costing of signature verification
  • fixed bug in xorOf global operation
  • fixed bug in CONTEXT.selfBoxIndex operation
  • removed limitations on lambda argument of Coll.flatMap
  • fixed bug in Coll.append (++ operation)
  • fixed bug in Coll.zip
  • fixed bug in substConstants
  • perfomance optimizations
  • code cleanups

Ready for testnet

Ready for mainnet

aslesarenko and others added 30 commits November 10, 2021 18:51
… - introduced context.currentErgoTreeVersion
Re-introduce SigmaCompiler constructor with networkPrefix
Encapsulate evaluationMode selection (towards v5.0)
@kushti
Copy link
Member

kushti commented Sep 4, 2022

#828 must be resolved before this PR can be accepted

@aslesarenko
Copy link
Member Author

aslesarenko commented Sep 8, 2022

@kushti the fix it here #829, however please read the description about why it is better be merged into v5.x (and not here)

@@ -37,5 +41,5 @@ class CostLimitException(val estimatedCost: Long, message: String, cause: Option
extends SigmaException(message, None, cause)

object CostLimitException {
Copy link
Member

Choose a reason for hiding this comment

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

ScalaDoc missed

Copy link
Member Author

Choose a reason for hiding this comment

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

Added ScalaDoc for CostLimitException. Don't think we should require ScalaDocs for companions. Added ScalaDoc for the method, don't think it is valuable tough.

@@ -5,7 +5,7 @@ import sigmastate.lang.Terms._
import sigmastate.utils.{SigmaByteReader, SigmaByteWriter}
import sigmastate.{ModQ, SType}

// TODO HF (2h): make sure it is covered with tests
// TODO v6.0 (2h): make sure it is covered with tests
Copy link
Member

Choose a reason for hiding this comment

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

Unlikely need for tests is tied with 6.0. Better to make an issue, not todo.

Copy link
Member Author

@aslesarenko aslesarenko Oct 11, 2022

Choose a reason for hiding this comment

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

This class doesn't make sense before v6.0. It cannot be removed however, because this serializer was erroneously registered in ValueSerializer's global map. See comment here
There are already issues regarding ModQ operations with v6.0 milestone.
Don't think anything needs to be changed in this code in this PR.

@@ -6,7 +6,7 @@ import sigmastate.utils.SigmaByteWriter.DataInfo
import sigmastate.utils.{SigmaByteReader, SigmaByteWriter}
import sigmastate.{ModQArithOpCompanion, SType, ModQArithOp}

// TODO HF (2h): make sure it is covered with tests
// TODO v6.0 (2h): make sure it is covered with tests
Copy link
Member

Choose a reason for hiding this comment

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

Unlikely need for tests is tied with 6.0. Better to make an issue, not todo.

Copy link
Member Author

Choose a reason for hiding this comment

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

see my comment above.

@@ -347,6 +347,7 @@ object ValueSerializer extends SigmaSerializerCompanion[Value[SType]] {
}
}

// TODO v5.x: control maxTreeDepth same as in deserialize
Copy link
Member

Choose a reason for hiding this comment

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

What does this comment mean ?

Add ScalaDoc for the class

Copy link
Member Author

Choose a reason for hiding this comment

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

clarified comment, added ScalaDoc

@aslesarenko aslesarenko merged commit 79c6f6f into master Oct 12, 2022
@aslesarenko aslesarenko deleted the v5.0-finalize branch May 1, 2024 15:51
@aslesarenko aslesarenko restored the v5.0-finalize branch May 1, 2024 23:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment