# 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.2 (2024-04-05) ### Refactor - use `TcpListenerStream` instead of spawning task, fix #659 ### Commit Statistics - 1 commit contributed to the release over the course of 9 calendar days. - 67 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#1121](https://github.com/hydro-project/hydroflow/issues/1121) ### Commit Details
view details * **[#1121](https://github.com/hydro-project/hydroflow/issues/1121)** - Use `TcpListenerStream` instead of spawning task, fix #659 ([`ba2df44`](https://github.com/hydro-project/hydroflow/commit/ba2df44efd42b7c4d37ebefbf82e77c6f1d4cb94))
## 0.5.1 (2024-01-29) ### New Features - auto-configure Hydro Deploy based on Hydroflow+ plans - add initial test using Hydro CLI from Hydroflow+ This also required a change to Hydroflow core to make it possible to run the dataflow itself on a single thread (using a LocalSet), even if the surrounding runtime is not single-threaded (required to work around deadlocks because we can't use async APIs inside Hydroflow+). This requires us to spawn any Hydroflow tasks (only for `dest_sink` at the moment) right next to when we run the dataflow rather than when the Hydroflow graph is initialized. From a conceptual perspective, this seems _more right_, since now creating a Hydroflow program will not result in any actual tasks running. In the third PR of this series, I aim to add a new Hydroflow+ operator that will automate the setup of a `dest_sink`/`source_stream` pair that span nodes. - split Rust core from Python bindings ### Pre-Move Commit Statistics - 2 commits contributed to the release over the course of 3 calendar days. - 169 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#978](https://github.com/hydro-project/hydroflow/issues/978), [#982](https://github.com/hydro-project/hydroflow/issues/982) ### 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 - generate pre-move changelogs for `hydro_cli` and `hydroflow_cli_integration` ### Pre-Move Commit Details
view details * **[#978](https://github.com/hydro-project/hydroflow/issues/978)** - Add initial test using Hydro CLI from Hydroflow+ ([`e5bdd12`](https://github.com/hydro-project/hydroflow/commit/e5bdd12e32d6ea72fd91a55c12e09f07a0edaa5c)) * **[#982](https://github.com/hydro-project/hydroflow/issues/982)** - Auto-configure Hydro Deploy based on Hydroflow+ plans ([`9e27582`](https://github.com/hydro-project/hydroflow/commit/9e275824c88b24d060a7de5822e1359959b36b03))
### Commit Statistics - 4 commits contributed to the release over the course of 39 calendar days. - 209 days passed between releases. - 3 commits were understood as [conventional](https://www.conventionalcommits.org). - 2 unique issues were worked on: [#1046](https://github.com/hydro-project/hydroflow/issues/1046), [#986](https://github.com/hydro-project/hydroflow/issues/986) ### Commit Details
view details * **[#1046](https://github.com/hydro-project/hydroflow/issues/1046)** - Generate pre-move changelogs for `hydro_cli` and `hydroflow_cli_integration` ([`69e0416`](https://github.com/hydro-project/hydroflow/commit/69e04167f4774cf1ca3351e7ac34d15cfa83362b)) * **[#986](https://github.com/hydro-project/hydroflow/issues/986)** - Split Rust core from Python bindings ([`c50ca12`](https://github.com/hydro-project/hydroflow/commit/c50ca121b6d5e30dc07843f82caa135b68626301)) * **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))
## 0.3.0 (2023-07-04) ### Bug Fixes - remove nightly feature `never_type` where unused ### Pre-Move Commit Statistics - 2 commits contributed to the release over the course of 12 calendar days. - 33 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#780](https://github.com/hydro-project/hydroflow/issues/780) ### Pre-Move Commit Details
view details * **[#780](https://github.com/hydro-project/hydroflow/issues/780)** - Remove nightly feature `never_type` where unused ([`a3c1fbb`](https://github.com/hydro-project/hydroflow/commit/a3c1fbbd1e3fa7a7299878f61b4bfd12dce0052c)) * **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))
## 0.2.0 (2023-05-31) ### Chore - manually bump versions for v0.2.0 release ### New Features - Add more detailed Hydro Deploy docs and rename `ConnectedBidi` => `ConnectedDirect` ### Pre-Move Commit Statistics - 3 commits contributed to the release. - 2 days passed between releases. - 2 commits were understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#723](https://github.com/hydro-project/hydroflow/issues/723) ### Pre-Move Commit Details
view details * **[#723](https://github.com/hydro-project/hydroflow/issues/723)** - Add more detailed Hydro Deploy docs and rename `ConnectedBidi` => `ConnectedDirect` ([`8b2c9f0`](https://github.com/hydro-project/hydroflow/commit/8b2c9f09b1f423ac6d562c29d4ea587578f1c98a)) * **Uncategorized** - Release hydroflow_cli_integration v0.2.0 ([`71d940b`](https://github.com/hydro-project/hydroflow/commit/71d940b1b2ca379543f28c4e827f895fc5efa4bd)) - Manually bump versions for v0.2.0 release ([`fd896fb`](https://github.com/hydro-project/hydroflow/commit/fd896fbe925fbd8ef1d16be7206ac20ba585081a))
## 0.1.1 (2023-05-30) ### New Features - finish up WebSocket chat example and avoid deadlocks in network setup ### Bug Fixes - fix CLI build on windows ### Pre-Move Commit Statistics - 3 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: [#708](https://github.com/hydro-project/hydroflow/issues/708), [#717](https://github.com/hydro-project/hydroflow/issues/717) ### Pre-Move Commit Details
view details * **[#708](https://github.com/hydro-project/hydroflow/issues/708)** - Finish up WebSocket chat example and avoid deadlocks in network setup ([`4536ac6`](https://github.com/hydro-project/hydroflow/commit/4536ac6bbcd14a621b5a039d7fe213bff72a8db1)) * **[#717](https://github.com/hydro-project/hydroflow/issues/717)** - Fix CLI build on windows ([`2adfdd2`](https://github.com/hydro-project/hydroflow/commit/2adfdd2867092352121e4f232b63928a810948d3)) * **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.0 (2023-05-23) ### Chore - bump versions to 0.1.0 for release For release on crates.io for v0.1 ### Pre-Move Commit Statistics - 2 commits contributed to the release. - 2 days passed between releases. - 1 commit was understood as [conventional](https://www.conventionalcommits.org). - 1 unique issue was worked on: [#684](https://github.com/hydro-project/hydroflow/issues/684) ### Pre-Move Commit Details
view details * **[#684](https://github.com/hydro-project/hydroflow/issues/684)** - Bump versions to 0.1.0 for release ([`52ee8f8`](https://github.com/hydro-project/hydroflow/commit/52ee8f8e443f0a8b5caf92d2c5f028c00302a79b)) * **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.0.1 (2023-05-21) ### Style - Warn lint `unused_qualifications` - rustfmt group imports - rustfmt prescribe flat-module `use` format ### Pre-Move Commit Statistics - 6 commits contributed to the release over the course of 13 calendar days. - 24 days passed between releases. - 3 commits were understood as [conventional](https://www.conventionalcommits.org). - 3 unique issues were worked on: [#646](https://github.com/hydro-project/hydroflow/issues/646), [#656](https://github.com/hydro-project/hydroflow/issues/656), [#660](https://github.com/hydro-project/hydroflow/issues/660) ### Pre-Move Commit Details
view details * **[#646](https://github.com/hydro-project/hydroflow/issues/646)** - Update pinned `nightly-2023-05-07`, fix lints ([`19d5d96`](https://github.com/hydro-project/hydroflow/commit/19d5d963ac11bef951f00b93d0509679082cedef)) * **[#656](https://github.com/hydro-project/hydroflow/issues/656)** - Add WebSocket with CLI example and simplify init API ([`1015980`](https://github.com/hydro-project/hydroflow/commit/1015980ed995634ff8735e4daf33796e73bab563)) * **[#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)) * **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-04-26) ### Pre-Move Commit Statistics - 20 commits contributed to the release over the course of 46 calendar days. - 0 commits were understood as [conventional](https://www.conventionalcommits.org). - 19 unique issues were worked on: [#452](https://github.com/hydro-project/hydroflow/issues/452), [#461](https://github.com/hydro-project/hydroflow/issues/461), [#466](https://github.com/hydro-project/hydroflow/issues/466), [#472](https://github.com/hydro-project/hydroflow/issues/472), [#477](https://github.com/hydro-project/hydroflow/issues/477), [#479](https://github.com/hydro-project/hydroflow/issues/479), [#484](https://github.com/hydro-project/hydroflow/issues/484), [#498](https://github.com/hydro-project/hydroflow/issues/498), [#513](https://github.com/hydro-project/hydroflow/issues/513), [#533](https://github.com/hydro-project/hydroflow/issues/533), [#541](https://github.com/hydro-project/hydroflow/issues/541), [#545](https://github.com/hydro-project/hydroflow/issues/545), [#560](https://github.com/hydro-project/hydroflow/issues/560), [#563](https://github.com/hydro-project/hydroflow/issues/563), [#575](https://github.com/hydro-project/hydroflow/issues/575), [#576](https://github.com/hydro-project/hydroflow/issues/576), [#584](https://github.com/hydro-project/hydroflow/issues/584), [#613](https://github.com/hydro-project/hydroflow/issues/613), [#617](https://github.com/hydro-project/hydroflow/issues/617) ### Pre-Move Commit Details
view details * **[#452](https://github.com/hydro-project/hydroflow/issues/452)** - Build CLI wheels in CI and minimize CLI dependencies ([`3e33d0c`](https://github.com/hydro-project/hydroflow/commit/3e33d0cf6b068f0567e55462732598f8a4e2da6a)) * **[#461](https://github.com/hydro-project/hydroflow/issues/461)** - Support networking topologies that mix local and cloud through SSH tunneling ([`0ec6d88`](https://github.com/hydro-project/hydroflow/commit/0ec6d889469331a212c04f9568136f770f0c973d)) * **[#466](https://github.com/hydro-project/hydroflow/issues/466)** - Add APIs for sending data to a Hydroflow service from Python ([`c2203a1`](https://github.com/hydro-project/hydroflow/commit/c2203a15f0144308365af227f3ca044ae6a7954b)) * **[#472](https://github.com/hydro-project/hydroflow/issues/472)** - Some clippy/windows fixes for hydro cli code ([`bbf7b50`](https://github.com/hydro-project/hydroflow/commit/bbf7b506463d7fceb5d87005c7cb270a2b0521df)) * **[#477](https://github.com/hydro-project/hydroflow/issues/477)** - Properly handle interrupts and fix non-flushing demux ([`00ea017`](https://github.com/hydro-project/hydroflow/commit/00ea017e40b796e7561979efa0921658dfe072fd)) * **[#479](https://github.com/hydro-project/hydroflow/issues/479)** - Allow custom ports to be used as sinks ([`8da15b7`](https://github.com/hydro-project/hydroflow/commit/8da15b7cbd8bdbf960d3ed58b69f98538ccacd2c)) * **[#484](https://github.com/hydro-project/hydroflow/issues/484)** - Add merge API to CLI to have multiple sources for one sink ([`e09b567`](https://github.com/hydro-project/hydroflow/commit/e09b5670795292f66a004f41314c3c4aa7a24eeb)) * **[#498](https://github.com/hydro-project/hydroflow/issues/498)** - Add API to get CLI connection config as JSON ([`323e0f0`](https://github.com/hydro-project/hydroflow/commit/323e0f0afd73b66f321b2e88498627e76a186a4e)) * **[#513](https://github.com/hydro-project/hydroflow/issues/513)** - Add `hydro.null` API to connect no-op sources and sinks ([`9b2a4a6`](https://github.com/hydro-project/hydroflow/commit/9b2a4a690798d2a976221901fa25a908b7600f52)) * **[#533](https://github.com/hydro-project/hydroflow/issues/533)** - Add `hydro.mux` operator and initial API tests ([`c25272b`](https://github.com/hydro-project/hydroflow/commit/c25272b90f8cc5ec7614caa29f0be889d2220510)) * **[#541](https://github.com/hydro-project/hydroflow/issues/541)** - Fixup! Start accepting connections in the background of CLI initialization to avoid deadlocks ([`d2480f7`](https://github.com/hydro-project/hydroflow/commit/d2480f7b92a9067f63d736c6ba72f1dbc0614d0f)) - Start accepting connections in the background of CLI initialization to avoid deadlocks ([`681a6ba`](https://github.com/hydro-project/hydroflow/commit/681a6baef73de8a67e140526ede4b36e239976f0)) * **[#545](https://github.com/hydro-project/hydroflow/issues/545)** - Fixup! Start accepting connections in the background of CLI initialization to avoid deadlocks ([`d2480f7`](https://github.com/hydro-project/hydroflow/commit/d2480f7b92a9067f63d736c6ba72f1dbc0614d0f)) * **[#560](https://github.com/hydro-project/hydroflow/issues/560)** - Refactor `hydro.mux` to `source.tagged(id)` and support connections where the tagged source is the server ([`3f0ecc9`](https://github.com/hydro-project/hydroflow/commit/3f0ecc92abed7a0c95c04255adcc6d39c0767703)) * **[#563](https://github.com/hydro-project/hydroflow/issues/563)** - Don't drop the write half of a stream even if we are only reading in the CLI ([`aef43be`](https://github.com/hydro-project/hydroflow/commit/aef43be9c0a3cc39229c90cde9c8f5ed8b8198c8)) * **[#575](https://github.com/hydro-project/hydroflow/issues/575)** - Place a buffer over each sink of a demux to avoid serial message sending ([`a26f759`](https://github.com/hydro-project/hydroflow/commit/a26f759d717fd1685fc53181b4c2fd9b7b93a544)) * **[#576](https://github.com/hydro-project/hydroflow/issues/576)** - Add classic counter CRDT benchmark to compare against ([`2f3bf04`](https://github.com/hydro-project/hydroflow/commit/2f3bf04ab33768b04d44f3f58907f958d4cd8dc8)) * **[#584](https://github.com/hydro-project/hydroflow/issues/584)** - Fix windows build ([`5aa96c4`](https://github.com/hydro-project/hydroflow/commit/5aa96c451ba69ff2beed41528b8c847b75c45ea7)) * **[#613](https://github.com/hydro-project/hydroflow/issues/613)** - Improve error message when key is not found in a demux ([`f9f9e72`](https://github.com/hydro-project/hydroflow/commit/f9f9e729affe41d37b2414e7c5dfc5e54caf82a7)) * **[#617](https://github.com/hydro-project/hydroflow/issues/617)** - Update `Cargo.toml`s for publishing ([`a78ff9a`](https://github.com/hydro-project/hydroflow/commit/a78ff9aace6771787c2b72aad83be6ad8d49a828)) * **Uncategorized** - Setup release workflow ([`108d0e9`](https://github.com/hydro-project/hydroflow/commit/108d0e933a08b183c4dadf8c3499e4946696e263))