# Changelog 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). ## v0.14.0 (2024-10-29) ### Chore - add autoformatting config ### New Features - list known features ### Commit Statistics - 2 commits contributed to the release. - 6 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#156](https://github.com/Unleash/yggdrasil/issues/156), [#157](https://github.com/Unleash/yggdrasil/issues/157) ### Commit Details
view details * **[#156](https://github.com/Unleash/yggdrasil/issues/156)** - Add autoformatting config ([`10369a0`](https://github.com/Unleash/yggdrasil/commit/10369a0bd4b6139709aeb144ea23a6a51fa56a54)) * **[#157](https://github.com/Unleash/yggdrasil/issues/157)** - List known features ([`443f662`](https://github.com/Unleash/yggdrasil/commit/443f662a614ef3c207d8c4974b374db5ae93b956))
## v0.13.3 (2024-10-22) ### Chore - ARM ruby build ### Bug Fixes - move wasm engine to handle featureEnabled not feature_enabled ### Commit Statistics - 3 commits contributed to the release over the course of 28 calendar days. - 32 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#145](https://github.com/Unleash/yggdrasil/issues/145), [#149](https://github.com/Unleash/yggdrasil/issues/149) ### Commit Details
view details * **[#145](https://github.com/Unleash/yggdrasil/issues/145)** - ARM ruby build ([`f8310a7`](https://github.com/Unleash/yggdrasil/commit/f8310a76fc2f23eb39127e88bbcef7bb49ff528c)) * **[#149](https://github.com/Unleash/yggdrasil/issues/149)** - Move wasm engine to handle featureEnabled not feature_enabled ([`fc90974`](https://github.com/Unleash/yggdrasil/commit/fc9097467a2985d37559c7850b5f78b37a5b51fc)) * **Uncategorized** - Release unleash-yggdrasil v0.13.3 ([`c2f0cb7`](https://github.com/Unleash/yggdrasil/commit/c2f0cb758eb00d26d307aa7c76052f3b5529f6c6))
## v0.13.2 (2024-09-20) ### Chore - make wasm build again * chore: make wasm build again * chore: make hostname a feature instead * fix: put tests behind feature, include env when needed * refactor: organize imports slightly differently * chore: test all features ### Bug Fixes - makes random distribution better distributed ### Commit Statistics - 3 commits contributed to the release over the course of 13 calendar days. - 14 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#141](https://github.com/Unleash/yggdrasil/issues/141), [#144](https://github.com/Unleash/yggdrasil/issues/144) ### Commit Details
view details * **[#141](https://github.com/Unleash/yggdrasil/issues/141)** - Make wasm build again ([`33cd400`](https://github.com/Unleash/yggdrasil/commit/33cd400eb57f52386ba9d583a68b0401a14b47a8)) * **[#144](https://github.com/Unleash/yggdrasil/issues/144)** - Makes random distribution better distributed ([`5c8ba06`](https://github.com/Unleash/yggdrasil/commit/5c8ba06563dc48a13188fe1fabb4794e5959ef9c)) * **Uncategorized** - Release unleash-yggdrasil v0.13.2 ([`0286e61`](https://github.com/Unleash/yggdrasil/commit/0286e612a087cac48f62df056afa1b579ccc7d77))
## v0.13.1 (2024-09-06) ### Chore - add changelog ### Commit Statistics - 5 commits contributed to the release. - 48 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#139](https://github.com/Unleash/yggdrasil/issues/139) ### Commit Details
view details * **[#139](https://github.com/Unleash/yggdrasil/issues/139)** - Fix/inversion always supported ([`9bd0aac`](https://github.com/Unleash/yggdrasil/commit/9bd0aace1b304b6c9660bb52f63abd2fa0755a62)) * **Uncategorized** - Release unleash-yggdrasil v0.13.1 ([`f8de91a`](https://github.com/Unleash/yggdrasil/commit/f8de91a2516fb70616e23c68357c75fad7a6ac2d)) - Add changelog ([`645f606`](https://github.com/Unleash/yggdrasil/commit/645f6062535ff1ee966ed544639864d4872a1e55)) - Adjusting changelogs prior to release of unleash-yggdrasil v0.13.1 ([`2130699`](https://github.com/Unleash/yggdrasil/commit/2130699da93d945f35db5d27ce742f3abdc4272f)) - Merge branch 'main' of github.com:Unleash/yggdrasil ([`abc78e7`](https://github.com/Unleash/yggdrasil/commit/abc78e7ba019dae94536d200e5ed7f76e2b43847))
## v0.13.0 (2024-07-19) ### Chore - update unleash-types and chrono - apply some lints and fixes ### Commit Statistics - 3 commits contributed to the release over the course of 23 calendar days. - 84 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#130](https://github.com/Unleash/yggdrasil/issues/130) ### Commit Details
view details * **[#130](https://github.com/Unleash/yggdrasil/issues/130)** - Apply some lints and fixes ([`c1b1012`](https://github.com/Unleash/yggdrasil/commit/c1b10122322044b12e62c7bf873982c2c46f3c3f)) * **Uncategorized** - Release unleash-yggdrasil v0.13.0, safety bump 2 crates ([`b6c0a25`](https://github.com/Unleash/yggdrasil/commit/b6c0a25793de0c6d2f3ef0cfe2f6c7c753320b96)) - Update unleash-types and chrono ([`4743bd0`](https://github.com/Unleash/yggdrasil/commit/4743bd064343e4971dbcb8098edf73cc4219e962))
## v0.12.0 (2024-04-25) ### Chore - bump unleash types to 0.12 ### Commit Statistics - 2 commits contributed to the release. - 56 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#124](https://github.com/Unleash/yggdrasil/issues/124) ### Commit Details
view details * **[#124](https://github.com/Unleash/yggdrasil/issues/124)** - Bump unleash types to 0.12 ([`1912fda`](https://github.com/Unleash/yggdrasil/commit/1912fdaddb4f4adcfbd3cf2e5b3b11fc50366794)) * **Uncategorized** - Release unleash-yggdrasil v0.12.0 ([`5c82cb1`](https://github.com/Unleash/yggdrasil/commit/5c82cb1f53c7944237c4a87403d0e727c872ec70))
## v0.11.0 (2024-02-29) ### Chore - allow take_state to bubble warnings to caller ### Commit Statistics - 2 commits contributed to the release. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#123](https://github.com/Unleash/yggdrasil/issues/123) ### Commit Details
view details * **[#123](https://github.com/Unleash/yggdrasil/issues/123)** - Allow take_state to bubble warnings to caller ([`39b586f`](https://github.com/Unleash/yggdrasil/commit/39b586ff9b4b44d7f6660c5cedbaf7003e3fc36a)) * **Uncategorized** - Release unleash-yggdrasil v0.11.0 ([`ddb8216`](https://github.com/Unleash/yggdrasil/commit/ddb82163acf9246214478202f1e20f4078609e8a))
## v0.10.0 (2024-02-29) ### Chore - remove orig file ### Bug Fixes - toggle compile failures now bubble - one toggle failing to compile will no longer affect other toggles ### Refactor - better handling for unwrapping grammar nodes ### Commit Statistics - 6 commits contributed to the release. - 36 days passed between releases. - 4 commits were understood as [conventional](https://www.conventionalcommits.org). - 3 unique issues were worked on: [#120](https://github.com/Unleash/yggdrasil/issues/120), [#121](https://github.com/Unleash/yggdrasil/issues/121), [#122](https://github.com/Unleash/yggdrasil/issues/122) ### Commit Details
view details * **[#120](https://github.com/Unleash/yggdrasil/issues/120)** - One toggle failing to compile will no longer affect other toggles ([`cc58f30`](https://github.com/Unleash/yggdrasil/commit/cc58f306862bb1105732ffc73c653e240f333a46)) * **[#121](https://github.com/Unleash/yggdrasil/issues/121)** - Better handling for unwrapping grammar nodes ([`b8cecbc`](https://github.com/Unleash/yggdrasil/commit/b8cecbcab3a39e353a259fd0a7517b9301857f57)) * **[#122](https://github.com/Unleash/yggdrasil/issues/122)** - Toggle compile failures now bubble ([`d5023d1`](https://github.com/Unleash/yggdrasil/commit/d5023d13858e23c2ffababe70e398a340ba00a6b)) * **Uncategorized** - Release unleash-yggdrasil v0.10.0 ([`e6adf79`](https://github.com/Unleash/yggdrasil/commit/e6adf79f80abf760ba3f07eaced8601eb1cee655)) - Release unleash-yggdrasil v0.10.0 ([`e528c7a`](https://github.com/Unleash/yggdrasil/commit/e528c7acaf9c06575212541dfcb2b8e1c71b7bb6)) - Remove orig file ([`3a72666`](https://github.com/Unleash/yggdrasil/commit/3a72666241cb30d45d3a52cbca723f996570713b))
## v0.9.0 (2024-01-23) ### Chore - update types lib - bump unleash-types and chronos ### New Features - add handling for remote address strategy for subnets and IPv6 - implement hostname strategy in core - add feature enabled property to variant checks - Bubble up errors on take state * Add test for parse error * Propagate errors in parse date ### Bug Fixes - hostname strategy is now generated correctly and ignores case - strategies that are broken will now default to false ### Commit Statistics - 10 commits contributed to the release over the course of 62 calendar days. - 71 days passed between releases. - 8 commits were understood as [conventional](https://www.conventionalcommits.org). - 9 unique issues were worked on: [#101](https://github.com/Unleash/yggdrasil/issues/101), [#102](https://github.com/Unleash/yggdrasil/issues/102), [#103](https://github.com/Unleash/yggdrasil/issues/103), [#109](https://github.com/Unleash/yggdrasil/issues/109), [#110](https://github.com/Unleash/yggdrasil/issues/110), [#114](https://github.com/Unleash/yggdrasil/issues/114), [#118](https://github.com/Unleash/yggdrasil/issues/118), [#97](https://github.com/Unleash/yggdrasil/issues/97), [#98](https://github.com/Unleash/yggdrasil/issues/98) ### Commit Details
view details * **[#101](https://github.com/Unleash/yggdrasil/issues/101)** - Implement hostname strategy in core ([`9613508`](https://github.com/Unleash/yggdrasil/commit/96135082118aed41db212df32ebcbcd901d0fb82)) * **[#102](https://github.com/Unleash/yggdrasil/issues/102)** - Strategies that are broken will now default to false ([`9e881fc`](https://github.com/Unleash/yggdrasil/commit/9e881fc9124da149033aceb154cd9b627ce65ed6)) * **[#103](https://github.com/Unleash/yggdrasil/issues/103)** - Hostname strategy is now generated correctly and ignores case ([`d7158ce`](https://github.com/Unleash/yggdrasil/commit/d7158ce28aed33583a3316af127e3631415d4f65)) * **[#109](https://github.com/Unleash/yggdrasil/issues/109)** - Bump unleash-types and chronos ([`1611a11`](https://github.com/Unleash/yggdrasil/commit/1611a117751d847763acc4f57592c627c39d4523)) * **[#110](https://github.com/Unleash/yggdrasil/issues/110)** - Add handling for remote address strategy for subnets and IPv6 ([`f4f6ab8`](https://github.com/Unleash/yggdrasil/commit/f4f6ab8f1ca9e03c7c46c8e6b132aac1d207f2e9)) * **[#114](https://github.com/Unleash/yggdrasil/issues/114)** - Fix(core)/missing strategy variants no longer impacts other strategies ([`1f58217`](https://github.com/Unleash/yggdrasil/commit/1f58217f8da9536abcaa4ddd25003541964ab1ad)) * **[#118](https://github.com/Unleash/yggdrasil/issues/118)** - Update types lib ([`799674d`](https://github.com/Unleash/yggdrasil/commit/799674dcf4f2937451f815525e60017d7e8ae830)) * **[#97](https://github.com/Unleash/yggdrasil/issues/97)** - Bubble up errors on take state ([`054cac7`](https://github.com/Unleash/yggdrasil/commit/054cac7ccbf1b5127de3b2f5f761f6464ffd725a)) * **[#98](https://github.com/Unleash/yggdrasil/issues/98)** - Add feature enabled property to variant checks ([`5225301`](https://github.com/Unleash/yggdrasil/commit/5225301a1c8c5922bb3314ddf5ed513da39302c3)) * **Uncategorized** - Release unleash-yggdrasil v0.9.0 ([`fd92260`](https://github.com/Unleash/yggdrasil/commit/fd92260da07fb3cda2a1fa526ad84bc70d9a1283))
## v0.8.0 (2023-11-13) ### Chore - apply cargo fmt ### New Features - add shouldemitimpressionevents to yggdrasil and .NET wrapper * feat: add shouldemitimpressionevents to yggdrasil and .NET wrapper * feat: added some impression events tests in dotnet engine ### Bug Fixes - make free floating quotes in string operators work correctly ### Other - fix normalized hash result to start from 1 instead of 0 ### Commit Statistics - 7 commits contributed to the release over the course of 12 calendar days. - 13 days passed between releases. - 5 commits were understood as [conventional](https://www.conventionalcommits.org). - 5 unique issues were worked on: [#56](https://github.com/Unleash/yggdrasil/issues/56), [#63](https://github.com/Unleash/yggdrasil/issues/63), [#65](https://github.com/Unleash/yggdrasil/issues/65), [#75](https://github.com/Unleash/yggdrasil/issues/75), [#80](https://github.com/Unleash/yggdrasil/issues/80) ### Commit Details
view details * **[#56](https://github.com/Unleash/yggdrasil/issues/56)** - Custom strategies in ruby and support in the core engine ([`77537e0`](https://github.com/Unleash/yggdrasil/commit/77537e0b45f197fa8ed43e061e1107dabb5c2a57)) * **[#63](https://github.com/Unleash/yggdrasil/issues/63)** - Apply cargo fmt ([`fbfbe32`](https://github.com/Unleash/yggdrasil/commit/fbfbe329dfbf435e4a010769bd118e6a9e347325)) * **[#65](https://github.com/Unleash/yggdrasil/issues/65)** - Fix normalized hash result to start from 1 instead of 0 ([`adb57f6`](https://github.com/Unleash/yggdrasil/commit/adb57f62ea8fd3db99107fdb22c562371c7032b0)) * **[#75](https://github.com/Unleash/yggdrasil/issues/75)** - Add shouldemitimpressionevents to yggdrasil and .NET wrapper ([`8c5330b`](https://github.com/Unleash/yggdrasil/commit/8c5330b1b6935ecd695058b9c7aa79d3f7766122)) * **[#80](https://github.com/Unleash/yggdrasil/issues/80)** - Make free floating quotes in string operators work correctly ([`6919241`](https://github.com/Unleash/yggdrasil/commit/6919241817638a7005974b0b85753e2464faa0fe)) * **Uncategorized** - Release unleash-yggdrasil v0.8.0, safety bump 2 crates ([`d11c481`](https://github.com/Unleash/yggdrasil/commit/d11c4819117491ad882d516807f54ae5608e8277)) - Release unleash-yggdrasil v0.7.0 ([`d9204d6`](https://github.com/Unleash/yggdrasil/commit/d9204d6e4301f64a038f2bed447bf3db08c0f8a8))
## v0.7.0 (2023-10-30) ### Other - fix normalized hash result to start from 1 instead of 0 ### Bug Fixes - make free floating quotes in string operators work correctly ### Chore - apply cargo fmt ### New Features - new hashing implemented for variants - add shouldemitimpressionevents to yggdrasil and .NET wrapper * feat: add shouldemitimpressionevents to yggdrasil and .NET wrapper * feat: added some impression events tests in dotnet engine ### Commit Statistics - 3 commits contributed to the release. - 17 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#61](https://github.com/Unleash/yggdrasil/issues/61) ### Commit Details
view details * **[#61](https://github.com/Unleash/yggdrasil/issues/61)** - New hashing implemented for variants ([`df0d854`](https://github.com/Unleash/yggdrasil/commit/df0d85445a91d987219fc60d26f2c6c097c0d878)) * **Uncategorized** - Release unleash-yggdrasil v0.7.0 ([`b57e44c`](https://github.com/Unleash/yggdrasil/commit/b57e44cbcd79973896c6facd50f91866c1641a4a)) - Release unleash-yggdrasil v0.7.0 ([`38b87b5`](https://github.com/Unleash/yggdrasil/commit/38b87b52d980fe623d683d4d9bd792bbf34eeff2))
## v0.6.1 (2023-10-13) ### New Features - add dependent flags ### Description This PR adds dependent flags to Yggdrasil, complying with the updated client specs. Regarding these extra points not covered by the spec: metrics are not called on dependent features :: this is covered and tested impression events are called on dependent features for easier debugging :: yggdrasil doesn't touch impression events warning events for missing dependencies are reported once :: yggdrasil doesn't deal with warnings @kwasniew , there is a line in resolveVariant in the Node SDK that checks for parent dependencies being satisfied. What exactly does it do? I tried doing something similar here, but removed it because the tests pass either way. Is this an edge case not covered by the tests, or is it just that the implementations differ here? ### (Important) Commits * feat(#2255): update client specs * Wip: impl 1 (without updating unleash-types) * feat(#2255): add test to check that metrics aren't recorded * feat(#2255): fix assumption in test * feat(#2255): avoid counting metrics for parents * feat(#2255): make deps always a vec * feat(#2255): use unleash-types type for dependency * feat(#2255): bump unleash-types * feat(#2255): add test for metrics if parent flag has variants * Get variant without counting * feat(#2255): add test to ensure get_variant works ### Bug Fixes - allows current time to be assumed when calculating the context ### Commit Statistics - 4 commits contributed to the release. - 2 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#49](https://github.com/Unleash/yggdrasil/issues/49), [#51](https://github.com/Unleash/yggdrasil/issues/51) ### Commit Details
view details * **[#49](https://github.com/Unleash/yggdrasil/issues/49)** - Add dependent flags ([`d89c183`](https://github.com/Unleash/yggdrasil/commit/d89c1837e1ef965eaea49e2b54c5a71bfa475877)) * **[#51](https://github.com/Unleash/yggdrasil/issues/51)** - Allows current time to be assumed when calculating the context ([`8bf7a69`](https://github.com/Unleash/yggdrasil/commit/8bf7a697411cd9e4b029151253740d67104faa88)) * **Uncategorized** - Release unleash-yggdrasil v0.6.1 ([`7cc8312`](https://github.com/Unleash/yggdrasil/commit/7cc831213005a619452121074a997d4a23a6f7b4)) - Release unleash-yggdrasil v0.6.1 ([`32c21f6`](https://github.com/Unleash/yggdrasil/commit/32c21f6155deb4c1b7331f11c18e9a7a232f9489))
## v0.6.0 (2023-10-10) ### New Features - make ruby useful This introduces a useful set of code for Ruby. This is very much a spike, there are still some potential leaks in this code and there's no build system to actually emit the artefacts we actually need to consume this in another library. But the logic appears to be correct overall and this is a useful spike to building the other ffi consumers ### Bug Fixes - non strategy variants will work with empty strategy variants ### Refactor - better public api for ffi consumers * refactor: redesign metrics to better capture missing toggles/variants and be easier to pass * refactor: slightly better internal handling for counting and take state ### Commit Statistics - 4 commits contributed to the release over the course of 56 calendar days. - 84 days passed between releases. - 3 commits were understood as [conventional](https://www.conventionalcommits.org). - 3 unique issues were worked on: [#42](https://github.com/Unleash/yggdrasil/issues/42), [#43](https://github.com/Unleash/yggdrasil/issues/43), [#48](https://github.com/Unleash/yggdrasil/issues/48) ### Commit Details
view details * **[#42](https://github.com/Unleash/yggdrasil/issues/42)** - Better public api for ffi consumers ([`e08f62b`](https://github.com/Unleash/yggdrasil/commit/e08f62b77a8eb20121989fecf2b0161f9dc34215)) * **[#43](https://github.com/Unleash/yggdrasil/issues/43)** - Make ruby useful ([`c878e95`](https://github.com/Unleash/yggdrasil/commit/c878e9535018ecc10f99419528d1f6b8d2e9d6c5)) * **[#48](https://github.com/Unleash/yggdrasil/issues/48)** - Non strategy variants will work with empty strategy variants ([`137e4c8`](https://github.com/Unleash/yggdrasil/commit/137e4c8364f62262d7968c21e012e06083b6bd50)) * **Uncategorized** - Release unleash-yggdrasil v0.6.0 ([`26f86b6`](https://github.com/Unleash/yggdrasil/commit/26f86b6023fa8be52a20158aade78646550c00cf))
## v0.5.9 (2023-07-18) ### Chore - updated to new chrono and unleash-types ### New Features - add support for strategy variants ### Commit Statistics - 3 commits contributed to the release over the course of 20 calendar days. - 25 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#40](https://github.com/Unleash/yggdrasil/issues/40), [#41](https://github.com/Unleash/yggdrasil/issues/41) ### Commit Details
view details * **[#40](https://github.com/Unleash/yggdrasil/issues/40)** - Updated to new chrono and unleash-types ([`7707e87`](https://github.com/Unleash/yggdrasil/commit/7707e875027b6e100205ae5e3a2fd416f4af17ea)) * **[#41](https://github.com/Unleash/yggdrasil/issues/41)** - Add support for strategy variants ([`135639f`](https://github.com/Unleash/yggdrasil/commit/135639fca552048221a626ff5e3beef1c35d7825)) * **Uncategorized** - Release unleash-yggdrasil v0.5.9 ([`851f488`](https://github.com/Unleash/yggdrasil/commit/851f488a2e4ec4c5217ffaa221cbc62aef5f6d2f))
## v0.5.8 (2023-06-23) ### New Features - add single toggle resolve method - basic FFI language bindings ### Commit Statistics - 3 commits contributed to the release. - 18 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#39](https://github.com/Unleash/yggdrasil/issues/39) ### Commit Details
view details * **[#39](https://github.com/Unleash/yggdrasil/issues/39)** - Add single toggle resolve method ([`a14f972`](https://github.com/Unleash/yggdrasil/commit/a14f97229ecf31eeef003d74b29b09e319f2d394)) * **Uncategorized** - Release unleash-yggdrasil v0.5.8 ([`64828b7`](https://github.com/Unleash/yggdrasil/commit/64828b70dd0a26336ba3113e585dab077dcb15e1)) - Basic FFI language bindings ([`b36de19`](https://github.com/Unleash/yggdrasil/commit/b36de19e5c13add657273eff3c42ba204a31e860))
## v0.5.7 (2023-06-05) ### Bug Fixes - support for arbitrary strings * fix: allow grammar to parse more or less any string that doesn't contain the character sequence " ### Commit Statistics - 2 commits contributed to the release. - 18 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#37](https://github.com/Unleash/yggdrasil/issues/37) ### Commit Details
view details * **[#37](https://github.com/Unleash/yggdrasil/issues/37)** - Support for arbitrary strings ([`280670e`](https://github.com/Unleash/yggdrasil/commit/280670e46cf654838d67817ade2b8963aaeb6198)) * **Uncategorized** - Release unleash-yggdrasil v0.5.7 ([`fb00e58`](https://github.com/Unleash/yggdrasil/commit/fb00e58fbd151cbe149b0a0c6b6fff466fed0781))
## v0.5.6 (2023-05-17) ### Bug Fixes - redesigns the way stickiness is handled in the grammar to support default and random ### Commit Statistics - 2 commits contributed to the release. - 15 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#36](https://github.com/Unleash/yggdrasil/issues/36) ### Commit Details
view details * **[#36](https://github.com/Unleash/yggdrasil/issues/36)** - Redesigns the way stickiness is handled in the grammar to support default and random ([`afb1cf8`](https://github.com/Unleash/yggdrasil/commit/afb1cf8512def7cfdbea4dde9e667fe4424e1bdf)) * **Uncategorized** - Release unleash-yggdrasil v0.5.6 ([`796dccb`](https://github.com/Unleash/yggdrasil/commit/796dccbd5e1d28e47d293cab1c6a07d0c8b2cc16))
## v0.5.5 (2023-05-02) ### Bug Fixes - fix variant stickiness ### Commit Statistics - 2 commits contributed to the release. - 13 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#34](https://github.com/Unleash/yggdrasil/issues/34) ### Commit Details
view details * **[#34](https://github.com/Unleash/yggdrasil/issues/34)** - Fix variant stickiness ([`acf5cc1`](https://github.com/Unleash/yggdrasil/commit/acf5cc1007262675b0f5a03589ad0a62fd2c4fa6)) * **Uncategorized** - Release unleash-yggdrasil v0.5.5 ([`c445d78`](https://github.com/Unleash/yggdrasil/commit/c445d78f98b559778649cf89bb95cbc59d027ff3))
## v0.5.4 (2023-04-19) ### Other - Bump unleash types to 0.10.0 ### Commit Statistics - 2 commits contributed to the release. - 46 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#33](https://github.com/Unleash/yggdrasil/issues/33) ### Commit Details
view details * **[#33](https://github.com/Unleash/yggdrasil/issues/33)** - Bump unleash types to 0.10.0 ([`0c1edd3`](https://github.com/Unleash/yggdrasil/commit/0c1edd38338e9ad0659ed80218aabd8235c36899)) * **Uncategorized** - Release unleash-yggdrasil v0.5.4 ([`4da3483`](https://github.com/Unleash/yggdrasil/commit/4da34832edb373cda59ecd80f961ed2fc6d80918))
## v0.5.3 (2023-03-03) ### New Features - add support for variants overrides on arbitrary context fields ### Commit Statistics - 2 commits contributed to the release. - 1 day passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#31](https://github.com/Unleash/yggdrasil/issues/31) ### Commit Details
view details * **[#31](https://github.com/Unleash/yggdrasil/issues/31)** - Add support for variants overrides on arbitrary context fields ([`6f8bd36`](https://github.com/Unleash/yggdrasil/commit/6f8bd369287000d248608a3ac4b2d062326c8cab)) * **Uncategorized** - Release unleash-yggdrasil v0.5.3 ([`b58f062`](https://github.com/Unleash/yggdrasil/commit/b58f06258e4f8540a93afe9dd3b5f264d84adc77))
## v0.5.2 (2023-03-02) ### Chore - bump version to 0.5.1 - bump unleash types to 0.9.0 - bump version to 0.4.5 - bump version to 0.4.4 and unleash types to 0.8.1 - bump types to 0.8.0 and upgrade version to 0.4.3 - add basic benchmarks - bump version to 0.4.1 - bump version to 0.4.0 - remove context object from this project - bump version to 0.3.0 - update unleash-types to 0.4.1 to deal with variant weight type response from unleash - bump version to 0.2.0 ### Chore - include changelog to prep for smart release ### New Features - expose project on resolved toggle - add resolve all features method * chore: move to version 0.5.0 * feat: adds a new function on the engine to resolve all features states currently loaded * fix: pass the toggle name through to the rule engine so that group id can be properly calculated * fix: add fallback handling for get_variant in cases where custom stickiness is defined but no context property is present for it ### Bug Fixes - handle cases where get_variant is called and variants is Some but empty - upgrade user id strategy to string types rather than numerics - remove reqwest, we don't use it ### Commit Statistics - 30 commits contributed to the release over the course of 44 calendar days. - 22 commits were understood as [conventional](https://www.conventionalcommits.org). - 25 unique issues were worked on: [#11](https://github.com/Unleash/yggdrasil/issues/11), [#12](https://github.com/Unleash/yggdrasil/issues/12), [#13](https://github.com/Unleash/yggdrasil/issues/13), [#14](https://github.com/Unleash/yggdrasil/issues/14), [#15](https://github.com/Unleash/yggdrasil/issues/15), [#16](https://github.com/Unleash/yggdrasil/issues/16), [#17](https://github.com/Unleash/yggdrasil/issues/17), [#18](https://github.com/Unleash/yggdrasil/issues/18), [#19](https://github.com/Unleash/yggdrasil/issues/19), [#2](https://github.com/Unleash/yggdrasil/issues/2), [#20](https://github.com/Unleash/yggdrasil/issues/20), [#21](https://github.com/Unleash/yggdrasil/issues/21), [#23](https://github.com/Unleash/yggdrasil/issues/23), [#24](https://github.com/Unleash/yggdrasil/issues/24), [#25](https://github.com/Unleash/yggdrasil/issues/25), [#27](https://github.com/Unleash/yggdrasil/issues/27), [#28](https://github.com/Unleash/yggdrasil/issues/28), [#29](https://github.com/Unleash/yggdrasil/issues/29), [#30](https://github.com/Unleash/yggdrasil/issues/30), [#4](https://github.com/Unleash/yggdrasil/issues/4), [#5](https://github.com/Unleash/yggdrasil/issues/5), [#6](https://github.com/Unleash/yggdrasil/issues/6), [#7](https://github.com/Unleash/yggdrasil/issues/7), [#8](https://github.com/Unleash/yggdrasil/issues/8), [#9](https://github.com/Unleash/yggdrasil/issues/9) ### Commit Details
view details * **[#11](https://github.com/Unleash/yggdrasil/issues/11)** - Update unleash-types to 0.4.1 to deal with variant weight type response from unleash ([`6e9688a`](https://github.com/Unleash/yggdrasil/commit/6e9688a251cc7a5ce77eb6ceef41a9038b9ff0a4)) * **[#12](https://github.com/Unleash/yggdrasil/issues/12)** - Bump version to 0.3.0 ([`01d5aef`](https://github.com/Unleash/yggdrasil/commit/01d5aefc52b07c2616116518b5de68d6ac36788c)) * **[#13](https://github.com/Unleash/yggdrasil/issues/13)** - Remove context object from this project ([`6e73b31`](https://github.com/Unleash/yggdrasil/commit/6e73b31448a39ecf1b194fb24039f7b3d6bf533c)) * **[#14](https://github.com/Unleash/yggdrasil/issues/14)** - Bump version to 0.4.0 ([`e1619d5`](https://github.com/Unleash/yggdrasil/commit/e1619d527175c197ff36bdaf9e57f6bbef0e17bf)) * **[#15](https://github.com/Unleash/yggdrasil/issues/15)** - Add basic benchmarks ([`36e55c6`](https://github.com/Unleash/yggdrasil/commit/36e55c6ce33f0710e7f41f72dab86e01ddff6707)) * **[#16](https://github.com/Unleash/yggdrasil/issues/16)** - Allow the engine to report the version of the Unleash client spec that it supports ([`d3f94be`](https://github.com/Unleash/yggdrasil/commit/d3f94be8ea473a8f3d465daa24bddbee487c8d45)) * **[#17](https://github.com/Unleash/yggdrasil/issues/17)** - Upgrade user id strategy to string types rather than numerics ([`0a6a19b`](https://github.com/Unleash/yggdrasil/commit/0a6a19b9be93c85b095f9f1bc4f1eb8b5cfd522c)) * **[#18](https://github.com/Unleash/yggdrasil/issues/18)** - Bump version to 0.4.1 ([`083f839`](https://github.com/Unleash/yggdrasil/commit/083f83994e44840647e6615164ebd17d781fd236)) * **[#19](https://github.com/Unleash/yggdrasil/issues/19)** - Handle cases where get_variant is called and variants is Some but empty ([`58d1cae`](https://github.com/Unleash/yggdrasil/commit/58d1cae7fbfa78f44adccf7c098011fc047f5c9c)) * **[#2](https://github.com/Unleash/yggdrasil/issues/2)** - Add readme for rust core ([`bdc912a`](https://github.com/Unleash/yggdrasil/commit/bdc912ab6a23c13d9b939152f6a7173040641ee4)) * **[#20](https://github.com/Unleash/yggdrasil/issues/20)** - Chore/clippy upgrade ([`b167998`](https://github.com/Unleash/yggdrasil/commit/b167998af3fe2edd88793d0e08b8409e1c046a7b)) * **[#21](https://github.com/Unleash/yggdrasil/issues/21)** - Bump types to 0.8.0 and upgrade version to 0.4.3 ([`ee13f4e`](https://github.com/Unleash/yggdrasil/commit/ee13f4ed2a6a1a13f70533fe568400bd2411742e)) * **[#23](https://github.com/Unleash/yggdrasil/issues/23)** - Bump version to 0.4.4 and unleash types to 0.8.1 ([`5ec32ac`](https://github.com/Unleash/yggdrasil/commit/5ec32accf621858f74fc454d4e99616eb96b7a38)) * **[#24](https://github.com/Unleash/yggdrasil/issues/24)** - Bump version to 0.4.5 ([`d996bcb`](https://github.com/Unleash/yggdrasil/commit/d996bcb37c9e0571ccc32dd130408b9b655cc406)) * **[#25](https://github.com/Unleash/yggdrasil/issues/25)** - Implement metrics gathering for core ([`0b5437f`](https://github.com/Unleash/yggdrasil/commit/0b5437ff5e6417bf8c2886ed97aad77c3b5b698a)) * **[#27](https://github.com/Unleash/yggdrasil/issues/27)** - Add resolve all features method ([`1617775`](https://github.com/Unleash/yggdrasil/commit/1617775d48207454bda7bc373de2bf0da7dd04cc)) * **[#28](https://github.com/Unleash/yggdrasil/issues/28)** - Bump unleash types to 0.9.0 ([`1e46813`](https://github.com/Unleash/yggdrasil/commit/1e4681329b1ca5436966c22c0e892b7a024496b9)) * **[#29](https://github.com/Unleash/yggdrasil/issues/29)** - Bump version to 0.5.1 ([`66bf3d8`](https://github.com/Unleash/yggdrasil/commit/66bf3d804482c0def165f2ebe282ac72c8917c57)) * **[#30](https://github.com/Unleash/yggdrasil/issues/30)** - Expose project on resolved toggle ([`7f402c2`](https://github.com/Unleash/yggdrasil/commit/7f402c238163d83cd8329dc8c4cbd005c4182a9e)) * **[#4](https://github.com/Unleash/yggdrasil/issues/4)** - Make clippy happy ([`0b89a94`](https://github.com/Unleash/yggdrasil/commit/0b89a94f5d91eb7ea218a7b8c502e2185c70b259)) * **[#5](https://github.com/Unleash/yggdrasil/issues/5)** - Add robustness handling to context property parsing when incoming properties values have null data ([`749ac3a`](https://github.com/Unleash/yggdrasil/commit/749ac3a51076e18313b4d4b1fcff8f47b24d497f)) * **[#6](https://github.com/Unleash/yggdrasil/issues/6)** - Remove reqwest, we don't use it ([`2384c16`](https://github.com/Unleash/yggdrasil/commit/2384c165aca366a6e7fdf4d7f688fd9949931471)) * **[#7](https://github.com/Unleash/yggdrasil/issues/7)** - Improve sad path handling of variants ([`2b6f889`](https://github.com/Unleash/yggdrasil/commit/2b6f88924d8c7a6dd592ac816fd0a86fb223db37)) * **[#8](https://github.com/Unleash/yggdrasil/issues/8)** - Add unicode support for the rule parser, this should now tolerate strings that contain unicode and a subset of punctuation ([`941bb90`](https://github.com/Unleash/yggdrasil/commit/941bb90e5c97cd14e843f55ed946005a2de811ea)) * **[#9](https://github.com/Unleash/yggdrasil/issues/9)** - Bump version to 0.2.0 ([`45787e3`](https://github.com/Unleash/yggdrasil/commit/45787e38e529427bd8e351a3c69f38f84e98657f)) * **Uncategorized** - Release unleash-yggdrasil v0.5.2 ([`2a4a0fa`](https://github.com/Unleash/yggdrasil/commit/2a4a0faa1cbfb594e51b242818fc3f96b4ddc187)) - Include changelog to prep for smart release ([`9b015f5`](https://github.com/Unleash/yggdrasil/commit/9b015f543b914e028b54717b2c79b4c04a8f3d8c)) - Release unleash-yggdrasil v0.5.2 ([`e15c4a4`](https://github.com/Unleash/yggdrasil/commit/e15c4a46403461c4cedba6a2875ae7b8a075d4ee)) - Add description and license to core ([`750e204`](https://github.com/Unleash/yggdrasil/commit/750e204ed3be475580c869c1a603c0e4da6af9bd)) - Rename sdk-core to unleash-yggdrasil in preparation for publishing ([`d798951`](https://github.com/Unleash/yggdrasil/commit/d798951a5e34bde13974feaa8e189a5771712789))