-
Notifications
You must be signed in to change notification settings - Fork 37
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: actually committing empty CHANGELOG.md is required
- Loading branch information
1 parent
478aebc
commit 3b36020
Showing
5 changed files
with
278 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
# 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.5.1 (2024-01-29) | ||
|
||
### Chore | ||
|
||
- <csr-id-1b555e57c8c812bed4d6495d2960cbf77fb0b3ef/> 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 | ||
|
||
### New Features | ||
|
||
- <csr-id-20fd1e5f876c5977e44a58757f41c66bdf6a3d15/> improve build error message debuggability | ||
- <csr-id-46d87fa364d3fe01422cf3c404fbc8a1d5e9fb88/> pass subgraph ID through deploy metadata | ||
- <csr-id-b7aafd3c97897db4bff62c4ab0b7480ef9a799e0/> improve API naming and eliminate wire API for builders | ||
- <csr-id-53d7aee8dcc574d47864ec89bfea30a82eab0ee7/> improve Rust API for defining services | ||
- <csr-id-c50ca121b6d5e30dc07843f82caa135b68626301/> split Rust core from Python bindings | ||
|
||
### Bug Fixes | ||
|
||
- <csr-id-d23c2299098dd62058c0951c99a62bb9e0af5b25/> avoid inflexible `\\?\` canonical paths on windows to mitigate `/` separator errors | ||
- <csr-id-f8a0b95113e92e003061d2a3865c84d69851dd8e/> race conditions when handshake channels capture other outputs | ||
Timeouts in Hydroflow+ tests were being caused by a race condition in Hydro Deploy where stdout sent after a handshake message would sometimes be sent to the `cli_stdout` channel for handshakes. | ||
|
||
This PR adjusts the handshake channels to always be oneshot, so that the broadcaster immediately knows when to send data to the regular stdout channels. | ||
|
||
Also refactors Hydro Deploy sources to split up more modules. | ||
- <csr-id-1ae27de6aafb72cee5da0cce6cf52748161d0f33/> don't vendor openssl and fix docker build | ||
- <csr-id-1d8adc1df15bac74c6f4496589d615e361019f50/> fix docs and remove unnecessary async_trait | ||
|
||
### Commit Statistics | ||
|
||
<csr-read-only-do-not-edit/> | ||
|
||
- 10 commits contributed to the release over the course of 39 calendar days. | ||
- 10 commits were understood as [conventional](https://www.conventionalcommits.org). | ||
- 9 unique issues were worked on: [#1010](https://github.com/hydro-project/hydroflow/issues/1010), [#1014](https://github.com/hydro-project/hydroflow/issues/1014), [#986](https://github.com/hydro-project/hydroflow/issues/986), [#987](https://github.com/hydro-project/hydroflow/issues/987), [#992](https://github.com/hydro-project/hydroflow/issues/992), [#994](https://github.com/hydro-project/hydroflow/issues/994), [#995](https://github.com/hydro-project/hydroflow/issues/995), [#996](https://github.com/hydro-project/hydroflow/issues/996), [#999](https://github.com/hydro-project/hydroflow/issues/999) | ||
|
||
### Commit Details | ||
|
||
<csr-read-only-do-not-edit/> | ||
|
||
<details><summary>view details</summary> | ||
|
||
* **[#1010](https://github.com/hydro-project/hydroflow/issues/1010)** | ||
- Improve build error message debuggability ([`20fd1e5`](https://github.com/hydro-project/hydroflow/commit/20fd1e5f876c5977e44a58757f41c66bdf6a3d15)) | ||
* **[#1014](https://github.com/hydro-project/hydroflow/issues/1014)** | ||
- Avoid inflexible `\\?\` canonical paths on windows to mitigate `/` separator errors ([`d23c229`](https://github.com/hydro-project/hydroflow/commit/d23c2299098dd62058c0951c99a62bb9e0af5b25)) | ||
* **[#986](https://github.com/hydro-project/hydroflow/issues/986)** | ||
- Split Rust core from Python bindings ([`c50ca12`](https://github.com/hydro-project/hydroflow/commit/c50ca121b6d5e30dc07843f82caa135b68626301)) | ||
* **[#987](https://github.com/hydro-project/hydroflow/issues/987)** | ||
- Improve Rust API for defining services ([`53d7aee`](https://github.com/hydro-project/hydroflow/commit/53d7aee8dcc574d47864ec89bfea30a82eab0ee7)) | ||
* **[#992](https://github.com/hydro-project/hydroflow/issues/992)** | ||
- Fix docs and remove unnecessary async_trait ([`1d8adc1`](https://github.com/hydro-project/hydroflow/commit/1d8adc1df15bac74c6f4496589d615e361019f50)) | ||
* **[#994](https://github.com/hydro-project/hydroflow/issues/994)** | ||
- Don't vendor openssl and fix docker build ([`1ae27de`](https://github.com/hydro-project/hydroflow/commit/1ae27de6aafb72cee5da0cce6cf52748161d0f33)) | ||
* **[#995](https://github.com/hydro-project/hydroflow/issues/995)** | ||
- Improve API naming and eliminate wire API for builders ([`b7aafd3`](https://github.com/hydro-project/hydroflow/commit/b7aafd3c97897db4bff62c4ab0b7480ef9a799e0)) | ||
* **[#996](https://github.com/hydro-project/hydroflow/issues/996)** | ||
- Pass subgraph ID through deploy metadata ([`46d87fa`](https://github.com/hydro-project/hydroflow/commit/46d87fa364d3fe01422cf3c404fbc8a1d5e9fb88)) | ||
* **[#999](https://github.com/hydro-project/hydroflow/issues/999)** | ||
- Race conditions when handshake channels capture other outputs ([`f8a0b95`](https://github.com/hydro-project/hydroflow/commit/f8a0b95113e92e003061d2a3865c84d69851dd8e)) | ||
* **Uncategorized** | ||
- Manually set lockstep-versioned crates (and `lattices`) to version `0.5.1` ([`1b555e5`](https://github.com/hydro-project/hydroflow/commit/1b555e57c8c812bed4d6495d2960cbf77fb0b3ef)) | ||
</details> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
# 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.5.1 (2024-01-29) | ||
|
||
### Chore | ||
|
||
- <csr-id-1b555e57c8c812bed4d6495d2960cbf77fb0b3ef/> 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 | ||
|
||
### New Features | ||
|
||
- <csr-id-5a03ed41548b5766b945efbd1eedb0dfceb714d9/> add core negation operators | ||
- <csr-id-7d930a2ccf656d3d6bc5db3e22eb63c5fd6d37d1/> add APIs for declaring external ports on clusters | ||
- <csr-id-73e9b68ec2f5b2627784addcce9fba684848bb55/> implement keyed fold and reduce | ||
- <csr-id-5e6ebac1a7f128227ae92a8c195235b27532e17a/> add interleaved shortcut when sending from a cluster | ||
- <csr-id-af6e3be60fdb69ceec1613347910f4dd49980d34/> push down persists and implement Pi example | ||
Also fixes type inference issues with reduce the same way as we did for fold. | ||
- <csr-id-6eeb9be9bc4136041a2855f650ae640c478b7fc9/> improve API naming and polish docs | ||
- <csr-id-44a308f77bddd67b5c51723ac39f3bc10af52553/> tweak naming of windowing operators | ||
- <csr-id-1edc5ae5b5f70e1390183e8c8eb27eb0ab32196d/> provide simpler API for launching and minimize dependencies | ||
- <csr-id-b7aafd3c97897db4bff62c4ab0b7480ef9a799e0/> improve API naming and eliminate wire API for builders | ||
- <csr-id-d288e51f980577510bb2ed45c04554102c4f1e14/> split API for building single-node graphs | ||
- <csr-id-26f4d6f610b78a75c41b1ae63366d089ad08b322/> require explicit batching for aggregation operators | ||
- <csr-id-174607d12277d7544d0f42890c9a5da2ff184df4/> support building graphs for symmetric clusters in Hydroflow+ | ||
- <csr-id-9e275824c88b24d060a7de5822e1359959b36b03/> auto-configure Hydro Deploy based on Hydroflow+ plans | ||
- <csr-id-27dabcf6878576dc3675788ce3381cb25116033a/> add preliminary `send_to` operator for multi-node graphs | ||
- <csr-id-e5bdd12e32d6ea72fd91a55c12e09f07a0edaa5c/> 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. | ||
- <csr-id-05fb1353cf3e0e8c5da9522365150bd78bd3c5f8/> allow Hydroflow+ programs to emit multiple graphs | ||
This PR adds support for tagging elements of Hydroflow+ graphs with a node ID, an integer which specifies which Hydroflow graph the computation should be emitted to. The generated code includes the Hydroflow graph for each node ID, so that the appropriate graph can be selected at runtime. | ||
|
||
At a larger scale, this is a precursor to adding network operators to Hydroflow+, which will allow distributed logic to be described in a single Hydroflow+ program by specifying points at which data is transferred between different graphs. | ||
- <csr-id-8b635683e5ac3c4ed2d896ae88e2953db1c6312c/> add a functional surface syntax using staging | ||
|
||
### Bug Fixes | ||
|
||
- <csr-id-88a17967d0c9e681a04de4b5796f532f4833272c/> persist cluster IDs for broadcast | ||
I'll follow this up with a unit test for this, but want to get this fixed ASAP first. | ||
- <csr-id-bd2bf233302e3638c8f4bc9c0460e1a47edc00aa/> rewrite uses of alloc crate in bincode operators | ||
- <csr-id-2addaed8a8a441bff7acf9a0a265cc09483fd487/> disallow joining streams on different nodes | ||
- <csr-id-38411ea007d4feb30dd16bdd1505802a111a67d1/> fix spelling of "propagate" | ||
|
||
### Commit Statistics | ||
|
||
<csr-read-only-do-not-edit/> | ||
|
||
- 22 commits contributed to the release over the course of 76 calendar days. | ||
- 22 commits were understood as [conventional](https://www.conventionalcommits.org). | ||
- 20 unique issues were worked on: [#1001](https://github.com/hydro-project/hydroflow/issues/1001), [#1003](https://github.com/hydro-project/hydroflow/issues/1003), [#1004](https://github.com/hydro-project/hydroflow/issues/1004), [#1006](https://github.com/hydro-project/hydroflow/issues/1006), [#1013](https://github.com/hydro-project/hydroflow/issues/1013), [#1021](https://github.com/hydro-project/hydroflow/issues/1021), [#1022](https://github.com/hydro-project/hydroflow/issues/1022), [#1023](https://github.com/hydro-project/hydroflow/issues/1023), [#1035](https://github.com/hydro-project/hydroflow/issues/1035), [#1036](https://github.com/hydro-project/hydroflow/issues/1036), [#899](https://github.com/hydro-project/hydroflow/issues/899), [#976](https://github.com/hydro-project/hydroflow/issues/976), [#978](https://github.com/hydro-project/hydroflow/issues/978), [#981](https://github.com/hydro-project/hydroflow/issues/981), [#982](https://github.com/hydro-project/hydroflow/issues/982), [#984](https://github.com/hydro-project/hydroflow/issues/984), [#989](https://github.com/hydro-project/hydroflow/issues/989), [#991](https://github.com/hydro-project/hydroflow/issues/991), [#993](https://github.com/hydro-project/hydroflow/issues/993), [#995](https://github.com/hydro-project/hydroflow/issues/995) | ||
|
||
### Commit Details | ||
|
||
<csr-read-only-do-not-edit/> | ||
|
||
<details><summary>view details</summary> | ||
|
||
* **[#1001](https://github.com/hydro-project/hydroflow/issues/1001)** | ||
- Disallow joining streams on different nodes ([`2addaed`](https://github.com/hydro-project/hydroflow/commit/2addaed8a8a441bff7acf9a0a265cc09483fd487)) | ||
* **[#1003](https://github.com/hydro-project/hydroflow/issues/1003)** | ||
- Provide simpler API for launching and minimize dependencies ([`1edc5ae`](https://github.com/hydro-project/hydroflow/commit/1edc5ae5b5f70e1390183e8c8eb27eb0ab32196d)) | ||
* **[#1004](https://github.com/hydro-project/hydroflow/issues/1004)** | ||
- Rewrite uses of alloc crate in bincode operators ([`bd2bf23`](https://github.com/hydro-project/hydroflow/commit/bd2bf233302e3638c8f4bc9c0460e1a47edc00aa)) | ||
* **[#1006](https://github.com/hydro-project/hydroflow/issues/1006)** | ||
- Tweak naming of windowing operators ([`44a308f`](https://github.com/hydro-project/hydroflow/commit/44a308f77bddd67b5c51723ac39f3bc10af52553)) | ||
* **[#1013](https://github.com/hydro-project/hydroflow/issues/1013)** | ||
- Improve API naming and polish docs ([`6eeb9be`](https://github.com/hydro-project/hydroflow/commit/6eeb9be9bc4136041a2855f650ae640c478b7fc9)) | ||
* **[#1021](https://github.com/hydro-project/hydroflow/issues/1021)** | ||
- Push down persists and implement Pi example ([`af6e3be`](https://github.com/hydro-project/hydroflow/commit/af6e3be60fdb69ceec1613347910f4dd49980d34)) | ||
* **[#1022](https://github.com/hydro-project/hydroflow/issues/1022)** | ||
- Add interleaved shortcut when sending from a cluster ([`5e6ebac`](https://github.com/hydro-project/hydroflow/commit/5e6ebac1a7f128227ae92a8c195235b27532e17a)) | ||
* **[#1023](https://github.com/hydro-project/hydroflow/issues/1023)** | ||
- Implement keyed fold and reduce ([`73e9b68`](https://github.com/hydro-project/hydroflow/commit/73e9b68ec2f5b2627784addcce9fba684848bb55)) | ||
* **[#1035](https://github.com/hydro-project/hydroflow/issues/1035)** | ||
- Persist cluster IDs for broadcast ([`88a1796`](https://github.com/hydro-project/hydroflow/commit/88a17967d0c9e681a04de4b5796f532f4833272c)) | ||
* **[#1036](https://github.com/hydro-project/hydroflow/issues/1036)** | ||
- Add core negation operators ([`5a03ed4`](https://github.com/hydro-project/hydroflow/commit/5a03ed41548b5766b945efbd1eedb0dfceb714d9)) | ||
* **[#899](https://github.com/hydro-project/hydroflow/issues/899)** | ||
- Add a functional surface syntax using staging ([`8b63568`](https://github.com/hydro-project/hydroflow/commit/8b635683e5ac3c4ed2d896ae88e2953db1c6312c)) | ||
* **[#976](https://github.com/hydro-project/hydroflow/issues/976)** | ||
- Allow Hydroflow+ programs to emit multiple graphs ([`05fb135`](https://github.com/hydro-project/hydroflow/commit/05fb1353cf3e0e8c5da9522365150bd78bd3c5f8)) | ||
* **[#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)) | ||
* **[#981](https://github.com/hydro-project/hydroflow/issues/981)** | ||
- Add preliminary `send_to` operator for multi-node graphs ([`27dabcf`](https://github.com/hydro-project/hydroflow/commit/27dabcf6878576dc3675788ce3381cb25116033a)) | ||
* **[#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)) | ||
* **[#984](https://github.com/hydro-project/hydroflow/issues/984)** | ||
- Support building graphs for symmetric clusters in Hydroflow+ ([`174607d`](https://github.com/hydro-project/hydroflow/commit/174607d12277d7544d0f42890c9a5da2ff184df4)) | ||
* **[#989](https://github.com/hydro-project/hydroflow/issues/989)** | ||
- Fix spelling of "propagate" ([`38411ea`](https://github.com/hydro-project/hydroflow/commit/38411ea007d4feb30dd16bdd1505802a111a67d1)) | ||
* **[#991](https://github.com/hydro-project/hydroflow/issues/991)** | ||
- Require explicit batching for aggregation operators ([`26f4d6f`](https://github.com/hydro-project/hydroflow/commit/26f4d6f610b78a75c41b1ae63366d089ad08b322)) | ||
* **[#993](https://github.com/hydro-project/hydroflow/issues/993)** | ||
- Split API for building single-node graphs ([`d288e51`](https://github.com/hydro-project/hydroflow/commit/d288e51f980577510bb2ed45c04554102c4f1e14)) | ||
* **[#995](https://github.com/hydro-project/hydroflow/issues/995)** | ||
- Improve API naming and eliminate wire API for builders ([`b7aafd3`](https://github.com/hydro-project/hydroflow/commit/b7aafd3c97897db4bff62c4ab0b7480ef9a799e0)) | ||
* **Uncategorized** | ||
- Manually set lockstep-versioned crates (and `lattices`) to version `0.5.1` ([`1b555e5`](https://github.com/hydro-project/hydroflow/commit/1b555e57c8c812bed4d6495d2960cbf77fb0b3ef)) | ||
- Add APIs for declaring external ports on clusters ([`7d930a2`](https://github.com/hydro-project/hydroflow/commit/7d930a2ccf656d3d6bc5db3e22eb63c5fd6d37d1)) | ||
</details> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# 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.1.0 (2024-01-29) | ||
|
||
### New Features | ||
|
||
- <csr-id-af6e3be60fdb69ceec1613347910f4dd49980d34/> push down persists and implement Pi example | ||
Also fixes type inference issues with reduce the same way as we did for fold. | ||
- <csr-id-174607d12277d7544d0f42890c9a5da2ff184df4/> support building graphs for symmetric clusters in Hydroflow+ | ||
- <csr-id-71083233afc01e0132d7186f4af8c0b4a6323ec7/> support crates that have no entrypoints | ||
Also includes various bugfixes needed for Hydroflow+. | ||
- <csr-id-8b635683e5ac3c4ed2d896ae88e2953db1c6312c/> add a functional surface syntax using staging | ||
|
||
### Bug Fixes | ||
|
||
- <csr-id-8df66f8c24127d8818d64d1534bb1ab4a616597f/> fix `include!` path separators on windows | ||
|
||
### Commit Statistics | ||
|
||
<csr-read-only-do-not-edit/> | ||
|
||
- 5 commits contributed to the release over the course of 76 calendar days. | ||
- 5 commits were understood as [conventional](https://www.conventionalcommits.org). | ||
- 5 unique issues were worked on: [#1010](https://github.com/hydro-project/hydroflow/issues/1010), [#1021](https://github.com/hydro-project/hydroflow/issues/1021), [#899](https://github.com/hydro-project/hydroflow/issues/899), [#983](https://github.com/hydro-project/hydroflow/issues/983), [#984](https://github.com/hydro-project/hydroflow/issues/984) | ||
|
||
### Commit Details | ||
|
||
<csr-read-only-do-not-edit/> | ||
|
||
<details><summary>view details</summary> | ||
|
||
* **[#1010](https://github.com/hydro-project/hydroflow/issues/1010)** | ||
- Fix `include!` path separators on windows ([`8df66f8`](https://github.com/hydro-project/hydroflow/commit/8df66f8c24127d8818d64d1534bb1ab4a616597f)) | ||
* **[#1021](https://github.com/hydro-project/hydroflow/issues/1021)** | ||
- Push down persists and implement Pi example ([`af6e3be`](https://github.com/hydro-project/hydroflow/commit/af6e3be60fdb69ceec1613347910f4dd49980d34)) | ||
* **[#899](https://github.com/hydro-project/hydroflow/issues/899)** | ||
- Add a functional surface syntax using staging ([`8b63568`](https://github.com/hydro-project/hydroflow/commit/8b635683e5ac3c4ed2d896ae88e2953db1c6312c)) | ||
* **[#983](https://github.com/hydro-project/hydroflow/issues/983)** | ||
- Support crates that have no entrypoints ([`7108323`](https://github.com/hydro-project/hydroflow/commit/71083233afc01e0132d7186f4af8c0b4a6323ec7)) | ||
* **[#984](https://github.com/hydro-project/hydroflow/issues/984)** | ||
- Support building graphs for symmetric clusters in Hydroflow+ ([`174607d`](https://github.com/hydro-project/hydroflow/commit/174607d12277d7544d0f42890c9a5da2ff184df4)) | ||
</details> | ||
|
Oops, something went wrong.