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

[CLI] Add ed25519 vanity account generator, docs #7521

Merged
merged 6 commits into from Apr 7, 2023

Conversation

alnoki
Copy link
Contributor

@alnoki alnoki commented Apr 2, 2023

@gregnazario @clay-aptos

This PR adds to the aptos CLI a --vanity-prefix option for ed25519 key generation.

A user can supply a vanity prefix like 0xace or d00d (with or without a leading 0x), then the CLI generates private keys until finding one with an account address that begins with the specified prefix. An example is provided in the updated documentation.

@clay-aptos note that the failing docs lint pass is due to spellchecks on content not from this PR.

The VS Code rust-analyzer plugin applies format
rules that diverge from clippy, hence this commit
applies the clippy format rules.
@alnoki
Copy link
Contributor Author

alnoki commented Apr 2, 2023

@gregnazario this is my first Rust PR so I wasn't quite sure of all the commands I needed to run before submission, but I've pinned it down to:

  • From inside aptos-core:
/scripts/rust_lint.sh
  • From inside aptos-core/crates-aptos:
cargo test

I am not sure why the testnet check failed, but since the devnet one is fine I do not think the tesnet check failure is a result of this PR.

@clay-aptos
Copy link
Contributor

@gregnazario @clay-aptos

This PR adds to the aptos CLI a --vanity-prefix option for ed25519 key generation.

A user can supply a vanity prefix like 0xace or d00d (with or without a leading 0x), then the CLI generates private keys until finding one with an account address that begins with the specified prefix. An example is provided in the updated documentation.

@clay-aptos note that the failing docs lint pass is due to spellchecks on content not from this PR.

Thanks, @alnoki . Taking care of the spellcheck terms in:
#7526

Copy link
Contributor

@alinush alinush left a comment

Choose a reason for hiding this comment

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

LGTM: correctly picks a new random SK until the address has the desired prefix

@alnoki
Copy link
Contributor Author

alnoki commented Apr 7, 2023

@movekevin @alinush it looks like your two reviews make these changes approved. I merged in main so this PR should be ready to land!

@davidiw

@movekevin movekevin enabled auto-merge (squash) April 7, 2023 17:19
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions
Copy link
Contributor

github-actions bot commented Apr 7, 2023

✅ Forge suite compat success on testnet_2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> 5d0e581c783c557940b5cd94b219a7fc462ee004

Compatibility test results for testnet_2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> 5d0e581c783c557940b5cd94b219a7fc462ee004 (PR)
1. Check liveness of validators at old version: testnet_2d8b1b57553d869190f61df1aaf7f31a8fc19a7b
compatibility::simple-validator-upgrade::liveness-check : 8030 TPS, 4756 ms latency, 6900 ms p99 latency,no expired txns
2. Upgrading first Validator to new version: 5d0e581c783c557940b5cd94b219a7fc462ee004
compatibility::simple-validator-upgrade::single-validator-upgrade : 4880 TPS, 8030 ms latency, 10400 ms p99 latency,no expired txns
3. Upgrading rest of first batch to new version: 5d0e581c783c557940b5cd94b219a7fc462ee004
compatibility::simple-validator-upgrade::half-validator-upgrade : 4460 TPS, 8736 ms latency, 11300 ms p99 latency,no expired txns
4. upgrading second batch to new version: 5d0e581c783c557940b5cd94b219a7fc462ee004
compatibility::simple-validator-upgrade::rest-validator-upgrade : 6640 TPS, 5749 ms latency, 9500 ms p99 latency,no expired txns
5. check swarm health
Compatibility test for testnet_2d8b1b57553d869190f61df1aaf7f31a8fc19a7b ==> 5d0e581c783c557940b5cd94b219a7fc462ee004 passed
Test Ok

@github-actions
Copy link
Contributor

github-actions bot commented Apr 7, 2023

✅ Forge suite land_blocking success on 5d0e581c783c557940b5cd94b219a7fc462ee004

performance benchmark with full nodes : 5825 TPS, 6801 ms latency, 12900 ms p99 latency,(!) expired 80 out of 2487620 txns
Test Ok

@github-actions
Copy link
Contributor

github-actions bot commented Apr 7, 2023

✅ Forge suite framework_upgrade success on aptos-node-v1.3.0_3fc3d42b6cfe27460004f9a0326451bcda840a60 ==> 5d0e581c783c557940b5cd94b219a7fc462ee004

Compatibility test results for aptos-node-v1.3.0_3fc3d42b6cfe27460004f9a0326451bcda840a60 ==> 5d0e581c783c557940b5cd94b219a7fc462ee004 (PR)
Upgrade the nodes to version: 5d0e581c783c557940b5cd94b219a7fc462ee004
framework_upgrade::framework-upgrade::full-framework-upgrade : 6285 TPS, 6232 ms latency, 8600 ms p99 latency,no expired txns
5. check swarm health
Compatibility test for aptos-node-v1.3.0_3fc3d42b6cfe27460004f9a0326451bcda840a60 ==> 5d0e581c783c557940b5cd94b219a7fc462ee004 passed
Test Ok

@movekevin movekevin merged commit 4b10a02 into aptos-labs:main Apr 7, 2023
48 of 49 checks passed
kampleforth added a commit to Stakedllc/aptos-core that referenced this pull request Jun 6, 2023
* Rename resources in fungible_asset and primary_wallet

* Handle binary path correctly in CLI E2E test suite

* fix ghost update (aptos-labs#7491)

* [db-tool] backup-verify supports outputing transaction sizing info

* [db-tool] trivial: round up tps

* Announce Move scripts in See what's new (aptos-labs#7495)

* Announce Move scripts in See what's new

* Standardize link format

* Address reviewer feedback in See what's new and Move scripts

---------

Co-authored-by: Christian Sahar <125399153+saharct@users.noreply.github.com>
Co-authored-by: Greg Nazario <greg@gnazar.io>
Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.local>

* [Spec] Add boogie natives for newly added public methods in vector (aptos-labs#7558)

* new boogie natives for vector

* new vector intrinsics

* [network] cleanup unused rate limiter

Rate limiter is set to open, so essentially a no-op, but it relies on IpAddr for bucketing which means
all the dns addr falls under the same bucket and would contend for the same mutex. This commit removes it from the stack.

* [gha] update grafana sync endpoint (aptos-labs#7591)

* Correct an error code in `aptos_token.move` (aptos-labs#7592)

Corrected an error code

* Migrate move-stdlib native functions into framework in aptos-core (aptos-labs#7487)

* move dir

* add back nursery

* add ascii

* docs

* restore dir

* restore dir

* restore dir

* revert move changes

* rename

* rwname move-stdlib

* fmt

* add

* fmt

* remove ascii

* overview

* Remove unused files/code

* Remove more

* delete typename

* Change copyright

* Change copyright

* sort deps

* sort deps

* [ANS][TS SDK] add minting name function (aptos-labs#7336)

* add ANS support

* add ANS support

* add ANS support

* [ANS][TS SDK] add minting name function

---------

Co-authored-by: maayan <maayansavir@gmail.com>

* Create compiler section, add troubleshooting info, and link move book (aptos-labs#7549)

* Update code comments regarding PayloadClient (aptos-labs#7437)

* Rename TxnManager to PayloadClient

* Rename TxnManager to PayloadClient

* Rename TxnManager to PayloadClient

* Add code comments for PayloadClient

* Create Glossary.md (aptos-labs#7254)

* Create Glossary.md

Glossary of terms in Aptos. It defines and explains the acronyms and terms used in the Aptos blockchain and its ecosystem.

* Start edits to PR

* Update glossary.md

Aptos Glossary

* Update glossary.md

Aptos Glossary

* Make direct edits to new glossary entries

* Fix link to indexing guide

* Delete Glossary.md

Removal of the redundant Glossary.md file.

* Make direct edits to glossary contribution, bold first entry references

---------

Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>
Co-authored-by: Greg Nazario <greg@gnazar.io>

* ignore an example for `cargo test --doc` to pass (aptos-labs#7599)

* Install git in the tools image (aptos-labs#7583)

* [TS SDK] add User-Agent header to axios call on IndexerClient (aptos-labs#7576)

* add User-Agent header to axios call on IndexerClient

* update user-agent string

* Create new provider util for getting User-Agent string

* rename Utils.ts to utils.ts

* [gha] refactor how non-blocking docker images are built (aptos-labs#5992)

* Run faucet tests for testnet on high-perf-docker (aptos-labs#7604)

* [dashboards] sync grafana dashboards (aptos-labs#7582)

Co-authored-by: rustielin <rustielin@users.noreply.github.com>

* [forge] change grafana URL (aptos-labs#7609)

* [forge] change grafana URL

* [forge] add backtrace

* [forge] fix tests

* [gha] build all docker variants on push (aptos-labs#7613)

* [gha] revert conditional docker and forge builds (aptos-labs#7615)

* Revert "[gha] build all docker variants on push (aptos-labs#7613)"

This reverts commit ad99d66.

* Revert "[gha] refactor how non-blocking docker images are built (aptos-labs#5992)"

This reverts commit 27c0ec5.

* [consensus] Fix unnecessary metric dimension (aptos-labs#7388)

saw
Metric Family 'aptos_consensus_current_round_voted_power' over 1000 dimensions '6807'
in logs

* [forge] fix yaml quotation (aptos-labs#7620)

* [api] Remove gas price estimation (aptos-labs#7610)

* Support rewards rate decrease in aptos-framework.

* Add E2E test for rewards rate decrease

* [Refactor] StakingRewardsConfig uses fixed_point64

* Skip timeout prover test

* [Storage][Sharding] Split tree commit into multiple batches. (aptos-labs#7578)

* [Quorum Store] reduce false positives of timeout and low vote count (aptos-labs#7483)

### Description

Late votes will re-init batch metadata. We assume if a batch hasn't completed and hasn't received a self vote that they are created due to late votes, and don't log their metrics.

* [forge] Remove broken test from stable job (aptos-labs#7617)

Remove one broken test, adjust the threshold for the other

Test Plan: running on PR

Co-authored-by: Rustie Lin <rustie117@gmail.com>

* [Move-prover][Spec] Revive the pragma verify_duration_estimate  (aptos-labs#7634)

* revive verify duration estimate

* fix spec

* algebra.move (aptos-labs#6550)

* generic algebraic structures and operations in move, plus bls12381 implementation

* fix prover test failures

* update

* update doc

* update msm gas cost

* hash_to gas formula update

* type names and documentations

* update groth16 example

* update gas formula for dst shortening

* format name update

* update gas parameters

* update gas scripts to not depend on MUL

* reuse move-stdlib sha2 gas parameters in aptos-stdlib (aptos-labs#7568)

* reuse move-stdlib sha2 gas parameters in aptos-stdlib

* cleanup

* update doc

* shorten symbol names

* doc update

* update gas script readme

* rename module to crypt_algebra (aptos-labs#7586)

* better module names

* aptos framework now has access to the full move stdlib gas params

* [CLI] Add `ed25519` vanity account generator, docs (aptos-labs#7521)

* bump ts sdk version (aptos-labs#7626)

* [api] Fix legacy testing for gas (aptos-labs#7641)

* [aptos-rosetta] Fix all simple maps to be vector rather than Btreemap (aptos-labs#7642)

BTreeMap only works if the input was ordered at first.  If it's not
ordered, then it will fail at deserialization.

* [consensus] Make block retrieval more aggressive (aptos-labs#7383)

Block retrieval had no parallelism, was dropping responses from previous retries during new retries, etc.

Making it similar to batch_requestor

* [txn emitter] Fix txn emitter client filtering (aptos-labs#7433)

* [txn emitter] Fix txn emitter client filtering

We were pinging one client at a time, and so it can take 10s of seconds to fetch all.
And we only allowing for 10s of 10k traffic in between (Because we were comparing versions)

- fetch all in parallel
- compare onchain timestamp, so it is not affected by traffic

* more detailed stats

* [CLI] Do not suggest people use a faucet for mainnet accounts (aptos-labs#7524)

* [Peer Monitoring Service] Refactor request/response messages.

* [Peer Monitoring Service] Add server-side support for node info
requests.

* improve naming of example (aptos-labs#7655)

* [Configs] Remove invalid dependency.

* [Configs] Remove global constants.

* [Configs] Small cleanups to the config code.

* [Configs] Add copy derives to appropriate configs.

* [Peer Monitoring Service] Add client-side support for node info messages.

* [Peer Monitoring Service] Add tests for node info requests.

* [Config] Add Copy derive to Monitoring Config. (aptos-labs#7656)

* [Peer Monitoring Service] Garbage collect peer states.

* [Peer Monitoring Service] Simple test utility refactor.

* Remove erroneous duplicated comment (aptos-labs#7597)

The removed warning in question appears to be duplicated from the `new_script` function directly above.

* update explorer doc (aptos-labs#7595)

* [TS SDK] script to fetch and publish ans contract for tests (aptos-labs#7268)

* script to fetch and publish ans contract for tests

* fix script

* refactor script

* ignore ans script in eslint

* add logs and catch errors

* meaningful variable name, function for reusable code

* publish ans module in separate command

* run ans publish script in workflow

* clone repo through https

* fix typo on yaml file

* modifyworkflow file for testing

* use env var to run aptos commands

* typo

* parse node errors

* use custom networks when initialize an account

* add --network host flag

* add --network host flag

* use path.resolve()

* console log for testing

* remove path resolve

* logs

* use specific commit

* use specific commit

* revert commit

* remove debug logs

* use pre created account

* use pre created account

* use pre created account

* typo

* use account address without 0x

* mount host directory to container

* Debugging: List directory

* Use parent stdio in execSync, format script file

* Add ls inside container

* Try using proper GH temp directory

* Do not rely on runner vars existing at env var time

* Clean up

* set default vars

* revert docker build yaml file

* fmt

* remove publish ans contract in test command

* update changelog

---------

Co-authored-by: Daniel Porteous <danielporteous1@gmail.com>

* Remove unsafe (aptos-labs#7667)

* remove unsafe

* add comment

* update load_account_arg to load account address if exist (aptos-labs#7560)

* consensus and mempool get max_receiving_messages config (aptos-labs#7601)

consensus and mempool get max_network_channel_size config

* Add logging to Forge wrapper and auto-detect cloud (aptos-labs#7646)

* [hack] Debug unblocking gcp forge

Test Plan: Ran locally in forge-runner-mode local, found cronjob was the failing part

Also check this runs on PR correctly

* [Configs] Refactor configs into different files.

* name conflict error (aptos-labs#7661)

* [SDK] Refactor and move the TypeTagParser to type_tag file (aptos-labs#7659)

* Refactor and move the TypeTagParser to type_tag folder

* update TypeTagParser import from property_map_serde.ts

* [Storage] Add some metrics. (aptos-labs#7624)

* Remove prettydiff default features (aptos-labs#7497)

* Update Cargo.toml

* Update Cargo.lock and Cargo.toml

---------

Co-authored-by: dependabot-ci <no-reply@github.com>

* fix internal (aptos-labs#7673)

* Add string formatting routines to the aptos stdlib (aptos-labs#7520)

* First pass

* Add extra tests

* small change

* Small refactor

* fmt

* Small refactor

* Small refactor

* fmt

* Fixes

* fixes

* Add string support

* add gas

* refactor

* fix vectors

* fix vectors

* fix vectors

* gas feature number

* fmt

* literal fmt string

* rewrite

* update

* fix + fmt

* fmt

* fixes

* Remove escaping

* Add comments

* Rewrite cfg testing

* regen docs

* Ignore quorum store messages when recovery manager is active (aptos-labs#7530)

* Ignore quorum store messages when recovery manager is active

* Run Lint

* Made changes as per comment on the PR

* Made changes as per PR comments

* Made changes as per PR comments

* Filter out quorum store messages on recovery mode without errors

* Filter out quorum store messages on recovery mode without errors

* Filter out quorum store messages on recovery mode without errors

* Revert "[TS SDK] add User-Agent header to axios call on IndexerClient (aptos-labs#7576)" (aptos-labs#7677)

This reverts commit e3d25e5.

* revert user agent header on aptos client

* Revert "[SDK] Refactor and move the TypeTagParser to type_tag file (aptos-labs#7659)"

This reverts commit beea50a.

* bump sdk version

* [Move] Check for git explicitly in resolution graph (aptos-labs#7585)

* [State Sync] Move logic into different files.

* [Storage Service] Rename 'lru_storage_cache' to 'lru_response_cache'

* Add hourly Forge-on-GCP continuous workflow (aptos-labs#7686)

* Re-add the TypeTagParser (aptos-labs#7685)

* Add Partial Governance Voting Feature Flag

* [dashboards] sync grafana dashboards (aptos-labs#7618)

Co-authored-by: rustielin <rustielin@users.noreply.github.com>

* [tf/aws/gcp][testnet] add variables for toggling monitoring (aptos-labs#7691)

* [mempool] don't remove from mempool on sequence number too new (aptos-labs#7676)

### Description

When execution fails with sequence number too low, this txn shouldn't be removed from mempool. This helps if the txn is too new because of consensus-internal operations, e.g., if a block execution is cut due to gas limit. Worst case, it will be unable to be ordered again until the sequence number is filled.

### Test Plan

Existing tests.

* [framework] add token-objects to cached-packages

* [framework] improve token mint, burn tracking

* Add a mint and burn event for fixed supply
* Add tracking of both the collection id and the token's address to the
  events

This should make it a lot easier to develop with tokens and open up the
usage of guid based tokens instead of named...

* [framework] add unlimited supply collection to replace untracked

* Remove untracked collections from being public usage for now
* Add an unlimited collection for supporting an infinite mint

it is worth noting that untracked + guid don't really work as is and
need more thought... we should probably spend more time figure out how
to really emphasize parallelism

* [framework] remove creation name from token

feedback was that it was confusing
also planning on moving to guid token by default

* [framework] add support for creating a guid token

a guid token is derived from the guid provided by the creator's account.
because of this, when the token is burned it is also deleted, which is
wonderful.

* [framework] rename token::create to token::create_named_token

this more accurately represents the intent of the creation function
named tokens are not fully deletable hence we need multiple ways to
create tokens for now...

* [framework] move aptos token to use guid tokens

this makes sure they are deletable by default

* [python] migrate over to aptos-token-objects on guids

* Update release versions (aptos-labs#7684)

* DRY out repetitive pattern for profile/submit txn (aptos-labs#7693)

* Fix links to migrated Rust resources from Rust Coding Guidelines (aptos-labs#7688)

* fix tip  format (aptos-labs#7668)

* Fix links to TypeScript files reorganized in PR aptos-labs#6993 (aptos-labs#7690)

* Replace links to Move Book and Tutorial with Aptos variants (aptos-labs#7621)

* Replace links to Move Book and Tutorial with Aptos variants

* Link from Move Scripts to Modules and Scripts page of Move Book

---------

Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.local>

* rename

* [fungible_assets] fix bugs, add tests and change object api

* rename fungible_asset_store to fungible_store

* rename fa ungated transfer name for ux purpose

* add remove_store

* more rename

* add optional_aggregator

* add back managed_coin example

* add limit to name/symbol length

* [token_v2] add old/new_value to mutation events and change field name (aptos-labs#7707)

* [gha] docker build conditional fix (aptos-labs#7643)

* Revert "[gha] revert conditional docker and forge builds (aptos-labs#7615)"

This reverts commit fe715ba.

* [gha] docker build conditional fix

* [SDK] Update StructTag.fromString method to use TypeTagParser (aptos-labs#7660)

* Refactor and move the TypeTagParser to type_tag folder

* Update StructTag.fromString method to use TypeTagParser

* add more unit test and update CHANGELOG

* [framework-builder] Add Token v2 bindings to rust

* use shadow-rs GIT_CLEAN in build info (aptos-labs#7712)

Add field build_clean_checkout to build info

* crypto_algebra and bls12381_structures as default features (aptos-labs#7723)

* [cli] Make the 1.0.10 release

* Correct erroneous module bundle comments (aptos-labs#7598)

Module bundles are not the only way to publish modules. Entry functions can publish modules too.

* [model-compiler] Enabling basic type checking of Move functions (aptos-labs#1021)

This is a very first step to enable the move model to process Move functions from source (and not just bytecode), and thus act as a compiler.

In this initial approach, the old Move compiler is run together with the new one. This allows us to continue to have a `CompiledModule` in the `GlobalEnv`. Untangling the model from compiled module is a larger refactoring which we can factor out in different PRs.

A new model builder option `compile_via_model` is added. If set, the body of function definitions will be piped through the model's exp builder to translate expansion AST into model AST, which is no stored in the model and accessible via `FunctionEnv::get_def()`. The model AST has been extended to handle new imperative expression constructs, but the translator has not yet been extended to support imperative constructs. Test infra has been set up as well, to be refined as we proceed.

GitOrigin-RevId: 24da96d9f4b02dd9b3f2f9cb27bb93f3b5433c8a

* [Prover] Added a nested loop invariant example (aptos-labs#961)

Added a nested loop invariant example as a test case

GitOrigin-RevId: 9a58be0da336a145b9cc90661f4360f0d7e83542

* Revert "remove invariant error" (aptos-labs#70)

This reverts commit c93bd7a6e88aa19601707d0ef98c36d7d120ff06.

GitOrigin-RevId: 0623d65038a6ebf9e52fd904c0749e157ab3d41d

* [binary format] optmize the bounds checker

GitOrigin-RevId: 5252b771084290fdd404efbc25a3d9a9d1cf604c

* Fix the CFG bug from Zelig (aptos-labs#73)

* test pwn

* fix

GitOrigin-RevId: a99968bedd284625528279326fdd3ca9d60d0e47

* add regression test (aptos-labs#71)

GitOrigin-RevId: ca5d1ad372c8425d0ab43aa8ab7fdbfcfe5a7bfb

* Fix fmt (aptos-labs#74)

GitOrigin-RevId: c3f22c459df3cb2c0fee22035d813a28bb8e4918

* update the doc for local testnet

* Update first-move-module.md

I have updated the terminal outputs since new versions of CLI output a different message than the one mentioned in this doc.

* Fix some typos in staking docs (aptos-labs#7743)

* Update aptos init in CLI to lookup onchain address based on public key (aptos-labs#7724)

* Update aptos init in CLI to lookup onchain address based on public key

* Update changelog and cleanup based on github code suggestion

* remove missed code comment and update change log

* [rosetta] Add lockup_expiration to account balance metadata (aptos-labs#7711)

* add lockup_expiration to balance endpoint metadata

* lint

* lint formatting

* use utc epoch timestamp

* remove chrono dependency

* `aptos_token::authorized_borrow` (aptos-labs#7640)

* Fix lint.py shell invocation (aptos-labs#7751)

It was passing an obsolete argument to LocalShell constructor.

* [db-tool] trivial: add blanket implementation for save_metadata_line

* dev_setup: better mac-arm support, big deps become optional (aptos-labs#7570)

* dev_setup: better mac-arm support, big deps become optional
   move TS/JS to -J option, move PostgreSQL to -P

* cleanup dead setup clauses

* Improve docs for WELLDONE Remix plugin (aptos-labs#7747)

* Improve docs for WELLDONE Remix plugin

* More changes

* Update spellcheck dictionary

* Fix external link

* Minor rewording

* [storage] update the interface

* [aptos-framework] Cleanup Property map

* Add Move Prover dev environment support to the Windows script (aptos-labs#7607)

* Add Move Prover dependencies, restructure code to accept arguments, and other improvements

* Fix boogie version

* Add additional dotnet directory to path

* Optimize the install_cvc5 function

* Remove while loop and combine 32/64-bit sections

* Remove while loops, combine 32/64-bit sections, and optimize code

* Optimize install_protoc (remove while loop, combine 32/64-bit sections, etc.)

* Expanded install_postgresql to include paths

* Fix npm upgrade command

* Remove check_non_winget_or_installer_package and fix git command

* Fix dotnet path variable

* Remove duplicative function calls

* Update messages

* Create update_versions function to sync versions with dev_setup.sh

* Minor fixes

* Minor fixes v2

* Refresh session's variables, add UseBasicParsing to update_versions, and misc

* Refresh python environment variable and delete excess messages,

* Make install_dotnet version agnostic and improve install_postgresql

* Add cleanup and remove unused function

* Remove CVC5 until newer versions have been tested

* Fix grammar / typos in staking pool operations doc (aptos-labs#7744)

* [aptos-framework] Cleanup tokenv2 royalty

* fix diem specs (aptos-labs#7754)

* [aptos-framework] Cleanup tokenv2 collection

Cleans up docs, adds input length validation

* [aptos-framework] Cleanup tokenv2 token

Added length checks and updated documentation and errors

* [aptos-framework] Ensure token v2 errors use stdlib error

* [aptos-framework] Cleanup tokenv2 aptos_token

* [aptos-framework] Fix off by one limit enforcement in tokenv2

* [aptos-framework] Fix too many tokens to collection limit exceeded

* Support view function execution in e2e test harness

* [aptos-framework] Cleanup fungible asset

Cleaned up fungible asset docs, as well as added
a max decimals check

* Fix logging init in lint.py and find_latest_image.py (aptos-labs#7755)

Move init_logging() to separate file and import it into all the CLIs.

* Bump the TS SDK version to 1.8.4 (aptos-labs#7760)

* [db-tool] backup-continuously: add timeouts to BackupServiceClient

* show faucet endpoint with http scheme (aptos-labs#7748)

aptos init --faucet-url wants http:// , so we should print it in node startup status

* [copybara] Adjust workflows and update README

This refines the methodology for pushing and pulling and updates the description, based on the recent experiences:

- Changes from pushing directly to github to pushing to local repos instead. This allows more control over subsequent operations like manual rebasing.
- Recommends to only push if `aptos-main` is in sync with `third_party`. This will eventually allows us to automate this.
- Details the procedure for pulling with subsequent rebase.

* [Forge] Use Poetry to manage deps (aptos-labs#7745)

* update adapter version to use (aptos-labs#7750)

* [cli] Fix lookup address on init

* [cli] Release 1.0.11 fix

* [fungible_asset] modify the generated name address seed to avoid conflicts if published (aptos-labs#7752)

* test view function with struct arguments and generic type parameters (aptos-labs#7761)

* add test for view

* Add test for generic view struct parameter

* Remove api tests

* small fix

* fmt

* fmt

* create views and indices that were directly applied to db (aptos-labs#7762)

* [Forge] Fix Poetry dependency on Python and update lockfile (aptos-labs#7775)

Instead of fixed 3.11, depend on >=3.7 <4.0.

* rename primary_store to primary_fungible_store (aptos-labs#7779)

* Reduce block size on consensus backpressure (aptos-labs#6967)

And move backpressure config offchain

---------

Co-authored-by: Igor <igor-aptos@users.noreply.github.com>
Co-authored-by: Brian Cho <brian@aptoslabs.com>

* [tokenv2] disallow 0 max_supply

* update devnet, testnet, mainnet version (aptos-labs#7774)

* [docs] Clarify REST service / mempool separation in the life of a transaction doc (aptos-labs#7767)

* [docs] Clarify REST service / mempool separation in the life of a transaction doc

* Update basics-life-of-txn.md

* Update basics-life-of-txn.md

* Update basics-life-of-txn.md

* Clarify more on transaction accept/reject and...

disemmination

* Make slight clarifications

* Lowercase fullnode ref for consistency

---------

Co-authored-by: Brian (Sunghoon) Cho <brian@aptoslabs.com>
Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>

* Explain gas based prioritization in greater detail (aptos-labs#7765)

* Explain gas based prioritization in greater detail

* Add "Increasing gas unit price with in-flight transactions"

* Some edits to minimum gas unit price.

* Explain dimensionless

---------

Co-authored-by: Brian (Sunghoon) Cho <brian@aptoslabs.com>
Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>

* [cli] Fix vector<string> input in the CLI

* [CLI] Correct invalid BCS type arguments

@davidiw @gregnazario

* Use aggregators for p2p transactions in block-stm benchmarks (aptos-labs#7773)

* [Node Configs] Remove unused TestConfig.

* [forge] Fix three region simulation (aptos-labs#7757)

Three region simulation is no longer injecting latency as expected due to changes introduced in aptos-labs#7144. This PR reverts some of those change to make the three region simulation working. I will investigate the cause and follow-up with a fix later.

* Update openssl crate (aptos-labs#7766)

* [aptos-node] Set node version to 1.4.0

* [git config] Do not normalize .ps1 line endings

I experience some strange behavior with the .ps1 Windows powerscript files in our repo when using tools like copybara. It appears those files line endings are auto-normalized on checkout, and then create a diff. This adjusts .gitattributes to turn off autoconversion for those files

* [Forge] Add shell wrapper for Forge commands (aptos-labs#7785)

The way Poetry requires to run scripts is rather inconvenient, and
this hides it all.

* [State Sync] Add sanity checks to storage requests.

* [Node Configs] Small refactors and clean ups.

* [Rust Lint] Fix cached-packages failure. (aptos-labs#7811)

* [Peer Monitor] Change git_hash to build info

* [Peer Monitor] Change connected_peers to a BTreeMap

* [Peer Monitor] Add sanity checks for message sizes.

* Revert "[git config] Do not normalize .ps1 line endings" (aptos-labs#7815)

This reverts commit bcf4da9.

* [CLI] Extend vanity address support to multisig (aptos-labs#7694)

* [Execution Benchmark] Adding github workflow for sequential / parallel execution performance testing (aptos-labs#7552)

* benchmark refactor

* [temp] Example github workflow

* add workflow

* workflow

python file for running the benmark

fix

permission

test

nit

test

test

* set threshold

* lint

* add parallel execution workflow

permissions

concurrency levels

better script

lint and change machine

set thresholds

less conflicts

add block size 100k

50k

set thresholds

better threshold

increase timeout

nit

* rebase

* lint

* to set threshold

* set threshold

* add @main

* rust lint

---------

Co-authored-by: Perry Randall <perryjrandall@gmail.com>

* [Python SDK] Reformat Python file and update poetry lock (aptos-labs#7806)

* [Configs] Fix and update tokio-console features.

* [release] Add a branch cut github action (aptos-labs#7805)

Add a branch cut github action, this reduces the manual operation

Test Plan: tested the action via workflow dispatch on a fork

Because you cannot workflow dispatch until something is already in main

* [Node Configs] Add support for node config sanitization.

* [Node Configs] Add unit tests for sanitization.

* [timed features] set the activation dates property (aptos-labs#7804)

* [bytecote verifier] fix the abstract interpreter bypass bug (aptos-labs#7810)

* fix (aptos-labs#7818)

* [indexer grpc] add metrics to indexer grpc system. (aptos-labs#7715)

* [txn-generator] Add transaction that changes a shared resource (aptos-labs#7556)

We saw very different behavior with transactions that require serial execution, so adding such type to transaction emitter.

With this we have very granular control, setting num_modules param allows to specify the parallelism (as each published module is accessing a resource stored on the publisher account.

* [Doc] Migrate and update the Prover documentation (aptos-labs#7662)

* Initial commit

* Updated `prover-guide.md` and `spec-lang.md`

* Edit Move Prover docs directly, add user guide and MSL spec to side nav

* Addressed the comments

* Replace abortion with abort

* Link to Wikipedia from SMT reference for definition

* Announce Move Prover User Guide and MSL in See what's new

* Initial commit

* Updated `prover-guide.md` and `spec-lang.md`

* Edit Move Prover docs directly, add user guide and MSL spec to side nav

* Addressed the comments

* Replace abortion with abort

* Link to Wikipedia from SMT reference for definition

* Announce Move Prover User Guide and MSL in See what's new

* Fixed the linter issue

* Fixed the linter issue

* Revert pnpm-lock.yaml

* Added more words in the dictionary

---------

Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.localdomain>
Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>
Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.local>

* Remove redundant framework upgrade test in e2e-move-tests

* Remove redundant staking-mainnet e2e-move test

* Add #[ignore] to redundant upgrade smoketest

* Add CLI support for multisig accounts (v2) (aptos-labs#7672)

* Temporarily remove fungible assets code (aptos-labs#7827)

* [Quorum Store] bump up default min interval for batch generation (aptos-labs#7606)

### Description

We saw the network behaving erratically when sending 10 batches/s. With 100 validators, this means processing 1000 votes/s, in addition to other messages. 5 batches/s seems more reasonable (500 votes/s).

* split stages (aptos-labs#7638)

* [Quorum Store] bump num_peers=5 (aptos-labs#7159)

### Description

This is the value that was set in `preview`.

* Use transaction-generator-lib in executor benchmark (aptos-labs#7651)

enabling to test on same workloads as Forge

* Add support for composable forge tests (aptos-labs#7636)

Simplify the testing code, by allowing any two tests to be composed,
instead of needing to have tests with "inner" tests defined.

Additionally, PerformanceTestWithFN is identical to PerformanceTest,
both send to FN if there are any, and to VN otherwise, so cleaning up.

* [Quorum Store] BatchGenerator produces multiple bucketed batches (aptos-labs#7639)

### Description

Create multiple bucketed batches after pulling from BatchGenerator. Each batch is for the bucket indicated by gas_bucket_start. The batch, signing, and broadcast messages all support multiple batches to reduce any additional message overhead compared to creating a single batch.

### Test Plan

Added unit test for buckets. Ran forge three_region_simulation_graceful_overload to see that there are no regressions.

* [resource-viewer] Fix resolution of generics in move types

If there's a generic, the Fat type parsing didn't use the type from
the type arguments, which caused it to fail to parse.  Now, this will
take in the type arguments to properly parse the inputs.

* [SDK] Fix MultisigTransactionPayload deserialization (aptos-labs#7836)

* Add support to generate onchain execution config (aptos-labs#7812)

* Remove unnecessary *& syntax (aptos-labs#7830)

* unify on guides/building-from-source.md (aptos-labs#7670)

unify building instructions in guides/building-from-source.md

---------

Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>

* Split Verify Connections from Connect to Network, edit and link accor… (aptos-labs#7543)

* Split Verify Connections from Connect to Network, edit and link accordingly

* Delete verify-connections.md

* Update developer-docs-site/docs/nodes/validator-node/operator/connect-to-aptos-network.md

* Update developer-docs-site/sidebars.js

* Update developer-docs-site/docs/concepts/staking.md

* Update developer-docs-site/docs/concepts/staking.md

* Update developer-docs-site/docs/nodes/validator-node/operator/connect-to-aptos-network.md

---------

Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.local>
Co-authored-by: David Wolinsky <isaac.wolinsky@gmail.com>

* [model compiler] Introduce patterns and type check assign

This introduces the new type of patterns into the model. Patterns are like expressions but represent lvalues or matches. This is used to implement type checking of assignment. Lets also have been refactored to use patterns during checking, but this isn't yet pushed into the AST, which will be a larger breaking change.

GitOrigin-RevId: 2660b7a59bb38fa65ce514a5e64f631732fe01f0

* cicd: publish internal docker images to new us multi-region registry (aptos-labs#5940)

* [Quorum Store] fairness and priority in proposal via per-author queue (aptos-labs#7315)

### Description

Add a per-author queue in proof manager. On proposal, proofs are taken in a (shuffled) round-robin of authors. This helps maintain some amount of fairness. For example, a single author that creates a huge backlog of proofs can't monopolize blocks if other proofs are also being received.

The per-author queue is prioritized. The tail is taken of the queue, which is sorted by gas bucket (ascending) and batch id (descending).

As a safeguard to spamming attacks, only a single proof can be stored at a time for a given batch.

### Test Plan

Added unit tests, run three region overload tests.

* [API] Log aptos client based on a custom header rather than user agent (aptos-labs#7797)

* [Quorum Store] Include author to transactions in digest (aptos-labs#7788)

### Description

The author in the payload will prevent a malicious validator from making the same payload as another validator, which has some theoretical attacks given our implementation.

* Confirm Docker is running in CLI and faucet e2e tests (aptos-labs#7844)

* Update delegation-pool-operations.md (aptos-labs#7713)

* Update delegation-pool-operations.md

* Make light edits to new computing rewards section

---------

Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>

* Fix visability of calculate_and_save_latest_epoch_rewards_rate

* Remove initialize function from execution config (aptos-labs#7845)

* [framework] Create release config for 1.4 (aptos-labs#7696)

* Added Move Prover supporting resources (aptos-labs#7851)

* [TF] Fixes for PFNs (aptos-labs#7833)

* [CLI e2e] update the e2e readme file for CLI (aptos-labs#7850)

* update the e2e readme file for CLI

* Update README.md

---------

Co-authored-by: Daniel Porteous (dport) <danielporteous1@gmail.com>

* [Configs] Small improvements to chain ID logic.

* Use delaying proposal for chain health backoff as well (aptos-labs#7860)

Delaying proposal works nicer than reduction of block size,
so use it for chain health backoff as well.

* [release-tooling] Add support for execution config (aptos-labs#7864)

* Add logs for transaction shuffling (aptos-labs#7862)

* [vm] propagate error message up instead of logging directly

* [Quorum Store] Update and sanity check consensus block and quorum store batch sizes (aptos-labs#7823)

### Description

Sanity check consensus block sizes and quorum store batch sizes, independently and between each other.

Update batch and block sizes to support at least one 1 MiB txn, and to satisfy the sanity checks.

* [haproxy] Update haproxy 2.2 to latest (aptos-labs#7861)

Test Plan: docker compose / helm apply to testnets

* [Storage service] Add peer IDs to error logs.

* Update proposal metadata (aptos-labs#7859)

* [token v2] rename all collection_id to index (aptos-labs#7952)

* [bytecode verifier] improved signature checker impl (aptos-labs#7960)

* [docker] release images without crane (aptos-labs#7974)

* Turn off crypto algebra and quorum store for v1.4 for now (aptos-labs#7996)

* Update release.yaml

* [framework] Change step names, remove quorum store for now

Test Plan: build with release builder

```
cargo run -p aptos-release-builder -- generate-proposals --release-config aptos-move/aptos-release-builder/data/release.yaml --output-dir /tmp/banana
```

---------

Co-authored-by: zhoujunma <zjma@users.noreply.github.com>

* [release-tooling] Support input key as string (aptos-labs#7882) (aptos-labs#7999)

* [release-tooling] Inputting keys as string

* fixup! [release-tooling] Inputting keys as string

* [tokenv2/hot-fix] correct burn_event (aptos-labs#8011)

* [release-tooling] Fix bug (aptos-labs#8004)

* [aptos_vm]  Add additional logging (aptos-labs#8030)

* [mempool] cherry-pick reduce default failover: 3 -> 1 and related PRs (aptos-labs#8027)

* [Cherry pick] View function Object<T> support (aptos-labs#8051)

* [move-examples] Add view functions to Hero object demo

* [api] Allow Object<T> in view functions

The JSON parsing wasn't working properly for Object<T> so, it now
handles Object types as a one time check, and allows for types to
be provided as well

* Limit num ristretto points (aptos-labs#8153)

* limit the number of ristretto points in a transaction

* tweak

* [docker] Rename experimental builder (aptos-labs#7809) (aptos-labs#8174)

* Require permission check before running determine-docker-build-metadata

* [testsuite][gha] use poetry everywhere and refactor testsuite (aptos-labs#8308) (aptos-labs#8360)

* [testsuite][gha] use poetry everywhere and refactor testsuite

* [python] re-enforce pyright and add python-setup GHA

* [gha] use python-setup action everywhere

* [testsuite] remove poetry wrapper

* [testsuite] update dev dependencies

* [gha] rename POETRY_DIRECTORY to pyproject_directory

* [gha] invoke forge with testrun

* cherry-pick: improved value depth checks in the VM (aptos-labs#8488)

* Bump chart versions 1.1.0

---------

Co-authored-by: Kevin <kevin@aptoslabs.com>
Co-authored-by: Daniel Porteous <danielporteous1@gmail.com>
Co-authored-by: Teng Zhang <rahxephon89@163.com>
Co-authored-by: aldenhu <msmouse@gmail.com>
Co-authored-by: Clay Murphy <114445310+clay-aptos@users.noreply.github.com>
Co-authored-by: Christian Sahar <125399153+saharct@users.noreply.github.com>
Co-authored-by: Greg Nazario <greg@gnazar.io>
Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.local>
Co-authored-by: Zekun Li <li.zekun@gmail.com>
Co-authored-by: Rustie Lin <rustie117@gmail.com>
Co-authored-by: Junkil Park <jpark@aptoslabs.com>
Co-authored-by: gerben-stavenga <54682677+gerben-stavenga@users.noreply.github.com>
Co-authored-by: Angie Huang <123419931+angieyth@users.noreply.github.com>
Co-authored-by: maayan <maayansavir@gmail.com>
Co-authored-by: Love01 <127564669+Love01@users.noreply.github.com>
Co-authored-by: Brian Olson <brianolson@users.noreply.github.com>
Co-authored-by: Jin <128556004+0xjinn@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: rustielin <rustielin@users.noreply.github.com>
Co-authored-by: igor-aptos <110557261+igor-aptos@users.noreply.github.com>
Co-authored-by: Xinding Wei <xinding@aptoslabs.com>
Co-authored-by: Guoteng Rao <3603304+grao1991@users.noreply.github.com>
Co-authored-by: Brian (Sunghoon) Cho <brian@aptoslabs.com>
Co-authored-by: perryjrandall <perryjrandall@gmail.com>
Co-authored-by: zhoujunma <zjma@users.noreply.github.com>
Co-authored-by: alnoki <43892045+alnoki@users.noreply.github.com>
Co-authored-by: Maayan <maayan@aptoslabs.com>
Co-authored-by: Josh Lind <josh.lind@hotmail.com>
Co-authored-by: David Wolinsky <isaac.wolinsky@gmail.com>
Co-authored-by: jill <121921928+jillxuu@users.noreply.github.com>
Co-authored-by: Stelian Ionescu <stelian@aptoslabs.com>
Co-authored-by: Gerardo Di Giacomo <19227040+gedigi@users.noreply.github.com>
Co-authored-by: dependabot-ci <no-reply@github.com>
Co-authored-by: Satya Vusirikala <satyasatya123456@gmail.com>
Co-authored-by: Frances Liu <frances.liu168@gmail.com>
Co-authored-by: fgfm999 <96854585+fgfm999@users.noreply.github.com>
Co-authored-by: Aaron Gao <lightmark@gmail.com>
Co-authored-by: Wolfgang Grieskamp <wg@aptoslabs.com>
Co-authored-by: Junkil Park <juki14@gmail.com>
Co-authored-by: Victor Gao <vgao1996@gmail.com>
Co-authored-by: runtianz <runtian@aptoslabs.com>
Co-authored-by: zhoujun.ma <zhoujun@aptoslabs.com>
Co-authored-by: Atharv varshney <97945699+Atharv777@users.noreply.github.com>
Co-authored-by: Supriya M <31637785+supriyam9@users.noreply.github.com>
Co-authored-by: Bo Wu <bo@aptoslabs.com>
Co-authored-by: bowenyang007 <carlyang007@gmail.com>
Co-authored-by: Igor <igor-aptos@users.noreply.github.com>
Co-authored-by: Rati Gelashvili <gelash@users.noreply.github.com>
Co-authored-by: Balaji Arun <balaji@aptoslabs.com>
Co-authored-by: danielx <66756900+danielxiangzl@users.noreply.github.com>
Co-authored-by: Victor Gao <10379359+vgao1996@users.noreply.github.com>
Co-authored-by: larry-aptos <112209412+larry-aptos@users.noreply.github.com>
Co-authored-by: Clay Murphy <claymurphy@MacBook-Air.localdomain>
Co-authored-by: Kevin <105028215+movekevin@users.noreply.github.com>
Co-authored-by: Sital Kedia <sitalkedia@users.noreply.github.com>
Co-authored-by: Christian Theilemann <christian@aptoslabs.com>
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.

None yet

4 participants