Skip to content

Commit

Permalink
Merge tag 'v0.13.0' into ray/eth-bridge-0.13
Browse files Browse the repository at this point in the history
Namada 0.13.0

* tag 'v0.13.0': (166 commits)
  Namada 0.13.0
  finalize_block: remove unused import
  misc: change log level
  misc: change log level
  chore: missing file
  ledger: add some blocks statistics logs
  changelog: add #972
  chore: clippy/fmt
  ledger: remove/changed some logs
  ledger: use genesis fees
  genesis: added parameter to control wrapper tx fees amount
  wasm: update checksums.json
  changelog: add #969
  test/e2e: add a case to withdraw from PoW faucet
  client/tx and signing: add wrapper signer balance check and add PoW
  ledger/queries/vp: add testnet pow and faucet methods
  wasm/vp_testnet_faucet: check PoW, use withdrawal_limit set in storage
  expose the `has_valid_pow` result via VP wasm host env
  validate PoW in mempool, proposal and finalize and keep the result
  shell/init_chain: init faucet storage, if used
  add `faucet_account` parameter and set it from `init_chain` if found
  genesis: add faucet_pow_difficulty and faucet_withdrawal_limit
  add "mainnet" feature flag, off by default for now
  storage_api/lazy_map: export `get_data_key` fn for client
  core/ledger: add testnet_pow module
  re-export `namada` from `namada_tests` for `namada_core` dev-deps
  changelog: add #903
  changelog: add #975
  wasm: update checksums.json
  Fix consensus params config for ABCI++
  wasm: update checksums.json
  Remove boilerplate code in favor of StorageKeys macro
  Update Cargo deps
  Define Keys struct with all ledger param key types
  Fix #882
  changelog: add #926
  changelog: add #974
  changelog: add #973
  wasm: update checksums.json
  Update documentation/docs/src/user-guide/ibc.md
  added ibc docs and new favicon
  Update README.md
  Update README.md
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
  Revert "Merge pull request #965 from anoma/brent/fix-validator-commission-change-test"
  ci: fix e2e test script
  Reduces block size to 5 MiB
  Add `max_proposal_bytes` ledger param
  Moves ledger sleep
  Refactors ledger sleep
  Adds start time argument to namada ledger
  Update README.md
  Adds  const and default token to basic fee
  changelog: add #968
  add `NAMADA_LOG_FMT` env var with one of: full (default), json or pretty
  [ci] wasm checksums update
  core/storage: remove redundant `StorageWrite` impl for mut ref
  changelog: #966
  core/storage_api: use GATs to hide lifetime in StorageRead trait
  changelog: add #962
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
  Fixes unit tests
  Fixes process proposal fee token
  Fixes fee value in tx contruction
  Adds fee burning and checks
  core/storage/mockDB: remove unused `reverse_order` flag
  Add JSON as an option for logging by env var
  changed to 0.12.2
  ci: install cargo-about after sccache server up
  Namada 0.12.2
  release: cherry-pick release improvements
  changelog: add #952
  prepare_proposal: update comment to reflect hotfix
  prepare_proposal: use TxRecord struct on ABCI++ build
  missed a chain-id addition
  Prioritize wrapper txs during proposal construction
  Hot fix PrepareProposal
  added chain id and fixed install docs
  update pseudocode
  General housekeeping
  Reward distribution: general improvements
  Cubic slashing: general writing improvements
  Cubic slashing: add new improved pseudocode blurb (Rust-style)
  Cubic slashing: clarify slash iteration procedure and equation
  Cubic slashing: fix and improve plot
  quick fix to cubic slash
  wasm: update checksums.json
  changelog: add #911
  changelog: add #876
  test/core: run less cases on `update_epoch_after_its_duration` test
  Update link to install section
  changelog: add #945
  ci: install cargo-about on release step
  make-package.sh: include license information in tarball
  ...
  • Loading branch information
juped committed Jan 12, 2023
2 parents 6f1cd75 + 5da82f0 commit 177c857
Show file tree
Hide file tree
Showing 170 changed files with 3,941 additions and 1,700 deletions.
2 changes: 2 additions & 0 deletions .changelog/v0.12.2/bug-fixes/952-hotfix-prepare-proposal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Limit block space to under Tendermint's limit, and limit transactions included
in a block by their size. ([#952](https://github.com/anoma/namada/pull/952))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Don't attempt to include matchmaker DLLs, which no longer exist, in release
packages. ([#943](https://github.com/anoma/namada/pull/943))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Include license information in release binary tarballs.
([#945](https://github.com/anoma/namada/pull/945))
2 changes: 2 additions & 0 deletions .changelog/v0.12.2/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Namada 0.12.2 is a hotfix release, limiting transactions included in a
block by size.
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Fix the commission rate change wasm test, which failed because an arbitrary
value for a new rate was allowed that could be equal to the previous rate.
([#965](https://github.com/anoma/namada/pull/965))
3 changes: 3 additions & 0 deletions .changelog/v0.13.0/bugs/912-remove-prefix-iter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Removed 'rev_iter_prefix' from storage API as its implementation
depends on RocksDB and it doesn't work as expected.
([#912](https://github.com/anoma/namada/pull/912))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/features/973-namada-start-time.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Add a --time argument to the node to specify the time the node should start.
([#973](https://github.com/anoma/namada/pull/973))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/features/974-resize-block.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Reduce the block size for transactions to 5 MiB.
([#974](https://github.com/anoma/namada/pull/974))
3 changes: 3 additions & 0 deletions .changelog/v0.13.0/improvements/900-no-send-async-traits.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Disable 'Send' on async traits that don't need 'Send'
futures. This allows to use them with 'wasm-bindgen'.
([#900](https://github.com/anoma/namada/pull/900))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Binary search ledger storage keys to match faster.
([#903](https://github.com/anoma/namada/pull/903))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/improvements/909-fix-queries-rustdoc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Make queries data structures public for inclusion in rustdoc.
([#909](https://github.com/anoma/namada/pull/909))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/improvements/926-storage-keys-procmacro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Add a macro to derive storage keys from a struct.
([#926](https://github.com/anoma/namada/pull/926))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/improvements/962-basic-fee.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Added a basic fee implementation for testnet.
([#962](https://github.com/anoma/namada/pull/962))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Hide the explicit lifetime from StorageRead trait.
([#966](https://github.com/anoma/namada/pull/966))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/improvements/968-logging-fmt.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Allow to set the tracing format with NAMADA_LOG_FMT env var to either full
(default), json or pretty. ([#968](https://github.com/anoma/namada/pull/968))
4 changes: 4 additions & 0 deletions .changelog/v0.13.0/improvements/969-testnet-pow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- Added an optional PoW challenge to the wrapper transactions for testnets,
to allow to submit transactions without having enough balance to cover
the minimum transaction fee and to withdraw tokens from a faucet account.
([#969](https://github.com/anoma/namada/pull/969))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/improvements/972-genesis-wrapper-fees.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Add genesis parameter to control wrapper transaction fees.
([#972](https://github.com/anoma/namada/pull/972))
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/improvements/975-max-block-size.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Add a max_proposal_bytes parameter to the ledger.
([#975](https://github.com/anoma/namada/pull/975))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Update tendermint to v0.1.4-abciplus.
([#667](https://github.com/anoma/namada/pull/667))
1 change: 1 addition & 0 deletions .changelog/v0.13.0/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Namada 0.13.0 is a scheduled minor release.
2 changes: 2 additions & 0 deletions .changelog/v0.13.0/testing/876-faster-epoch-test.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Run fewer cases on update_epoch_after_its_duration, for a faster test suite.
([#876](https://github.com/anoma/namada/pull/876))
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Use the correct options (--gas-amount, --gas-
token) in the ledger_txs_and_queries E2E test.
([#911](https://github.com/anoma/namada/pull/911))
3 changes: 3 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,9 @@ jobs:
restore-keys: ${{ runner.os }}-namada-release-${{ matrix.namada_cache_version }}
- name: Start sccache server
run: sccache --start-server
- name: Install cargo-about
run: |
cargo install --version 0.5.2 cargo-about
- name: ${{ matrix.make.name }}
run: make ${{ matrix.make.command }}
- name: Upload binaries package
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/scripts/schedule-e2e.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,6 @@ def find_freer_machine():
command = CARGO_TEST_COMMAND.format(test_name)
subprocess.check_call(command, shell=True, stdout=sys.stdout, stderr=subprocess.STDOUT)
except:
continue
print("TEST FAILED: {}".format(test_name))
print("run locally with: {}".format(command))
break
79 changes: 79 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,84 @@
# CHANGELOG

## v0.13.0

Namada 0.13.0 is a scheduled minor release.

### BUG FIXES

- Fix the commission rate change wasm test, which failed because an arbitrary
value for a new rate was allowed that could be equal to the previous rate.
([#965](https://github.com/anoma/namada/pull/965))

### BUGS

- Removed 'rev_iter_prefix' from storage API as its implementation
depends on RocksDB and it doesn't work as expected.
([#912](https://github.com/anoma/namada/pull/912))

### FEATURES

- Add a --time argument to the node to specify the time the node should start.
([#973](https://github.com/anoma/namada/pull/973))
- Reduce the block size for transactions to 5 MiB.
([#974](https://github.com/anoma/namada/pull/974))

### IMPROVEMENTS

- Disable 'Send' on async traits that don't need 'Send'
futures. This allows to use them with 'wasm-bindgen'.
([#900](https://github.com/anoma/namada/pull/900))
- Binary search ledger storage keys to match faster.
([#903](https://github.com/anoma/namada/pull/903))
- Make queries data structures public for inclusion in rustdoc.
([#909](https://github.com/anoma/namada/pull/909))
- Add a macro to derive storage keys from a struct.
([#926](https://github.com/anoma/namada/pull/926))
- Added a basic fee implementation for testnet.
([#962](https://github.com/anoma/namada/pull/962))
- Hide the explicit lifetime from StorageRead trait.
([#966](https://github.com/anoma/namada/pull/966))
- Allow to set the tracing format with NAMADA_LOG_FMT env var to either full
(default), json or pretty. ([#968](https://github.com/anoma/namada/pull/968))
- Added an optional PoW challenge to the wrapper transactions for testnets,
to allow to submit transactions without having enough balance to cover
the minimum transaction fee and to withdraw tokens from a faucet account.
([#969](https://github.com/anoma/namada/pull/969))
- Add genesis parameter to control wrapper transaction fees.
([#972](https://github.com/anoma/namada/pull/972))
- Add a max_proposal_bytes parameter to the ledger.
([#975](https://github.com/anoma/namada/pull/975))

### MISCELLANEOUS

- Update tendermint to v0.1.4-abciplus.
([#667](https://github.com/anoma/namada/pull/667))

### TESTING

- Run fewer cases on update_epoch_after_its_duration, for a faster test suite.
([#876](https://github.com/anoma/namada/pull/876))
- Use the correct options (--gas-amount, --gas-
token) in the ledger_txs_and_queries E2E test.
([#911](https://github.com/anoma/namada/pull/911))

## v0.12.2

Namada 0.12.2 is a hotfix release, limiting transactions included in a
block by size.

### BUG FIXES

- Limit block space to under Tendermint's limit, and limit transactions included
in a block by their size. ([#952](https://github.com/anoma/namada/pull/952))

### MISCELLANEOUS

- Don't attempt to include matchmaker DLLs, which no longer exist, in release
packages. ([#943](https://github.com/anoma/namada/pull/943))
- Include license information in release binary tarballs.
([#945](https://github.com/anoma/namada/pull/945))

## v0.12.1

Namada 0.12.1 is a hotfix release, fixing a node crash on malformed
Expand Down
36 changes: 26 additions & 10 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,9 @@ check-abcipp:
--no-default-features \
--features "abcipp ibc-mocks-abcipp testing"

check-mainnet:
$(cargo) check --workspace --features "mainnet"

clippy-wasm = $(cargo) +$(nightly) clippy --manifest-path $(wasm)/Cargo.toml --all-targets -- -D warnings

clippy:
Expand Down Expand Up @@ -85,6 +88,9 @@ clippy-abcipp:
make -C $(wasms) clippy && \
$(foreach wasm,$(wasm_templates),$(clippy-wasm) && ) true

clippy-mainnet:
$(cargo) +$(nightly) clippy --all-targets --features "mainnet" -- -D warnings

clippy-fix:
$(cargo) +$(nightly) clippy --fix -Z unstable-options --all-targets --allow-dirty --allow-staged

Expand Down Expand Up @@ -158,6 +164,13 @@ test-unit:
--skip e2e \
-Z unstable-options --report-time

test-unit-mainnet:
$(cargo) test \
--features "mainnet" \
$(TEST_FILTER) -- \
--skip e2e \
-Z unstable-options --report-time

test-unit-debug:
$(debug-cargo) test \
$(TEST_FILTER) -- \
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ After installation, the main `namada` executable will be available on path.
To find how to use it, check out the [User Guide section of the docs](https://docs.namada.net/user-guide/index.html).

For more detailed instructions and more install options, see the [Install
section](https://docs.namada.net/user-guide/install.html) of the User
section](https://docs.namada.net/user-guide/install/index.html) of the User
Guide.

## ⚙️ Development
Expand Down
22 changes: 22 additions & 0 deletions about.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Third Party Licenses

Overview of licenses:

{{#each overview}}
{{{name}}} ({{count}})
{{/each}}

All license text:

{{#each licenses}}
{{{name}}}

Used by:

{{#each used_by}}
{{crate.name}} {{crate.version}}
<{{#if crate.repository}}{{crate.repository}}{{else}}https://crates.io/crates/{{crate.name}}{{/if}}>
{{/each}}

{{{text}}}
{{/each}}
Loading

0 comments on commit 177c857

Please sign in to comment.