# Grin + Grin Wallet 2.1.0 Released

**URL:** <https://forum.grin.mw/t/grin-grin-wallet-2-1-0-released/6308>\
**Category:** Announcements\
**Created:** [October 23, 2019, 5:27pm UTC](https://forum.grin.mw/t/grin-grin-wallet-2-1-0-released/6308 "2019-10-23T17:27:53Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Yeastplume](https://avatars.discourse-cdn.com/v4/letter/y/71c47a/32.png) [@Yeastplume](https://forum.grin.mw/u/Yeastplume)\
**Post date:** [October 23, 2019, 5:27pm UTC](https://forum.grin.mw/t/grin-grin-wallet-2-1-0-released/6308/1 "2019-10-23T17:27:53Z")

</div>

Grin and Grin wallet 2.1.0 has been released! This release includes many updates, improvements and fixes, details of which can be found below.

Note this is a non-breaking release, and should work as a drop-in replacement binaries for the Grin 2.0.0 release, with which this release is fully compatible. A few upgrade configuration notes related to Wallet API Tokens should be observed if your configuration uses them.

Thanks to all Grin contributors and community for their hard work and help testing this release!

**Binaries**

[Grin 2.1.0 Binaries](https://github.com/mimblewimble/grin/releases/tag/v2.1.0)  
[Grin Wallet 2.1.0 Binaries](https://github.com/mimblewimble/grin-wallet/releases/tag/v2.1.0)

**Release Planning**

[Planning notes for the 2.1.0 release](https://github.com/mimblewimble/grin-pm/issues/179)

**Major changes and enhancements**

**Node** :

- Blocking IO (major changes to networking implementation)
- Improved handling of p2p connections (inbound and outbound peer connections)
- Implement batch verification of kernel signatures (50% performance increase)
- Kernel serialization optimization (and increased flexibility)
- Numerous smaller fixes and improvements (see linked issues on the release page)

**Further Details**

Details for all node changes for the 2.1.0 release can be found here:

> **[mimblewimble/grin](https://github.com/mimblewimble/grin/milestone/14?closed=1)**
>
> Minimal implementation of the Mimblewimble protocol. - mimblewimble/grin

**Wallet**

- Addition of the V3 Owner API, (at `/owner/v3`) which includes lifecycle functions for creating wallets, as well as enhanced security between the server and clients. A full description of the new API can be found in the rustdoc documentation and at [crates.io](https://docs.rs/grin_wallet_api/2.1.0/grin_wallet_api/).
- Fixes to API secret handling, note the upgrade notice below
- Fixes to transactions not confirming when no change outputs exist
- Addition of the kernel excess field to the transaction log, to help with identifying transactions on the chain

**Upgrade Notice**

**Wallet API Tokens**

- Upon wallet creation, the wallet now creates 2 authentication tokens in the wallet directory: `.api_secret` and `.owner_api_secret`
- `.api_secret` is the secret shared with the node for wallet to node communication. Previous versions used this file for both node communication and Owner API authentication. This file should now only be used for the node secret and users should update files and paths in `grin-wallet.toml` accordingly
- `.owner_api_secret` is now used only to authenticate the Owner API.
- In `grin-wallet.toml` , `api_secret_path` corresponds to the Owner API secret file ( `.owner_api_secret` by default), while `node_api_secret_path` corresponds to the node secret file ( `.api_secret` by default)
- When running the Owner and Foreign APIs on the same port via the `owner_api_include_foreign` option in `grin-wallet.toml` , calls to the Foreign API no longer require the Owner API authentication secret.

**Kernel Excess**

- 2 fields are added to the `TxLogEntry` as found in the `retrieve_txs` and `get_stored_tx` functions:
  - `kernel_excess` - Optional kernel excess (identifier) for the transaction
  - `kernel_lookup_min_height` - The minimum height to begin scanning for a kernel excess value when attempting to retrieve it from the nod.

**Futher Details**

Details on all wallet changes for the 2.1.0 release can be found here:

> **[mimblewimble/grin-wallet](https://github.com/mimblewimble/grin-wallet/milestone/5?closed=1)**
>
> Grin Wallet. Contribute to mimblewimble/grin-wallet development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![bryon](https://avatars.discourse-cdn.com/v4/letter/b/91b2a8/32.png) [@bryon](https://forum.grin.mw/u/bryon)\
**Post date:** [December 18, 2019, 3:41pm UTC](https://forum.grin.mw/t/grin-grin-wallet-2-1-0-released/6308/2 "2019-12-18T15:41:18Z")

</div>

How come I get runtime errors when trying to install this?? I am on win 10
