|
| 1 | +# Introducing the v4.x Protocol Release! 🚀 |
| 2 | + |
| 3 | +This upgrade moved cheqd to support **Cosmos SDK v0.50 "Eden"**. |
| 4 | + |
| 5 | +**Cosmos SDK v0.50** is a long-term support version bringing major improvements in performance, developer experience, and modularity. Key features include **ABCI++** for more flexible and efficient consensus and **IAVL 1.0** for faster and more efficient data storage. It also adds **Optimistic Execution** to reduce block times and **Sign Mode Textual** for clearer, more secure transaction signing. This release sets a solid foundation for building faster, more customizable applications on cheqd. |
| 6 | + |
| 7 | +We also **enhanced our DIDs** to support a more flexible **service section**, enabling direct connections to `did:cheqd` DIDs using **DIDComm**. This enhancement brings full cheqd support for **DIDComm endpoint discovery**, making it easier for apps and SDKs like **ACA-Py** and **Credo** to integrate seamless messaging and communication. |
| 8 | + |
| 9 | +You can find more technical details about this upgrade on our [product docs page](https://docs.cheqd.io/product/network/upgrades/2025/4.x). |
| 10 | + |
| 11 | +## Actions that should be taken |
| 12 | + |
| 13 | +- If you're running your node with Cosmovisor and have the binary auto-download feature enabled, **no action is required**. |
| 14 | + |
| 15 | +- In case you run standalone node, you can download the `v4.1.1` binary from our [GitHub Releases page](https://github.com/cheqd/cheqd-node/releases/tag/v4.1.1) and replace them manually on your node. |
| 16 | + |
| 17 | +### ⚠️ Potential errors with binary auto download on Cosmovisor v1.7.1 |
| 18 | + |
| 19 | +In case you are running Cosmovisor **v1.7.1**, you might see one potential error when upgrade height is reached. |
| 20 | +Apparently, even though binary is correctly downloaded to `/home/cheqd/.cheqdnode/cosmovisor/upgrades/v4`, the wrong file (the LICENSE file) gets copied to `bin/cheqd-noded`. As a result, your node won’t start after the upgrade. |
| 21 | + |
| 22 | +We suspect this issue is related to upstream Cosmos SDK `x/upgrade` module, and we will investigate separately of this release. |
| 23 | + |
| 24 | +> **ℹ️** This does not present a danger to your node state, but node won't start until you replace binaries. |
| 25 | +
|
| 26 | +### 🛠️ How to Prevent This Issue |
| 27 | + |
| 28 | +You have two options: |
| 29 | + |
| 30 | +1) **Re-run [interactive installer](https://raw.githubusercontent.com/cheqd/cheqd-node/refs/heads/main/installer/installer.py)** to make sure you're running Cosmovisor v1.3.0 **before upgrade height is reached**. If you already used interactive installer, just make sure to download the latest one from the link above. |
| 31 | + |
| 32 | +2) Alternatively, you can **replace binaries when upgrade height is reached**. You can achieve this with one simple command: |
| 33 | + |
| 34 | + ```bash |
| 35 | + cp -P /home/cheqd/.cheqdnode/cosmovisor/upgrades/v4/cheqd-noded /home/cheqd/.cheqdnode/cosmovisor/upgrades/v4/bin/cheqd-noded |
| 36 | + ``` |
| 37 | + |
| 38 | + To confirm this resolved you issue, just run this: |
| 39 | + |
| 40 | + ```bash |
| 41 | + cheqd-noded version |
| 42 | + ``` |
| 43 | + |
| 44 | +### Check Cosmovisor version |
| 45 | + |
| 46 | +To determine whether you need to take any action, check your current Cosmovisor version: |
| 47 | + |
| 48 | +```bash |
| 49 | + cosmovisor --help |
| 50 | +``` |
| 51 | + |
| 52 | +If you're running version **later than v1.3.0**, you will see output like this: |
| 53 | +
|
| 54 | +```text |
| 55 | + Available Commands: |
| 56 | + add-batch-upgrade Add multiple upgrade binaries at specified heights to cosmovisor |
| 57 | + add-upgrade Add APP upgrade binary to cosmovisor |
| 58 | + completion Generate the autocompletion script for the specified shell |
| 59 | + config Display cosmovisor config. |
| 60 | + help Help about any command |
| 61 | + init Initialize a cosmovisor daemon home directory. |
| 62 | + prepare-upgrade Prepare for the next upgrade |
| 63 | + run Run an APP command. |
| 64 | + show-upgrade-info Display current upgrade-info.json from <app> data directory |
| 65 | + version Display cosmovisor and APP version. |
| 66 | +``` |
| 67 | +
|
| 68 | +**In v1.3.0**, these upgrade-related commands are **not available** (add-batch-upgrade, add-upgrade, prepare-upgrade): |
| 69 | +
|
| 70 | +```text |
| 71 | + Available Commands: |
| 72 | + completion Generate the autocompletion script for the specified shell |
| 73 | + help Help about any command |
| 74 | + init Initializes a cosmovisor daemon home directory. |
| 75 | + run Run an APP command. |
| 76 | + version Prints the version of Cosmovisor. |
| 77 | +``` |
| 78 | +
|
| 79 | +To summarize, If you see the second (shorter) output above, you're good to go! ✅ |
| 80 | + |
| 81 | +If not, refer back to the previous section and either: |
| 82 | + |
| 83 | +- Roll back to v1.3.0, or |
| 84 | +- Manually replace the binaries at the upgrade height. |
| 85 | + |
| 86 | +If anything's unclear or if you face any additional issues, you can always ask for support on our [#mainnet-operators](https://discord.com/channels/879754359859216394/943432923565154354) Discord channel! |
| 87 | +Also, follow the updates on [our status page](https://status.cheqd.net) and [🔊mainnet-upgrades](https://discord.com/channels/879754359859216394/1394975809139249215) Discord channel. |
0 commit comments