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

[Not Merged] go-algorand 3.7.0-beta Release PR #4049

Closed

Conversation

Algo-devops-service
Copy link
Contributor

@Algo-devops-service Algo-devops-service commented May 27, 2022

GitHub Logo

Overview

What's New

Changelog

New Features

  • AVM: Add bn256 pairing opcodes experimentally (#4013)
  • Build: Bump golang to 1.17.9/Mac M1 Support (#3919)

Enhancements

  • AVM: Allow immutable access to foreign app accounts (#3994)
  • AVM: base64_decode can decode padded or unpadded encodings (#4015)
  • AVM: Unify inner transaction ID calculation (#3927)
  • Algod: Add a sourcemap flag for compile endpoint (#3938)
  • Algod API: Remove errant base64 docs reference (#3982)
  • Algokey: Add -v flag to get the version (#4004)
  • Build: Add install_buildtools.sh to check_deps.sh error message (#3921)
  • Ci: use tag to determine channel if possible (#4017)
  • Ci: add simple codecov config (#3997)
  • Cleanup: replace crypto.HashObj(Transaction) with Transaction.ID() (#3958)
  • Dryrun: Return EvalDeltas for failed executions in Dryrun (#3929)
  • Metrics: collect and report Go runtime.metrics (#4041)
  • Network: Non-participating Nodes Request Tx Gossip Only If Forcefetchtransactions: true (#3918)
  • Stateproofs: New block header field - SHA256 merkle root of the transactions (#3829)
  • Tealdbg: Add hidden "generate-docs" command (#3830)
  • Tests: Support e2e-go tests when repo is not installed in GOPATH. (#3949)
  • Tools: Add benchmark warnings for PRs and push graphs for commits into master (#3998)
  • Transaction Sync: Transition test (#3882)

Bugfixes

  • Agreement: fix typo in bandwidthFilter_test (#4028)
  • Ci: ensure msgp generator has been run and is clean (#3978)
  • Dryrun: Split dryrun cost field into BudgetConsumed and BudgetAdded (#3957)
  • E2e Tests: Fixes for e2e test runs (#3948)
  • Fix: place updater in same directory as update.sh (#3983)
  • Metrics: update node_exporter to support Linux diskstats (#4047)
  • Metrics: make metrics easier to use with prometheus (#4020)
  • Race Condition: Add lock around catchpointsMu to avoid race condition (#3944)
  • Stateproofs: fix GetProof endpoint response (#3985)

Other

  • go-algorand 3.5.1-stable (#3798)

Protocol Upgrade

This release does not contain a protocol upgrade.


NOTE
vFuture changes are not yet available in MainNet or TestNet but can be used in private networks.


Additional Resources

algojohnlee and others added 30 commits March 17, 2022 20:43
While upgrading to golang 1.17.9 a couple of race conditions have been detected during E2E tests.
This fixes catchpoint label assignment.
In e2e.sh when we fail to set the E2E_PLATFORM variable, the shell will complain
that we are using a binary operator (==) on a single argument.
Setting the left side of the test statement to a string with variable interpolation fixes this.

The e2e python client runner does not initialize the stdout and stderr variables
which causes an exception in reportcomms when the except block runs after an exception.
…3949)

Running e2e go tests fails when the repo is not cloned inside the GOPATH.
This change looks up the current directory using runtime.Caller
as an alternative to hard coding the GOPATH location.
Unifies the inner transaction ID calculation with a new consensus parameter, UnifyInnerTxIDs.

Co-authored-by: Ben Guidarelli <ben.guidarelli@gmail.com>
Bump go version to 1.17.9
Also includes //+build => //go:build generated via make sanity
Fixed some data races discovered by 1.17 race detector
…actions (algorand#3829)

Currently, the TxnRoot block header contains the root of the merkle tree
built from the transactions in the block, using the SHA512_256 hash function.
Since the Ethereum VM (and others) does not support SHA512_256 natively,
we have added a new header, which will be used by the Light Clients
deployed on other networks in order to verify Algorand blocks.

Co-authored-by: algoidan <79864820+algoidan@users.noreply.github.com>
)

Return evaldeltas for failed execution and check global state
Test for a network in transition.
Runs a 6 node network with the following topology:

New Leaf 1                           New Leaf 2
           > New Relay - Old Relay <
Old Leaf 1                           Old Leaf 2
…lgorand#3958)

* replace crypto.HashObj(Transaction) with Transaction.ID()
This should ensure make msgp has been run for changes
that impact msgp serialization on CI builds.

It looks like algorand#3829 was merged but missed changes to agreement/msgp_gen.go
and gci updates from algorand/msgp#14 were not incorporated into algorand#3919.
* add simple codecov config

* add patch to .codecov.yml
* allow foreign app accounts to be accessed (immutably)
* add bn256 add, scalar multiply and pairing opcode
* replace with gnark bn254 and bench
* update opcost for bn256 according to benchmark


Some doc tweaks, and moved implementation to pairing.go

These opcodes should stay in vFuture until

1. We consider the serialization format
2. We have unit tests
3. We consider BLS 12-381 (and the opcodes of eip 2537)
4. Audit of gnark-crypto library

Co-authored-by: Bo Yao <by677@nyu.edu>
Co-authored-by: Bo Yao <bo@abstrlabs.com>
Co-authored-by: bo-abstrlabs <96916614+bo-abstrlabs@users.noreply.github.com>
Co-authored-by: chris erway <chris.erway@algorand.com>
* make TagCounter metrics easier to use with prometheus

* ensure 0 counters are logged

* allow for pre-declaring TagCounter tags for use with prometheus

* fix expected in TestTagCounterWriteMetric

* deregister counter used in test

* fix lint warning

* CR comment

* Log incorrect metrics for debugging test failures

* deregister more counters and tagcounters used by tests

* remove unused Segment
brianolson and others added 9 commits May 24, 2022 21:49
…Transactions: true (algorand#3918)

Save bandwidth by having non-participating non-relay nodes
opt-out of TX transaction gossip traffic using message-of-interest.
To enable set localConfig.ForceFetchTransactions = true

Manual testing has started local private networks to ensure
that the new message-of-interest propagated.
Cluster tests were run to check bandwidth usage.

Co-authored-by: cce <51567+cce@users.noreply.github.com>
When generating the CLI documentation for the Developer Portal
it was noticed that tealdbg was missing. Much like goal, kmd, and algokey,
added the "generate-docs" command option to generate the markdown output.
* add metrics.RuntimeMetrics
* hook up EnableRuntimeMetrics as new config variable
* set EnableRuntimeMetrics: true in netgoal-generated configs
* add EnableRuntimeMetrics to bootstrappedScenario and custom recipes
* check that all defaultRuntimeMetrics are supported by current version of go
* add TestSanitizePrometheusName
* add partitiontest to new tests
* use algod_go_ prefix for prometheus runtime metrics
@Algo-devops-service Algo-devops-service deleted the relbeta3.7.0 branch May 27, 2022 16:10
@algobarb
Copy link
Contributor

Closing to add in Cloudflare changes.

@algobarb algobarb changed the title go-algorand 3.7.0-beta Release PR [Not Merged] go-algorand 3.7.0-beta Release PR May 27, 2022
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.