# Changelog for zcash-haskell All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [0.5.1.0] ### Changed - Modified the `makeZebraCall` function to handle errors explicitly ## [0.5.0.1] ### Added - Function to encode a human-readable transparent address - Function to generate a seed phrase - Implementations of `Read` for types - Function to make RPC calls to `zebrad` - Function to encode unified addresses from receivers - Function to generate an Orchard spending key - Constants for Zcash protocol - Types for Spending Keys and Receivers for Sapling and Orchard - Function to generate an Orchard receiver - Function to generate a Sapling receiver - Function to generate a Transparent receiver ### Changed - Update installation to `cabal` - Updated Rust crates: - `bech32` to 0.11 - `orchard` to 0.7.0 - `zcash_note_encryption` to 0.4.0 - `zcash_primitives` to 0.13.0 - `zcash_client_backend` to 0.10.0 - `zip32` to 0.1.0 - Changed the `UnifiedAddress` to allow for optional shielded receivers ### Removed - `Makefile` ## [0.3.0] ### Added - Type to represent a transparent address/receiver ### Changed - Full decoding of Unified Address ## [0.2.0] ### Added - `matchOrchardAddress` function to ensure a UA matches a UVK and corresponding tests - `makeZcashCall` function moved into this library - `RpcResponse`, `RpcCall` types moved into this library - Functions to decode Sapling transactions - Tests for Sapling decoding - Type for block response - Type for raw transaction response - JSON parsers for block response, transaction response, `ShieldedOutput` and `OrchardAction` - Tests for JSON parsers - Haddock annotations ### Changed - Rearranged modules for cleaner dependencies. - Upgrade to Haskell LTS 21.6 ## [0.1.0] - 2023-06-14 ### Added - Function `decodeHexText` - Function `decodeBech32` - Function `f4Jumble` - Function `f4UnJumble` - Function `isValidShieldedAddress` - Function `isValidSaplingViewingKey` - Function `matchSaplingAddress` - Function `isValidUnifiedAddress` - Function `decodeUfvk` - Function `decryptOrchardAction` - Type `RawData` - Type `ShieldedOutput` - Type `OrchardAction` - Type `OrchardDecodedAction` - Type `UnifiedFullViewingKey`