Skip to content

Releases: hydro-project/hydro

hydroflow_lang v0.10.0

08 Nov 19:30
Compare
Choose a tag to compare

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 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.


  • Added state_by operator.
    For #1467

Bug Fixes

  • cross_singleton() forgot value if multiple runs in a tick, fix #1518
    Adds the minimal reproducer test from @shadaj

    Note this may have negative performance implications, as the singleton value now is stored in the state API (heap) instead of locally. If we use singleton syntax this duplicate allocation could probably be avoided.

    Confirmed that this fixed the bugs in our Paxos implementation, no noticeable performance impact. @shadj

Refactor

  • update topo-sort to detect cycles

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))

Bug Fixes (BREAKING)

  • fix #1401 lattice_bimorphism() double-emit, add docs
    Fixes the issue by combining the all values generated per subgraph
    execution into one, which effectively de-duplicates the values.

    Adds basic docs.

Commit Statistics

Commit Details

view details

hydroflow_deploy_integration v0.10.0

08 Nov 19:30
Compare
Choose a tag to compare

Chore

  • update pinned rust version, clippy lints, remove some dead code

Commit Statistics

  • 1 commit contributed to the release.
  • 69 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #1444

Commit Details

view details
  • #1444
    • Update pinned rust version, clippy lints, remove some dead code (d567760)

hydroflow_datalog_core v0.10.0

08 Nov 19:30
Compare
Choose a tag to compare

Chore

  • update rust-sitter
    The latest Rust Sitter drops the dependency on tree-sitter-cli, which
    eliminates many transitive dependencies.
  • update pinned rust version, clippy lints, remove some dead code

Style

  • fixes for latest nightly clippy

Commit Statistics

  • 3 commits contributed to the release.
  • 69 days passed between releases.
  • 3 commits were understood as conventional.
  • 3 unique issues were worked on: #1444, #1495, #1537

Commit Details

view details

hydroflow_datalog v0.10.0

08 Nov 19:30
Compare
Choose a tag to compare

Chore

  • update pinned rust version, clippy lints, remove some dead code

Commit Statistics

  • 1 commit contributed to the release.
  • 69 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #1444

Commit Details

view details
  • #1444
    • Update pinned rust version, clippy lints, remove some dead code (d567760)

hydroflow v0.10.0

08 Nov 19:31
Compare
Choose a tag to compare

Chore

  • update proc-macro2, fixes span info, fix #729
  • 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 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.


Bug Fixes

  • cross_singleton() forgot value if multiple runs in a tick, fix #1518
    Adds the minimal reproducer test from @shadaj

    Note this may have negative performance implications, as the singleton value now is stored in the state API (heap) instead of locally. If we use singleton syntax this duplicate allocation could probably be avoided.

    Confirmed that this fixed the bugs in our Paxos implementation, no noticeable performance impact. @shadj

  • cleanup temp tcp networking code, fix race condition fix #1458
    consolidate into one task to prevent races

Style

  • fixes for latest nightly clippy
  • 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))

Test

  • ignore trybuild tests inconsistent on latest nightly

Bug Fixes (BREAKING)

  • fix #1401 lattice_bimorphism() double-emit, add docs
    Fixes the issue by combining the all values generated per subgraph
    execution into one, which effectively de-duplicates the values.

    Adds basic docs.

Commit Statistics

Commit Details

view details
  • #1444
    • Update pinned rust version, clippy lints, remove some dead code (d567760)
  • #1446
    • Cleanup temp tcp networking code, fix race condition fix #1458 (b961233)
  • #1497
    • Update proc-macro2, fixes span info, fix #729 (e564b13)
  • #1503
    • Generalized hash trie indexes for relational tuples (f7e740f)
  • #1505
    • Fixes for nightly clippy (47cb703)
  • #1520
    • cross_singleton() forgot value if multiple runs in a tick, fix #1518 (16b730c)
  • #1522
    • Fix #1401 lattice_bimorphism() double-emit, add docs (e796200)
  • #1537
    • Fixes for latest nightly clippy (8442d1b)
  • Uncategorized
    • Ignore trybuild tests inconsistent on latest nightly (656ee32)

hydro_deploy v0.10.0

08 Nov 19:31
Compare
Choose a tag to compare

Chore

  • update pinned rust version, clippy lints, remove some dead code

New Features

  • add ability to have staged flows inside unit tests
    Whenever a Hydroflow+ program is compiled, it depends on a generated
    __staged module, which contains the entire contents of the crate but
    with every type / function made pub and exported, so that the compiled
    UDFs can resolve local references appropriately.

    Previously, we would not do this for #[cfg(test)] modules, since they
    may use dev-dependencies and therefore the generated module may fail
    to compile when not in test mode. To solve this, when running a unit
    test (marked with hydroflow_plus::deploy::init_test()) that uses
    trybuild, we emit a version of the __staged module with #[cfg(test)]
    modules included into the generated trybuild sources because we can
    guarantee via trybuild that the appropriate dev-dependencies are
    available.

    This by itself allows crates depending on hydroflow_plus to have local
    unit tests with Hydroflow+ logic inside them. But we also want to use
    this support for unit tests inside hydroflow_plus itself. To enable
    that, we eliminate the hydroflow_plus_deploy crate and move its
    contents directly to hydroflow_plus itself so that we can access the
    trybuild machinery without incurring a circular dependency.

    Also fixes #1408

  • add API for external network inputs
    This is a key step towards being able to unit-test HF+ graphs, by being
    able to have controlled inputs. Outputs next.

Style

  • fixes for latest nightly clippy

Commit Statistics

  • 4 commits contributed to the release.
  • 69 days passed between releases.
  • 4 commits were understood as conventional.
  • 4 unique issues were worked on: #1444, #1449, #1450, #1537

Commit Details

view details
  • #1444
    • Update pinned rust version, clippy lints, remove some dead code (d567760)
  • #1449
    • Add API for external network inputs (8a80931)
  • #1450
    • Add ability to have staged flows inside unit tests (afe78c3)
  • #1537
    • Fixes for latest nightly clippy (8442d1b)

hydro_cli v0.10.0

08 Nov 19:31
Compare
Choose a tag to compare

Chore

  • update pinned rust version, clippy lints, remove some dead code

Commit Statistics

  • 1 commit contributed to the release.
  • 69 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #1444

Commit Details

view details
  • #1444
    • Update pinned rust version, clippy lints, remove some dead code (d567760)

variadics v0.0.6

30 Aug 20:54
Compare
Choose a tag to compare

Chore

  • lower min dependency versions where possible, update Cargo.lock
    Moved from #1418


Bug Fixes

  • allow PartialEqVariadic::eq_ref to take AsRefVars with different lifetimes
    Bug found while working on GHTs

Commit Statistics

  • 2 commits contributed to the release.
  • 2 commits were understood as conventional.
  • 2 unique issues were worked on: #1367, #1423

Commit Details

view details
  • #1367
    • Allow PartialEqVariadic::eq_ref to take AsRefVars with different lifetimes (43ff49d)
  • #1423
    • Lower min dependency versions where possible, update Cargo.lock (11af328)

stageleft_tool v0.3.0

30 Aug 20:54
Compare
Choose a tag to compare

Chore

  • lower min dependency versions where possible, update Cargo.lock
    Moved from #1418


New Features

  • use trybuild to compile subgraph binaries

Commit Statistics

  • 2 commits contributed to the release.
  • 2 commits were understood as conventional.
  • 2 unique issues were worked on: #1398, #1423

Commit Details

view details
  • #1398
    • Use trybuild to compile subgraph binaries (46a8a2c)
  • #1423
    • Lower min dependency versions where possible, update Cargo.lock (11af328)

stageleft_macro v0.3.0

30 Aug 20:54
Compare
Choose a tag to compare

Chore

  • lower min dependency versions where possible, update Cargo.lock
    Moved from #1418


Documentation

  • cleanup doc comments for clippy latest

Refactor

  • remove lazy_static dependency

Commit Statistics

Commit Details

view details
  • #1423
    • Lower min dependency versions where possible, update Cargo.lock (11af328)
  • #1426
    • Remove lazy_static dependency (461ae84)
  • #1428
    • Cleanup doc comments for clippy latest (f5f1eb0)