<commit_before># Changelog
All notable changes to `frunk` and its subcrates will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [Unreleased]:
- Added `ToMut` trait, which allows borrowing mutably from a Coproduct or HList.
- Allow `#[derive(LabelledGeneric)]` on tuple structs
- Add `Path` model and `PathTraverser` trait, which allows for composable lens-like-usage
- Make macros call themselves recursively with `$crate::` 

## [0.2.2] - 2018-10-21
- Added support for [transmogrifying (recursively sculpting)](https://docs.rs/frunk/0.2.2/frunk/labelled/trait.Transmogrifier.html) one data type into another

## [0.2.1] - 2018-09-29
- Upgraded to `syn` 0.15 and `quote` to 0.6<commit_msg>Update changelog for v0.2.4 release<commit_after># Changelog
All notable changes to `frunk` and its subcrates will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [Unreleased]:

## [0.2.4] - 2019-02-10
### Added
- Added `ToMut` trait, which allows borrowing mutably from a Coproduct or HList.
- Added support for `#[derive(LabelledGeneric)]` on tuple structs
- Added `Path` model and `PathTraverser` trait, which allows for composable lens-like-usage

### Changed
- Make macros call themselves recursively with `$crate::`

## [0.2.3]
- Skipped due to [release mis-steps](https://github.com/lloydmeta/frunk/pull/150#issue-251682325)

## [0.2.2] - 2018-10-21
- Added support for [transmogrifying (recursively sculpting)](https://docs.rs/frunk/0.2.2/frunk/labelled/trait.Transmogrifier.html) one data type into another

## [0.2.1] - 2018-09-29
- Upgraded to `syn` 0.15 and `quote` to 0.6
{'fraction_non_alphanumeric': 0.13996806812134113, 'fraction_numerical': 0.05375199574241618, 'mean_word_length': 4.280898876404494, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 3, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6832086', 'n_tokens_mistral': 722, 'n_tokens_neox': 657, 'n_words': 195}