Releases: penumbra-zone/penumbra
022-hegemone
- An upgrade to Tendermint 0.35.9, which incorporates some bug fixes for the p2p issues that have resulted in network connectivity issues on our previous testnets: https://github.com/tendermint/tendermint/blob/v0.35.9/CHANGELOG.md#v0.35.9
- Relaxes the missed block window to reduce the jailing of validators: #1203
- More progress towards IBC: this testnet includes improvements and bugfixes to allow opening IBC connections to Cosmos SDK chains: https://twitter.com/penumbrazone/status/1550024949615579136
- Added support for generating ephemeral addresses using
pcli addr ephemeral
: #1193 - Simplified extended tx downloading: #1204
- Bugfix: resolves the “not a valid NCT root” that several users reported in the previous testnet: #1206
- Bugfix: Bans duplicate consensus keys: #1207
021-Eurydome
Major changes:
- 20-30x faster syncing (!) thanks to optimizations to the
poseidon377
library and parallelization of trial decryption - added the ability to fetch user transaction data from the chain to the
view
service using just a provided viewing key (commands to view this data will be coming in the next release!)
Internal changes:
- various optimizations and improvements to the TCT and JMT, including significant optimization of our JMT
get
function
Full Changelist
- K0kk0k doc fixs by @k0kk0k in #1063
- pcli: port tx sweep logic by @hdevalence in #1065
- impl Add for MockFlowCiphertext by @zbuc in #1069
- Swap mock & stub implementations by @zbuc in #1052
- Incremental serialization API for the TCT by @plaidfinch in #1076
- deps: pin
poseidon377
to a branch with the existing parameters by @redshiftzero in #1102 - Initial changes to support viewing transaction data in view service by @aubrika in #1064
- Integrate incremental TCT serialization by @plaidfinch in #1103
- Measure download speed for block stream by @plaidfinch in #1105
- chore: update go protos by @avahowell in #1117
- pd: don't create spans in hot functions by @hdevalence in #1121
- Use a lookup table for commonly encountered internal TCT hashes by @plaidfinch in #1125
- feat(crypto): impl outgoing decryption by @redshiftzero in #1075
- spec: poseidon377 overview by @redshiftzero in #1106
- Set the level for every #[instrument] in the TCT to "trace" by @plaidfinch in #1129
- Implement block inclusion proof support in TCT by @zbuc in #1130
- Add epoch and block anchors to JMT by @plaidfinch in #1132
- Address trivial clippy suggestions across project by @plaidfinch in #1134
- rename diversifier index to address index by @redshiftzero in #1135
- Make tokio-console support an opt-in flag for
pd
by @plaidfinch in #1137 - pcli: add a
pcli q tx HASH
subcommand that prints full transaction data by @hdevalence in #1162 - decode ABCI key data as hex by default by @avahowell in #1136
- ibc: allow nil version in ConnectionOpenInit, fix unwrap in ibc events by @avahowell in #1165
- pd: accelerate block streaming with concurrent state access by @hdevalence in #1166
- feat: segment the address space to distinguish ephemeral addresses by @redshiftzero in #1171
- update tendermint to 0.35.8 by @avahowell in #1164
- chain: record
NoteSource
s inCompactBlock
s by @hdevalence in #1172 - Add TransactionFetcher functionality to retrieve transaction data fro… by @aubrika in #1116
- doc: rebuild docs with new crate by @redshiftzero in #1173
- Create eurydome testnet directory & update queue-type to simple-priority in tendermint config by @aubrika in #1174
- Implement GitHub Action for building/publishing protobuf docs by @zbuc in #1070
- cargo update and suppress warnings by @hdevalence in #1175
- remove poseidon-permutation from docs build by @redshiftzero in #1177
- Update user guide for eurydome-021 by @aubrika in #1179
- cargo update by @redshiftzero in #1182
- view: perform trial decryption in parallel by @hdevalence in #1183
Full Changelog: 020-aitne...021-eurydome.1
020-Aitne
Major changes:
- Undelegations now wait for the unbonding period to complete, and can be slashed while unbonding
- Tendermint updated to 0.35.7 to address p2p issues
- Automated workflow for joining an existing testnet, with a new pd testnet join command
Internal changes:
- Added infrastructure for IBC app handlers, paving the way for the implementation of ICS20 transfers
- Started work on swap transactions
019-erinome
Major changes:
- Add an RPC to the
view
service that allows awaiting change outputs - Transactions are now confirmed in
pcli
using the aboveawait-change
functionality of theview
service - Adds a basic
pcli q
interface for making user state queries - Adds typed queries to the
pcli q
App
has been extracted intopenumbra-app
create- Adds an initial event recording system
Bug fixes:
- Fixes
pcli
error on first sync wheresync
would hang and block height would appear to be exceeded on initial sync - Fixes
pd
panic due to --host short name (-h) conflicting with --help (-h) - Fixes NCT divergence issue between
pcli
andpd
018-euanthe.1
Another incremental testnet release.
017-carpo.1
Redo of 017-carpo with a bugfix included.
017-carpo
This release has two major changes:
-
It finishes the initial integration of the tiered note commitment tree in last week's testnet, so all transaction proofs are now made with the TCT and checked against the TCT anchors.
-
It completely replaces the
pcli
code with a new client architecture broken into modular services: a view service responsible for syncing the private chain state, a custody service responsible for authorizing transactions, and wallet logic that does asynchronous RPC to a generic view and custody service. This allows chain scanning to be done either in-process or out-of-process with a newpviewd
binary. In the future, it will also allow diverse custody setups, like a signing server, hardware wallet, threshold signing, etc.
016-pandia
Major changes:
- Replaces the binary merkle tree used for note commitments with a tiered quadtree (#840), which in the future will allow dramatic improvements to the performance of client synchronization (right now we are not yet taking advantage of its fast-forward sync capabilities; this speedup will come in a later update)
- Adds support for IBC channels (#801)
- Adds new commands to
pcli
for printing information about the chain parameters and summary info (#835) - Adds an initial custody protocol (#846)
015-Ersa
Happy Friday, everyone! We've just deployed another testnet, codenamed Ersa: https://en.wikipedia.org/wiki/Ersa_(moon)
As you know, we've been working through some Tendermint P2P issues that have caused halts on our previous testnets: while the Penumbra app logic worked fine, the validators stopped talking to each other, and then stopped producing blocks as soon as one validator dipped below a supermajority of stake.
With some help from some other members of the ecosystem (particularly the Strangelove, Iqlusion, and Interchain teams, huge thanks to everyone!) we found and fixed some potentially contributing factors in our testnet configuration, and we're looking forward to confirming this with the current testnet.
We don't have any big changes to the chain in this release -- although we have some exciting changes in the pipeline -- so the main goal is to confirm that the new configuration avoids the previous issues. As a backup, we've allocated a clear supermajority of stake to the primary testnet validator, so it can continue producing blocks if the P2P issues recur.
You can interact with the testnet using the command-line client pcli, or join as a full node or validator using pd by following the guide: https://guide.penumbra.zone/ .
We've also added a public Grafana dashboard, which currently displays data from Tendermint: https://testnet.penumbra.zone/d/i_UiDu_7z/consensus
Going forward, we'll be expanding observability of the Penumbra side in pd, so we can get more insight into testnet activity.
Some reminders:
- Check out the new release, git checkout 015-ersa-v2 to be sure you're on the latest version;
- Reset your local client state: cargo run --release --bin pcli -- wallet reset;
- If you're running a full node or validator, wipe your configs and follow the new instructions!: https://guide.penumbra.zone/main/pd/join-testnet/fullnode.html
Thanks for helping us test Penumbra! 🌒
012-Kale
This is a minor release to fix issues that halted the chain in the 011-Sponde testnet release. There are no new features in this release.