# Migration to v0.2.2

### Summary of Proposal for Blockchain Upgrade to Version 0.2.2: <a href="#for-linux-distributions-using-prebuild-binary" id="for-linux-distributions-using-prebuild-binary"></a>

This proposal outlines a planned upgrade to our blockchain network, moving to version 0.2.2. The upgrade introduces critical improvements and new features aimed at enhancing the system’s functionality, security, and stability.

#### Key Changes

**1. Improvements to the DID Repository Module**

• **Enhanced Validations:** New validation mechanisms have been introduced to ensure greater data integrity and security.

• **Minor Optimizations**: Several optimizations have been applied to improve the performance and efficiency of the DID Repository module.

**2. Introduction of the New Minter Module**

• **Controlled Token Emission Mechanism**: The new minter module introduces a controlled token emission mechanism. This module allows for token minting according to predefined configurations, ensuring a regulated supply.

• **Structured Minting Process:** The minting process is structured through a series of minters, each with its own configuration and timeframe, allowing for varied emission strategies.

• **Flexible Minting Configurations**: Supported minting configurations include no minting, linear minting (emitting a fixed number of tokens over a period), and exponential step minting (emitting decreasing amounts of tokens over successive periods). This module ensures flexible and sustainable token distribution, adapting to the network’s evolving needs.

**3. Introduction of the New Vesting Module**

• **Vesting Account Management:** The new vesting module facilitates the creation and management of vesting accounts on the blockchain, ensuring a controlled release of tokens over time.

• **Creating and Splitting Vesting Accounts**: It enables token holders to create new continuous vesting accounts or split existing ones, preserving the overall token distribution schedule. The `MsgCreateVestingAccount` message allows any token holder to initiate a vesting account, specifying the start and end times for token release. Additionally, the `MsgSplitVestingAccount` message allows existing vesting accounts to divide their locked tokens into new accounts, maintaining the original vesting conditions. This module is essential for managing token distribution securely and flexibly.

**4. Security Fixes**

• This upgrade includes several important security fixes to enhance the overall security of the network.

### For Linux AMD Distributions <a href="#for-linux-distributions-using-prebuild-binary" id="for-linux-distributions-using-prebuild-binary"></a>

Download the tar.gz file:

```
curl -LO https://github.com/empe-io/empe-chain-releases/raw/master/v0.2.2/emped_v0.2.2_linux_amd64.tar.gz
```

Verify the checksum (change filename for ARM):

```
sha256sum emped_v0.2.2_linux_amd64.tar.gz
```

You should see the following:

```
0f45bd48d902fd4e55ae3f1d460b0cac0136792fddc53edfdea67bcc55d86395 emped_v0.2.1_linux_amd64.tar.gz
```

Unpack the tar.gz file:

```
tar -xvf emped_v0.2.2_linux_amd64.tar.gz
```

Move the binary to your local bin directory:

```
mkdir -p ~/go/bin
sudo mv emped ~/go/bin
```

Check the version

```
emped version
```

You should see the following:

```
0.2.2
```

### Setup cosmovisor <a href="#setup-cosmovisor" id="setup-cosmovisor"></a>

\
Create cosmovisor upgrade dir

```
export DAEMON_HOME=$HOME/.empe-chain/
mkdir -p $DAEMON_HOME/cosmovisor/upgrades/v0.2.2/bin
```

Put binary in proper dir

```
cp ~/go/bin/emped $DAEMON_HOME/cosmovisor/upgrades/v0.2.2/bin
```

Just to be sure check version (should be 0.2.2)

```
$DAEMON_HOME/cosmovisor/upgrades/v0.2.2/bin/emped version
```

### For Linux ARM Distribution

If (and only if) you're running ARM Linux, download this file instead:

```
curl -LO https://github.com/empe-io/empe-chain-releases/raw/master/v0.2.2/emped_v0.2.2_linux_arm64.tar.gz
```

Verify the checksum

```
sha256sum emped_v0.2.2_linux_arm64.tar.gz
```

You should see the following:

```
e86494527b47b9ab59b5704b6f7823eb3668bf2a8873d0afce80813db12a02f1  emped_v0.2.2_linux_arm64.tar.gz
```

Unpack the tar.gz file:

```
tar -xvf emped_v0.2.2_linux_arm64.tar.gz
```

Follow other steps as for AMD distribution
