# 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). ## 0.5.8 (2024-11-08) ### Chore - update pinned rust version, clippy lints, remove some dead code ### New Features - generalized hash trie indexes for relational tuples Generalized Hash Tries are part of the SIGMOD '23 FreeJoin [paper](https://dl.acm.org/doi/abs/10.1145/3589295) by Wang/Willsey/Suciu. They provide a compressed ("factorized") representation of relations. By operating in the factorized domain, join algorithms can defer cross-products and achieve asymptotically optimal performance. --------- ### Style - fixes for nightly clippy a couple few spurious `too_many_arguments` and a spurious `zombie_processes` still on current nightly (`clippy 0.1.84 (4392847410 2024-10-21)`) ### Commit Statistics - 3 commits contributed to the release. - 69 days passed between releases. - 3 commits were understood as [conventional](https://www.conventionalcommits.org). - 3 unique issues were worked on: [#1444](https://github.com/hydro-project/hydroflow/issues/1444), [#1503](https://github.com/hydro-project/hydroflow/issues/1503), [#1505](https://github.com/hydro-project/hydroflow/issues/1505) ### Commit Details
view details * **[#1444](https://github.com/hydro-project/hydroflow/issues/1444)** - Update pinned rust version, clippy lints, remove some dead code ([`d567760`](https://github.com/hydro-project/hydroflow/commit/d5677604e93c07a5392f4229af94a0b736eca382)) * **[#1503](https://github.com/hydro-project/hydroflow/issues/1503)** - Generalized hash trie indexes for relational tuples ([`f7e740f`](https://github.com/hydro-project/hydroflow/commit/f7e740fb2ba36d0fcf3fd196d60333552911e3a4)) * **[#1505](https://github.com/hydro-project/hydroflow/issues/1505)** - Fixes for nightly clippy ([`47cb703`](https://github.com/hydro-project/hydroflow/commit/47cb703e771f7d1c451ceb9d185ada96410949da))
## 0.5.7 (2024-08-30) ### Chore - lower min dependency versions where possible, update `Cargo.lock` Moved from #1418 --------- ### Documentation - cleanup doc comments for clippy latest ### Commit Statistics - 3 commits contributed to the release. - 38 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#1423](https://github.com/hydro-project/hydroflow/issues/1423), [#1428](https://github.com/hydro-project/hydroflow/issues/1428) ### Commit Details
view details * **[#1423](https://github.com/hydro-project/hydroflow/issues/1423)** - Lower min dependency versions where possible, update `Cargo.lock` ([`11af328`](https://github.com/hydro-project/hydroflow/commit/11af32828bab6e4a4264d2635ff71a12bb0bb778)) * **[#1428](https://github.com/hydro-project/hydroflow/issues/1428)** - Cleanup doc comments for clippy latest ([`f5f1eb0`](https://github.com/hydro-project/hydroflow/commit/f5f1eb0c612f5c0c1752360d972ef6853c5e12f0)) * **Uncategorized** - Release hydroflow_lang v0.9.0, hydroflow_datalog_core v0.9.0, hydroflow_datalog v0.9.0, hydroflow_deploy_integration v0.9.0, hydroflow_macro v0.9.0, lattices_macro v0.5.6, lattices v0.5.7, multiplatform_test v0.2.0, variadics v0.0.6, pusherator v0.0.8, hydroflow v0.9.0, stageleft_macro v0.3.0, stageleft v0.4.0, stageleft_tool v0.3.0, hydroflow_plus v0.9.0, hydro_deploy v0.9.0, hydro_cli v0.9.0, hydroflow_plus_deploy v0.9.0, safety bump 8 crates ([`0750117`](https://github.com/hydro-project/hydroflow/commit/0750117de7088c01a439b102adeb4c832889f171))
## 0.5.6 (2024-07-23) ### Chore - update pinned rust version to 2024-06-17 ### New Features - add `#[derive(Lattice)]` derive macros, fix #1247 This adds derive macros to allow user-created macros. Each field must be a lattice. Example usage: ```rust struct MyLattice where KeySet: Collection, Epoch: Ord, { keys: SetUnion, epoch: Max, } ``` Uses `#[derive(Lattice)]` for the `lattices` library `Pair` lattice. Also contains some cleanup in the `lattices` crate. ### Bug Fixes - change fuzz test bounds to require `PartialEq` instead of `Eq`, fix #1302 - Make inner for `WithTop` & `WithBot` private `Option` is not a lattice, so it is unsafe to expose as public. I also updated documentation to lead with intention before implementation (minor cleanup). ### Commit Statistics - 5 commits contributed to the release. - 59 days passed between releases. - 4 commits were understood as [conventional](https://www.conventionalcommits.org). - 4 unique issues were worked on: [#1244](https://github.com/hydro-project/hydroflow/issues/1244), [#1250](https://github.com/hydro-project/hydroflow/issues/1250), [#1309](https://github.com/hydro-project/hydroflow/issues/1309), [#1326](https://github.com/hydro-project/hydroflow/issues/1326) ### Commit Details
view details * **[#1244](https://github.com/hydro-project/hydroflow/issues/1244)** - Make inner for `WithTop` & `WithBot` private ([`1ad690b`](https://github.com/hydro-project/hydroflow/commit/1ad690b993f38ac6a03667fdce56e6603076b1d2)) * **[#1250](https://github.com/hydro-project/hydroflow/issues/1250)** - Add `#[derive(Lattice)]` derive macros, fix #1247 ([`b3d01c2`](https://github.com/hydro-project/hydroflow/commit/b3d01c20cae2335a3da2c02343debe677f17786b)) * **[#1309](https://github.com/hydro-project/hydroflow/issues/1309)** - Update pinned rust version to 2024-06-17 ([`3098f77`](https://github.com/hydro-project/hydroflow/commit/3098f77fd99882aae23c4b31017aa4b761306197)) * **[#1326](https://github.com/hydro-project/hydroflow/issues/1326)** - Change fuzz test bounds to require `PartialEq` instead of `Eq`, fix #1302 ([`9c83440`](https://github.com/hydro-project/hydroflow/commit/9c834406efcc3839a2a0d48b514146d06bb6e35d)) * **Uncategorized** - Release hydroflow_lang v0.8.0, hydroflow_datalog_core v0.8.0, hydroflow_datalog v0.8.0, hydroflow_macro v0.8.0, lattices_macro v0.5.5, lattices v0.5.6, variadics v0.0.5, pusherator v0.0.7, hydroflow v0.8.0, hydroflow_plus v0.8.0, hydro_deploy v0.8.0, hydro_cli v0.8.0, hydroflow_plus_cli_integration v0.8.0, safety bump 7 crates ([`ca6c16b`](https://github.com/hydro-project/hydroflow/commit/ca6c16b4a7ce35e155fe7fc6c7d1676c37c9e4de))
## 0.5.5 (2024-05-24) ### Documentation - Updating CONTRIBUTING.md with some info about feature branches Also updating GitHub workflows to run on feature branches as well. ### New Features - Make Pair<> members public Summary of types examined: - `Min`: T is not a lattice ### Bug Fixes - typos in lattice docs ### Commit Statistics - 9 commits contributed to the release. - 48 days passed between releases. - 6 commits were understood as [conventional](https://www.conventionalcommits.org). - 7 unique issues were worked on: [#1155](https://github.com/hydro-project/hydroflow/issues/1155), [#1156](https://github.com/hydro-project/hydroflow/issues/1156), [#1174](https://github.com/hydro-project/hydroflow/issues/1174), [#1181](https://github.com/hydro-project/hydroflow/issues/1181), [#1230](https://github.com/hydro-project/hydroflow/issues/1230), [#1233](https://github.com/hydro-project/hydroflow/issues/1233), [#1236](https://github.com/hydro-project/hydroflow/issues/1236) ### Commit Details
view details * **[#1155](https://github.com/hydro-project/hydroflow/issues/1155)** - Add Integral domain to algebra library ([`eeef3ac`](https://github.com/hydro-project/hydroflow/commit/eeef3acd7f5f06d6d8cb7719ee2bebf7f980e537)) * **[#1156](https://github.com/hydro-project/hydroflow/issues/1156)** - Add prototype of tagging algebraic properties ([`c3f5a37`](https://github.com/hydro-project/hydroflow/commit/c3f5a37ff746401a2383a900f9004e33072d5b1a)) * **[#1174](https://github.com/hydro-project/hydroflow/issues/1174)** - Typos in lattice docs ([`c0a06bb`](https://github.com/hydro-project/hydroflow/commit/c0a06bbd20e1621de46ab835dd27df162f689411)) * **[#1181](https://github.com/hydro-project/hydroflow/issues/1181)** - Part 1 ([`041bcf9`](https://github.com/hydro-project/hydroflow/commit/041bcf92a48f4fb0557796d541e27213d78235eb)) * **[#1230](https://github.com/hydro-project/hydroflow/issues/1230)** - Expose PairBimorphism public. ([`c2577bd`](https://github.com/hydro-project/hydroflow/commit/c2577bd0ad1969f4badf23874a9e7a6c1622c5c3)) * **[#1233](https://github.com/hydro-project/hydroflow/issues/1233)** - Make Pair<> members public ([`0ed1f26`](https://github.com/hydro-project/hydroflow/commit/0ed1f26b485894d3f24bd4d3251f6d3134fd1947)) * **[#1236](https://github.com/hydro-project/hydroflow/issues/1236)** - Updating CONTRIBUTING.md with some info about feature branches ([`0d2f14b`](https://github.com/hydro-project/hydroflow/commit/0d2f14b9237c0eaa8131d1d1118768357ac8133b)) * **Uncategorized** - Release hydroflow_lang v0.7.0, hydroflow_datalog_core v0.7.0, hydroflow_datalog v0.7.0, hydroflow_macro v0.7.0, lattices v0.5.5, multiplatform_test v0.1.0, pusherator v0.0.6, hydroflow v0.7.0, stageleft_macro v0.2.0, stageleft v0.3.0, stageleft_tool v0.2.0, hydroflow_plus v0.7.0, hydro_deploy v0.7.0, hydro_cli v0.7.0, hydroflow_plus_cli_integration v0.7.0, safety bump 8 crates ([`2852147`](https://github.com/hydro-project/hydroflow/commit/285214740627685e911781793e05d234ab2ad2bd)) - Definitions of linearity and bilinearity in algebra lib ([`d8e4d9d`](https://github.com/hydro-project/hydroflow/commit/d8e4d9dc784ae28fcefe5f32a0561698c1196d31))
## 0.5.4 (2024-04-05) Unchanged from previous release. ### Chore - mark `lattices` as unchanged for `0.6.1` release ### Commit Statistics - 3 commits contributed to the release. - 34 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#1127](https://github.com/hydro-project/hydroflow/issues/1127) ### Commit Details
view details * **[#1127](https://github.com/hydro-project/hydroflow/issues/1127)** - Initial Algebra Library ([`b6e3bec`](https://github.com/hydro-project/hydroflow/commit/b6e3bec0bff31f3b7e8166cf1b545c39a5b8d617)) * **Uncategorized** - Release hydroflow_cli_integration v0.5.2, hydroflow_lang v0.6.1, hydroflow_datalog_core v0.6.1, lattices v0.5.4, hydroflow v0.6.1, stageleft_macro v0.1.1, stageleft v0.2.1, hydroflow_plus v0.6.1, hydro_deploy v0.6.1, hydro_cli v0.6.1, hydroflow_plus_cli_integration v0.6.1, stageleft_tool v0.1.1 ([`cd63f22`](https://github.com/hydro-project/hydroflow/commit/cd63f2258c961a40f0e5dbef20ac329a2d570ad0)) - Mark `lattices` as unchanged for `0.6.1` release ([`2a10c4f`](https://github.com/hydro-project/hydroflow/commit/2a10c4f395bbf3a320bdde6ec24c3c6abd5d6ed0))
## 0.5.3 (2024-03-02) ### Chore - appease various clippy lints ### New Features - impl missing `SimpleCollectionRef` for various collections types - add `Lattice[Bi]Morphism` traits, impls for cartesian product, pair, and keyed ### Style - fix imports for clippy ### Commit Statistics - 5 commits contributed to the release. - 28 days passed between releases. - 4 commits were understood as [conventional](https://www.conventionalcommits.org). - 3 unique issues were worked on: [#1061](https://github.com/hydro-project/hydroflow/issues/1061), [#1062](https://github.com/hydro-project/hydroflow/issues/1062), [#1084](https://github.com/hydro-project/hydroflow/issues/1084) ### Commit Details
view details * **[#1061](https://github.com/hydro-project/hydroflow/issues/1061)** - Impl missing `SimpleCollectionRef` for various collections types ([`ff158db`](https://github.com/hydro-project/hydroflow/commit/ff158dbb57ef3a754ed1cc834a19e30bb2895488)) * **[#1062](https://github.com/hydro-project/hydroflow/issues/1062)** - Add `Lattice[Bi]Morphism` traits, impls for cartesian product, pair, and keyed ([`c8d6985`](https://github.com/hydro-project/hydroflow/commit/c8d6985cc99e623432d609e1e1bc4cfd4c31feb7)) * **[#1084](https://github.com/hydro-project/hydroflow/issues/1084)** - Appease various clippy lints ([`39ab8b0`](https://github.com/hydro-project/hydroflow/commit/39ab8b0278e9e3fe96552ace0a4ae768a6bc10d8)) * **Uncategorized** - Release hydroflow_lang v0.6.0, hydroflow_datalog_core v0.6.0, hydroflow_datalog v0.6.0, hydroflow_macro v0.6.0, lattices v0.5.3, variadics v0.0.4, pusherator v0.0.5, hydroflow v0.6.0, stageleft v0.2.0, hydroflow_plus v0.6.0, hydro_deploy v0.6.0, hydro_cli v0.6.0, hydroflow_plus_cli_integration v0.6.0, safety bump 7 crates ([`09ea65f`](https://github.com/hydro-project/hydroflow/commit/09ea65fe9cd45c357c43bffca30e60243fa45cc8)) - Fix imports for clippy ([`71353f0`](https://github.com/hydro-project/hydroflow/commit/71353f0d4dfd9766dfdc715c4a91a028081f910f))
## 0.5.2 (2024-02-02) ### New Features - add map_union_with_tombstones, fix #336 ### Commit Statistics - 2 commits contributed to the release. - 4 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#1052](https://github.com/hydro-project/hydroflow/issues/1052) ### Commit Details
view details * **[#1052](https://github.com/hydro-project/hydroflow/issues/1052)** - Add map_union_with_tombstones, fix #336 ([`87e86a2`](https://github.com/hydro-project/hydroflow/commit/87e86a2ab9e068634ebed17616b7482b3e69d539)) * **Uncategorized** - Release hydroflow_lang v0.5.2, hydroflow_datalog_core v0.5.2, hydroflow_macro v0.5.2, lattices v0.5.2, hydroflow v0.5.2, hydro_cli v0.5.1, hydroflow_plus_cli_integration v0.5.1 ([`6ac8720`](https://github.com/hydro-project/hydroflow/commit/6ac872081753548ebb8ec95549b4d820dc050d3e))
## 0.5.1 (2024-01-29) ### Chore - manually set lockstep-versioned crates (and `lattices`) to version `0.5.1` Setting manually since https://github.com/frewsxcv/rust-crates-index/issues/159 is messing with smart-release - fix clippy lints on latest nightly - fix `clippy::items_after_test_module`, simplify rustdoc links ### New Features - Add `DeepReveal` trait - add set_union_with_tombstones ### Bug Fixes - chat and two_pc no longer replay ### Commit Statistics - 8 commits contributed to the release. - 110 days passed between releases. - 6 commits were understood as [conventional](https://www.conventionalcommits.org). - 4 unique issues were worked on: [#1032](https://github.com/hydro-project/hydroflow/issues/1032), [#942](https://github.com/hydro-project/hydroflow/issues/942), [#960](https://github.com/hydro-project/hydroflow/issues/960), [#967](https://github.com/hydro-project/hydroflow/issues/967) ### Commit Details
view details * **[#1032](https://github.com/hydro-project/hydroflow/issues/1032)** - Fixup! feat(lattices): Add `DeepReveal` trait ([`0bed8ca`](https://github.com/hydro-project/hydroflow/commit/0bed8cab4a5e7a7be88de4d2e9c3c2d8ee0e7b7f)) - Add `DeepReveal` trait ([`e30602e`](https://github.com/hydro-project/hydroflow/commit/e30602e6a3210a4ea4fe8a65aedb9469e79e3c37)) * **[#942](https://github.com/hydro-project/hydroflow/issues/942)** - Fix `clippy::items_after_test_module`, simplify rustdoc links ([`f6a7299`](https://github.com/hydro-project/hydroflow/commit/f6a729925ddeb6063fa8c4b03d6621c1c35f0cc8)) * **[#960](https://github.com/hydro-project/hydroflow/issues/960)** - Fix clippy lints on latest nightly ([`ba6afab`](https://github.com/hydro-project/hydroflow/commit/ba6afab8416ad66eee4fdb9d0c73e62d45752617)) * **[#967](https://github.com/hydro-project/hydroflow/issues/967)** - Chat and two_pc no longer replay ([`0539e2a`](https://github.com/hydro-project/hydroflow/commit/0539e2a91eb3ba71ed1c9fbe8d0c74b6344ad1bf)) * **Uncategorized** - Release hydroflow_cli_integration v0.5.1, hydroflow_lang v0.5.1, hydroflow_datalog_core v0.5.1, hydroflow_datalog v0.5.1, hydroflow_macro v0.5.1, lattices v0.5.1, variadics v0.0.3, pusherator v0.0.4, hydroflow v0.5.1, stageleft_macro v0.1.0, stageleft v0.1.0, hydroflow_plus v0.5.1, hydro_deploy v0.5.1, hydro_cli v0.5.1 ([`478aebc`](https://github.com/hydro-project/hydroflow/commit/478aebc8fee2aa78eab86bd386322db1c70bde6a)) - Manually set lockstep-versioned crates (and `lattices`) to version `0.5.1` ([`1b555e5`](https://github.com/hydro-project/hydroflow/commit/1b555e57c8c812bed4d6495d2960cbf77fb0b3ef)) - Add set_union_with_tombstones ([`3f70199`](https://github.com/hydro-project/hydroflow/commit/3f701997ec1e6ca2a364537fbd2ef39cf96ce0f1))
## 0.5.0 (2023-10-11) ### Chore - Fix `clippy::implied_bounds_in_impls` from latest nightlies ### Documentation - fix lattice math link ### New Features - Add serde derives to collections - Add `UnionFind` lattice ### Bug Fixes (BREAKING) - fix some types and semantics for atomization ### Commit Statistics - 7 commits contributed to the release. - 56 days passed between releases. - 5 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#915](https://github.com/hydro-project/hydroflow/issues/915), [#922](https://github.com/hydro-project/hydroflow/issues/922) ### Commit Details
view details * **[#915](https://github.com/hydro-project/hydroflow/issues/915)** - Add `UnionFind` lattice ([`35c2606`](https://github.com/hydro-project/hydroflow/commit/35c2606f2df16a428a5c163d5582923ecd5998c4)) - Fix some types and semantics for atomization ([`18e9cfa`](https://github.com/hydro-project/hydroflow/commit/18e9cfaa8b1415d72d67a69d7b0fecc997b5670a)) * **[#922](https://github.com/hydro-project/hydroflow/issues/922)** - Add serde derives to collections ([`488d6dd`](https://github.com/hydro-project/hydroflow/commit/488d6dd448e10e2bf217693dd2a29973488c838a)) * **Uncategorized** - Release hydroflow_macro v0.5.0, lattices v0.5.0, hydroflow v0.5.0, hydro_cli v0.5.0 ([`12697c2`](https://github.com/hydro-project/hydroflow/commit/12697c2f19bd96802591fa63a5b6b12104ecfe0d)) - Release hydroflow_lang v0.5.0, hydroflow_datalog_core v0.5.0, hydroflow_datalog v0.5.0, hydroflow_macro v0.5.0, lattices v0.5.0, hydroflow v0.5.0, hydro_cli v0.5.0, safety bump 4 crates ([`2e2d8b3`](https://github.com/hydro-project/hydroflow/commit/2e2d8b386fb086c8276a2853d2a1f96ad4d7c221)) - Fix lattice math link ([`6b82126`](https://github.com/hydro-project/hydroflow/commit/6b82126347e2ae3c11cc10fea4f3fbcb463734e6)) - Fix `clippy::implied_bounds_in_impls` from latest nightlies ([`e788989`](https://github.com/hydro-project/hydroflow/commit/e788989737fbd501173bc99c6f9f5f5ba514ec9c))
## 0.4.0 (2023-08-15) ### Chore - fix lint, format errors for latest nightly version (without updated pinned) For nightly version (d9c13cd45 2023-07-05) ### Documentation - Improve `Atomize` docs ### New Features - formalize `Default::default()` as returning bottom for lattice types Not a breaking change since changed names were introduced only since last release - Implement `SimpleKeyedRef` for map types - Add atomize trait, impls, tests ### Refactor - fix new clippy lints on latest nightly 1.73.0-nightly (db7ff98a7 2023-07-31) - Change `Atomize` to require returning empty iff lattice is bottom Previously was the opposite, `Atomize` always had to return non-empty. Not breaking since `Atomize` has not yet been published. ### New Features (BREAKING) - Add bottom (+top) collapsing, implement `IsBot`/`IsTop` for all lattice types * `WithBot(Some(BOTTOM))` and `WithBot(None)` are now considered to both be bottom, equal. Also, `MapUnion({})` and `MapUnion({key: BOTTOM})` are considered to both be bottom, equal. * `WithTop(Some(TOP))` and `WithTop(None)` are now considered to both be top, equal. * `check_lattice_bot/top` now check that `is_bot` and `is_top` must be consistent among all equal elements ### Refactor (BREAKING) - Rename `Seq` -> `VecUnion` ### Commit Statistics - 10 commits contributed to the release. - 42 days passed between releases. - 9 commits were understood as [conventional](https://www.conventionalcommits.org). - 8 unique issues were worked on: [#822](https://github.com/hydro-project/hydroflow/issues/822), [#849](https://github.com/hydro-project/hydroflow/issues/849), [#854](https://github.com/hydro-project/hydroflow/issues/854), [#860](https://github.com/hydro-project/hydroflow/issues/860), [#865](https://github.com/hydro-project/hydroflow/issues/865), [#866](https://github.com/hydro-project/hydroflow/issues/866), [#867](https://github.com/hydro-project/hydroflow/issues/867), [#879](https://github.com/hydro-project/hydroflow/issues/879) ### Commit Details
view details * **[#822](https://github.com/hydro-project/hydroflow/issues/822)** - Fix lint, format errors for latest nightly version (without updated pinned) ([`f60053f`](https://github.com/hydro-project/hydroflow/commit/f60053f70da3071c54de4a0eabb059a143aa2ccc)) * **[#849](https://github.com/hydro-project/hydroflow/issues/849)** - Rename `Seq` -> `VecUnion` ([`7b0485b`](https://github.com/hydro-project/hydroflow/commit/7b0485b20939ec86ed8e74ecc9c75ac1b5d01072)) * **[#854](https://github.com/hydro-project/hydroflow/issues/854)** - Add atomize trait, impls, tests ([`8ec75c6`](https://github.com/hydro-project/hydroflow/commit/8ec75c6d8998b7d7e5a0ae24ee53b0cdb6932683)) * **[#860](https://github.com/hydro-project/hydroflow/issues/860)** - Improve `Atomize` docs ([`a8b0d2d`](https://github.com/hydro-project/hydroflow/commit/a8b0d2d10eef3e45669f77a1f2460cd31a95d15b)) * **[#865](https://github.com/hydro-project/hydroflow/issues/865)** - Add bottom (+top) collapsing, implement `IsBot`/`IsTop` for all lattice types ([`7b752f7`](https://github.com/hydro-project/hydroflow/commit/7b752f743cbedc632b127dddf3f9a84e839eb47a)) * **[#866](https://github.com/hydro-project/hydroflow/issues/866)** - Implement `SimpleKeyedRef` for map types ([`b240699`](https://github.com/hydro-project/hydroflow/commit/b2406994a703f028724cc30065fec60f7f8a7247)) * **[#867](https://github.com/hydro-project/hydroflow/issues/867)** - Change `Atomize` to require returning empty iff lattice is bottom ([`262166e`](https://github.com/hydro-project/hydroflow/commit/262166e7cecf8ffb5a2c7bc989e8cf66c4524a68)) * **[#879](https://github.com/hydro-project/hydroflow/issues/879)** - Formalize `Default::default()` as returning bottom for lattice types ([`7282457`](https://github.com/hydro-project/hydroflow/commit/7282457e383407eabbeb1f931c130edb095c33ca)) * **Uncategorized** - Release hydroflow_lang v0.4.0, hydroflow_datalog_core v0.4.0, hydroflow_datalog v0.4.0, hydroflow_macro v0.4.0, lattices v0.4.0, pusherator v0.0.3, hydroflow v0.4.0, hydro_cli v0.4.0, safety bump 4 crates ([`cb313f0`](https://github.com/hydro-project/hydroflow/commit/cb313f0635214460a8308d05cbef4bf7f4bfaa15)) - Fix new clippy lints on latest nightly 1.73.0-nightly (db7ff98a7 2023-07-31) ([`6a2ad6b`](https://github.com/hydro-project/hydroflow/commit/6a2ad6b770c2ccf470548320d8753025b3a66c0a))
## 0.3.0 (2023-07-04) ### Documentation - List `WithTop` in README 4/4 ### New Features - make unit `()` a point lattice - impl `IsTop`, `IsBot` for `Min`, `Max` over numeric types - Add `Conflict` lattice - add top lattice, opposite of bottom - Add `Seq` lattice. ### Bug Fixes - removed unused nightly features `impl_trait_in_assoc_type`, `type_alias_impl_trait` - fix ConvertFrom for bottom to actually convert the type * fix: fix type inference with doubly-nested bottom types * fix: address comments ### Refactor - Rename `bottom.rs` -> `with_bot.rs`, `top.rs` -> `with_top.rs` 1/4 ### Style - `warn` missing docs (instead of `deny`) to allow code before docs ### New Features (BREAKING) - Add `reveal` methods, make fields private - Add `Provenance` generic param token to `Point`. - Use `()` provenance for `kvs_bench` example. ### Bug Fixes (BREAKING) - Remove `Default` impl for `WithTop` 3/4 Is confusing, probably not what users want. ### Refactor (BREAKING) - Rename `ConvertFrom::from` -> `LatticeFrom::lattice_from` - Rename `Bottom` -> `WithBot`, `Top` -> `WithTop`, constructors now take `Option`s 2/4 - Rename `Immut` -> `Point` lattice. ### Commit Statistics - 18 commits contributed to the release. - 33 days passed between releases. - 17 commits were understood as [conventional](https://www.conventionalcommits.org). - 12 unique issues were worked on: [#742](https://github.com/hydro-project/hydroflow/issues/742), [#744](https://github.com/hydro-project/hydroflow/issues/744), [#761](https://github.com/hydro-project/hydroflow/issues/761), [#763](https://github.com/hydro-project/hydroflow/issues/763), [#765](https://github.com/hydro-project/hydroflow/issues/765), [#766](https://github.com/hydro-project/hydroflow/issues/766), [#767](https://github.com/hydro-project/hydroflow/issues/767), [#772](https://github.com/hydro-project/hydroflow/issues/772), [#773](https://github.com/hydro-project/hydroflow/issues/773), [#780](https://github.com/hydro-project/hydroflow/issues/780), [#789](https://github.com/hydro-project/hydroflow/issues/789), [#793](https://github.com/hydro-project/hydroflow/issues/793) ### Commit Details
view details * **[#742](https://github.com/hydro-project/hydroflow/issues/742)** - Fix ConvertFrom for bottom to actually convert the type ([`3c4eb16`](https://github.com/hydro-project/hydroflow/commit/3c4eb16833160f8813b812487a1297c023400138)) * **[#744](https://github.com/hydro-project/hydroflow/issues/744)** - Add top lattice, opposite of bottom ([`fc4dcbd`](https://github.com/hydro-project/hydroflow/commit/fc4dcbdfa703d79a0c183a2eb3f5dbb42260b67a)) * **[#761](https://github.com/hydro-project/hydroflow/issues/761)** - Rename `Immut` -> `Point` lattice. ([`1bdadb8`](https://github.com/hydro-project/hydroflow/commit/1bdadb82b25941d11f3fa24eaac35109927c852f)) * **[#763](https://github.com/hydro-project/hydroflow/issues/763)** - List `WithTop` in README 4/4 ([`ac4fd82`](https://github.com/hydro-project/hydroflow/commit/ac4fd827ccede0ad53dfc59079cdb7df5928e491)) - Remove `Default` impl for `WithTop` 3/4 ([`5cfd2a0`](https://github.com/hydro-project/hydroflow/commit/5cfd2a0f48f11f6185070cab932f50b630e1f800)) - Rename `Bottom` -> `WithBot`, `Top` -> `WithTop`, constructors now take `Option`s 2/4 ([`5c7e4d3`](https://github.com/hydro-project/hydroflow/commit/5c7e4d3aea1dfb61d51bcb0291740281824e3090)) - Rename `bottom.rs` -> `with_bot.rs`, `top.rs` -> `with_top.rs` 1/4 ([`0cbbaea`](https://github.com/hydro-project/hydroflow/commit/0cbbaeaec5e192e2539771bb247926271c2dc4a3)) * **[#765](https://github.com/hydro-project/hydroflow/issues/765)** - Rename `ConvertFrom::from` -> `LatticeFrom::lattice_from` ([`4a727ec`](https://github.com/hydro-project/hydroflow/commit/4a727ecf1232e0f03f5300547282bfbe73342cfa)) * **[#766](https://github.com/hydro-project/hydroflow/issues/766)** - Add `IsBot::is_bot` and `IsTop::is_top` traits ([`deb26af`](https://github.com/hydro-project/hydroflow/commit/deb26af6bcd547f91bf339367387d36e5e59565a)) * **[#767](https://github.com/hydro-project/hydroflow/issues/767)** - Add `Conflict` lattice ([`f5e0d19`](https://github.com/hydro-project/hydroflow/commit/f5e0d19e8531c250bc4492b61b9731c947916daf)) * **[#772](https://github.com/hydro-project/hydroflow/issues/772)** - Add `Provenance` generic param token to `Point`. ([`7aec1ac`](https://github.com/hydro-project/hydroflow/commit/7aec1ac884e01a560770dfab7e0ba64d520415f6)) * **[#773](https://github.com/hydro-project/hydroflow/issues/773)** - `warn` missing docs (instead of `deny`) to allow code before docs ([`70c88a5`](https://github.com/hydro-project/hydroflow/commit/70c88a51c4c83a4dc2fc67a0cd344786a4ff26f7)) * **[#780](https://github.com/hydro-project/hydroflow/issues/780)** - Removed unused nightly features `impl_trait_in_assoc_type`, `type_alias_impl_trait` ([`9bb5528`](https://github.com/hydro-project/hydroflow/commit/9bb5528d99e83fdae5aeca9456802379131c2f90)) * **[#789](https://github.com/hydro-project/hydroflow/issues/789)** - Add `reveal` methods, make fields private ([`931d938`](https://github.com/hydro-project/hydroflow/commit/931d93887c238025596cb22226e16d43e16a7425)) * **[#793](https://github.com/hydro-project/hydroflow/issues/793)** - Make unit `()` a point lattice ([`016abee`](https://github.com/hydro-project/hydroflow/commit/016abeea3ecd390a976dd8dbec371b08fe744655)) - Impl `IsTop`, `IsBot` for `Min`, `Max` over numeric types ([`dc99c02`](https://github.com/hydro-project/hydroflow/commit/dc99c021640a47b704905d087eadcbc477f033f0)) * **Uncategorized** - Release hydroflow_cli_integration v0.3.0, hydroflow_lang v0.3.0, hydroflow_datalog_core v0.3.0, hydroflow_datalog v0.3.0, hydroflow_macro v0.3.0, lattices v0.3.0, pusherator v0.0.2, hydroflow v0.3.0, hydro_cli v0.3.0, safety bump 5 crates ([`ec9633e`](https://github.com/hydro-project/hydroflow/commit/ec9633e2e393c2bf106223abeb0b680200fbdf84)) - Add `Seq` lattice. ([`153cbab`](https://github.com/hydro-project/hydroflow/commit/153cbabd462d776eae395e371470abb4662642cd))
## 0.2.0 (2023-05-31) ### Chore - manually bump versions for v0.2.0 release ### Refactor (BREAKING) - rename `Fake` -> `Immut` ### Commit Statistics - 3 commits contributed to the release. - 1 day passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 0 issues like '(#ID)' were seen in commit messages ### Commit Details
view details * **Uncategorized** - Release hydroflow_lang v0.2.0, hydroflow_datalog_core v0.2.0, hydroflow_datalog v0.2.0, hydroflow_macro v0.2.0, lattices v0.2.0, hydroflow v0.2.0, hydro_cli v0.2.0 ([`ca464c3`](https://github.com/hydro-project/hydroflow/commit/ca464c32322a7ad39eb53e1794777c849aa548a0)) - Manually bump versions for v0.2.0 release ([`fd896fb`](https://github.com/hydro-project/hydroflow/commit/fd896fbe925fbd8ef1d16be7206ac20ba585081a)) - Rename `Fake` -> `Immut` ([`10b3085`](https://github.com/hydro-project/hydroflow/commit/10b308532245db8f4480ce53b67aea050ae1918d))
## 0.1.2 (2023-05-30) ### New Features - print out items when lattice identity tests fail ### Commit Statistics - 2 commits contributed to the release. - 6 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#691](https://github.com/hydro-project/hydroflow/issues/691) ### Commit Details
view details * **[#691](https://github.com/hydro-project/hydroflow/issues/691)** - Print out items when lattice identity tests fail ([`ecff609`](https://github.com/hydro-project/hydroflow/commit/ecff609a0153446efc1809230ae100964bb9f89b)) * **Uncategorized** - Release hydroflow_cli_integration v0.1.1, hydroflow_lang v0.1.1, hydroflow_datalog_core v0.1.1, hydroflow_macro v0.1.1, lattices v0.1.2, hydroflow v0.1.1, hydro_cli v0.1.0 ([`d9fa8b3`](https://github.com/hydro-project/hydroflow/commit/d9fa8b387e303b33d9614dbde80abf1af08bd8eb))
## 0.1.1 (2023-05-23) ### Documentation - simplified explanations, fixed typos, removed dead named links - update links from old to new book ### Refactor - update cc-traits to v2, remove `SimpleKeyedRef` shim ### Commit Statistics - 5 commits contributed to the release. - 2 days passed between releases. - 3 commits were understood as [conventional](https://www.conventionalcommits.org). - 3 unique issues were worked on: [#671](https://github.com/hydro-project/hydroflow/issues/671), [#674](https://github.com/hydro-project/hydroflow/issues/674), [#687](https://github.com/hydro-project/hydroflow/issues/687) ### Commit Details
view details * **[#671](https://github.com/hydro-project/hydroflow/issues/671)** - Migrate docs to a unified Docusuarus site ([`feed326`](https://github.com/hydro-project/hydroflow/commit/feed3268c0aabeb027b19abd9ed06c565a0462f4)) * **[#674](https://github.com/hydro-project/hydroflow/issues/674)** - Update cc-traits to v2, remove `SimpleKeyedRef` shim ([`3bee6f8`](https://github.com/hydro-project/hydroflow/commit/3bee6f858a78d82b7431e124ef9792002c8d77ce)) * **[#687](https://github.com/hydro-project/hydroflow/issues/687)** - Simplified explanations, fixed typos, removed dead named links ([`720744f`](https://github.com/hydro-project/hydroflow/commit/720744fc90fa05a11e0b79c96baba2eb6fd1c7f3)) - Update links from old to new book ([`4bc1ac1`](https://github.com/hydro-project/hydroflow/commit/4bc1ac1ea2fa6257219ec7fae94a2b039ec7eb7b)) * **Uncategorized** - Release hydroflow_cli_integration v0.1.0, hydroflow_internalmacro v0.1.0, hydroflow_lang v0.1.0, hydroflow_datalog_core v0.1.0, hydroflow_datalog v0.1.0, hydroflow_macro v0.1.0, lattices v0.1.1, hydroflow v0.1.0 ([`7324974`](https://github.com/hydro-project/hydroflow/commit/73249744293c9b89cbaa2d84b23ca3f25b00ae4e))
## 0.1.0 (2023-05-21) ### Documentation - Update docs, add book chapter for `lattices` crate - Adds `mdbook-katex` to the book build for latex support. ### New Features - Make lattice test helpers public, restructure Also impl `LatticeOrd` for `SetUnion` ### Style - Warn lint `unused_qualifications` - rustfmt group imports - rustfmt prescribe flat-module `use` format ### Commit Statistics - 14 commits contributed to the release. - 18 days passed between releases. - 5 commits were understood as [conventional](https://www.conventionalcommits.org). - 10 unique issues were worked on: [#625](https://github.com/hydro-project/hydroflow/issues/625), [#637](https://github.com/hydro-project/hydroflow/issues/637), [#638](https://github.com/hydro-project/hydroflow/issues/638), [#642](https://github.com/hydro-project/hydroflow/issues/642), [#644](https://github.com/hydro-project/hydroflow/issues/644), [#645](https://github.com/hydro-project/hydroflow/issues/645), [#658](https://github.com/hydro-project/hydroflow/issues/658), [#660](https://github.com/hydro-project/hydroflow/issues/660), [#664](https://github.com/hydro-project/hydroflow/issues/664), [#667](https://github.com/hydro-project/hydroflow/issues/667) ### Commit Details
view details * **[#625](https://github.com/hydro-project/hydroflow/issues/625)** - Use `cc-traits` instead of own `Collection`, remove `tag` indirection ([`10ed00d`](https://github.com/hydro-project/hydroflow/commit/10ed00df8e6f2e86d7db737dd2049f2c5dbfeba0)) * **[#637](https://github.com/hydro-project/hydroflow/issues/637)** - Add bottom and fake lattice types ([`95ce1ed`](https://github.com/hydro-project/hydroflow/commit/95ce1edbecebdc505893b1f527bef905b4247ed8)) * **[#638](https://github.com/hydro-project/hydroflow/issues/638)** - Remove old lattice code ([`f4915fa`](https://github.com/hydro-project/hydroflow/commit/f4915fab98c57652e5345d39076d95ebb0a43fd8)) * **[#642](https://github.com/hydro-project/hydroflow/issues/642)** - Remove zmq, use unsync channels locally, use sync mpsc cross-thread, use cross_join+enumerate instead of broadcast channel,remove Eq requirement from multisetjoin ([`b38f5cf`](https://github.com/hydro-project/hydroflow/commit/b38f5cf198e29a8de2f84eb4cd075818fbeffda6)) * **[#644](https://github.com/hydro-project/hydroflow/issues/644)** - Remove Compare trait, add tests, make all lattice types PartialOrd, Eq, PartialEq ([`698b72f`](https://github.com/hydro-project/hydroflow/commit/698b72f8f013288f211a655bf93f2a3cd6d386e7)) * **[#645](https://github.com/hydro-project/hydroflow/issues/645)** - Fix `Pair` `PartialOrd` implementation, add consistency tests with `NaiveOrd` ([`76e19a7`](https://github.com/hydro-project/hydroflow/commit/76e19a7346cd6005a04c39974bbcf4ed2bd37217)) * **[#658](https://github.com/hydro-project/hydroflow/issues/658)** - Allow fake to merge, compare equal values ([`1a159dc`](https://github.com/hydro-project/hydroflow/commit/1a159dc8a16e40fa40ae3e8433d53c08d82e833c)) * **[#660](https://github.com/hydro-project/hydroflow/issues/660)** - Warn lint `unused_qualifications` ([`cd0a86d`](https://github.com/hydro-project/hydroflow/commit/cd0a86d9271d0e3daab59c46f079925f863424e1)) - Rustfmt group imports ([`20a1b2c`](https://github.com/hydro-project/hydroflow/commit/20a1b2c0cd04a8b495a02ce345db3d48a99ea0e9)) - Rustfmt prescribe flat-module `use` format ([`1eda91a`](https://github.com/hydro-project/hydroflow/commit/1eda91a2ef8794711ef037240f15284e8085d863)) * **[#664](https://github.com/hydro-project/hydroflow/issues/664)** - Make lattice test helpers public, restructure ([`15f9688`](https://github.com/hydro-project/hydroflow/commit/15f9688ff4dc816a374ed9068d98bee0a4d51b2c)) * **[#667](https://github.com/hydro-project/hydroflow/issues/667)** - Bump lattices version to `0.1.0` ([`a46ce4a`](https://github.com/hydro-project/hydroflow/commit/a46ce4a522b70661e5acf644f893bfdf56294578)) - Update docs, add book chapter for `lattices` crate ([`95d23ea`](https://github.com/hydro-project/hydroflow/commit/95d23eaf8218002ad0a6a8c4c6e6c76e6b8f785b)) * **Uncategorized** - Release hydroflow_cli_integration v0.0.1, hydroflow_lang v0.0.1, hydroflow_datalog_core v0.0.1, hydroflow_datalog v0.0.1, hydroflow_macro v0.0.1, lattices v0.1.0, variadics v0.0.2, pusherator v0.0.1, hydroflow v0.0.2 ([`809395a`](https://github.com/hydro-project/hydroflow/commit/809395acddb78949d7a2bf036e1a94972f23b1ad))
## 0.0.0 (2023-05-02) ### Commit Statistics - 2 commits contributed to the release. - 0 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#634](https://github.com/hydro-project/hydroflow/issues/634), [#636](https://github.com/hydro-project/hydroflow/issues/636) ### Commit Details
view details * **[#634](https://github.com/hydro-project/hydroflow/issues/634)** - Fixup! Move lattice2 into new separate `lattices` crate ([`b08e793`](https://github.com/hydro-project/hydroflow/commit/b08e793edf30e40f21c916ae630a09337034150e)) - Move lattice2 into new separate `lattices` crate ([`c0006c4`](https://github.com/hydro-project/hydroflow/commit/c0006c4c73e0f3f5c65274e3ad76537ea9fe2643)) * **[#636](https://github.com/hydro-project/hydroflow/issues/636)** - Fixup! Move lattice2 into new separate `lattices` crate ([`b08e793`](https://github.com/hydro-project/hydroflow/commit/b08e793edf30e40f21c916ae630a09337034150e))