Skip to content

Latest commit

 

History

History
492 lines (354 loc) · 27.6 KB

CHANGELOG.md

File metadata and controls

492 lines (354 loc) · 27.6 KB

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.8.1 (2022-12-15)

New Features

  • re-export rayon in the crate root. This makes creating a ThreadPool easier as it doesn't force us to maintain our own rayon dependency.

Commit Statistics

  • 1 commit contributed to the release.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • re-export rayon in the crate root. (b49e157)

0.8.0 (2022-12-15)

New Features (BREAKING)

  • Parallelism::RayonExistingPool::busy_timeout is now optional. That way we can indicate that no waiting should be done as we know the given threadpool has enough resources.

Commit Statistics

  • 2 commits contributed to the release.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Release jwalk v0.8.0 (be0bd21)
    • Parallelism::RayonExistingPool::busy_timeout is now optional. (3a71721)

0.7.0 (2022-12-15)

This release makes iterator creation fallible to avoid potential hangs when there is no available thread to process any of the iterator work.

New Features

  • WalkDirGeneric::try_into_iter() for early error handling. If we can't instantiate the iterator due to a busy thread-pool, we can now abort early instead of yielding a fake-entry just to show an error occurred. This is the preferred way to instantiate a jwalk iterator.

New Features (BREAKING)

  • Detect possible deadlocks when instantiating a parallel iterator. Deadlocks can happen if the producer for results doesn't start as there is no free thread on the rayon pool, and the only way for it to become free is if the iterator produces results.

    We now offer a busy_timeout in the relevant variants of the Parallelism enumeration to allow controlling how long we will wait until we abort with an error.

Commit Statistics

  • 7 commits contributed to the release.
  • 1 day passed between releases.
  • 2 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Thanks Clippy

Clippy helped 1 time to make code idiomatic.

Commit Details

view details
  • Uncategorized
    • Release jwalk v0.7.0 (c265744)
    • prepare changelog prior to release (67364f9)
    • refactor (a94d14b)
    • thanks clippy (7e300c6)
    • WalkDirGeneric::try_into_iter() for early error handling. (7d5b8b8)
    • Detect possible deadlocks when instantiating a parallel iterator. (3bf1bc2)
    • fix various IDE warnings (cc0009f)

0.6.2 (2022-12-13)

Bug Fixes

  • stalling issue when threadpool is used is no more. The issue seems to have been that install blocks whereas spawn properly releases the main thread.

    This seems to have been changed subtly due to changes in rayon, which breaks an assumption on how the code is executed.

    Replacing install() with spawn calls resolved the issue.

Commit Statistics

  • 5 commits contributed to the release.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Release jwalk v0.6.2 (2d1b2fb)
    • Merge branch 'stalling-issue' (7bd2f35)
    • stalling issue when threadpool is used is no more. (bd3e880)
    • refactor (1032308)
    • print each path seen during iteration (5e83ad5)

0.6.1 (2022-12-13)

The first release under new ownership with no user-facing changes.

  • The project uses GitHub CI and cargo smart-release for releases.
  • some code cleanup based on cargo clippy.

Changing project ownership to @Byron

Commit Statistics

  • 30 commits contributed to the release over the course of 705 calendar days.
  • 705 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Thanks Clippy

Clippy helped 1 time to make code idiomatic.

Commit Details

view details
  • Uncategorized
    • Release jwalk v0.6.1 (6a2781c)
    • prepare changelog prior to release (c772967)
    • another round of link adjustments (7c12dc3)
    • thanks clippy (51e2b0d)
    • run benchmarks on CI (cc0fd74)
    • set version back to what's current, change URLs and add myself as author (aa5b24d)
    • cleanup tests (d8f0756)
    • rename 'master' to 'main' (362d03c)
    • enable CI (a115e7a)
    • Moved to example/crash (1a09da5)
    • Changing project ownership (cd5d1ae)
    • Add crash example (c0b262b)
    • More unneeded code removal (69c00ec)
    • Added failing combine with rayon test (5eccf5e)
    • Remove some unneeded rayon calls (f61a535)
    • Update to rayon 1.6.1, remove jwalk_par_bridge (94c0385)
    • Merge pull request #33 from bootandy/patch-2 (9575132)
    • Fix typo (9ae51a5)
    • Merge pull request #32 from Byron/master (5c857d4)
    • Don't ignore hidden files in du example (0786beb)
    • Remove unused imports in example (80a6d2e)
    • Update readme (6f9ebf5)
    • Update to from latest rayon src/iter/par_bridge.rs (e3a46c1)
    • Add simple du example (ae905c6)
    • Rename new bench to "rayon" (5ee29f5)
    • Merge pull request #31 from Byron/master (4817c1a)
    • reduce the recursion to its core, keep no state (247cf38)
    • Support for file metadata to approximate typical tool usage (a6afcfe)
    • Add simple recursive way of building a file tree for reference (9c66ef6)
    • (cargo-release) start next development iteration 0.6.0 (a1d5209)

v0.6.0 (2021-01-06)

Added depth and path being read to params to ProcessReadDirFunction callback.

Allow setting initial root_read_dir_state (ReadDirState) instead of always getting ::default() value.

Commit Statistics

  • 2 commits contributed to the release over the course of 9 calendar days.
  • 9 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Change release to 0.6 because of breaking changes (d74cc13)
    • (cargo-release) start next development iteration 0.5.2 (6e4ba03)

v0.5.2 (2020-12-28)

Commit Statistics

  • 12 commits contributed to the release over the course of 289 calendar days.
  • 289 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details

v0.5.1 (2020-03-13)

Commit Statistics

  • 5 commits contributed to the release.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • (cargo-release) version 0.5.1 (1621bee)
    • More tests for relative paths (246c997)
    • Use path for root dir_entry.file_name if path has now filename of own (80f6f7a)
    • Merge pull request #19 from brmmm3/simplify_and_then (ff234bb)
    • (cargo-release) start next development iteration 0.5.0 (5e97e11)

v0.5.0 (2020-03-13)

First major change is that API and behavior are now closer to [walkdir] and jwalk now runs the majority of walkdirs tests.

Second major change is the walk can now be parameterized with a client state type. This state can be manipulated from the process_read_dir callback and then is passed down when reading descendens with the process_read_dir callback.

Part of this second change is that preload_metadata option is removed. That means DirEntry.metadata() is never a cached value. Instead you want to read metadata you should do it in the process_entries callback and store whatever values you need as client_state. See this [benchmark] as an example.

Chore

  • Update criterion to 0.3

Commit Statistics

  • 26 commits contributed to the release over the course of 294 calendar days.
  • 294 days passed between releases.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details

v0.4.0 (2019-05-24)

Commit Statistics

  • 3 commits contributed to the release over the course of 91 calendar days.
  • 91 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • (cargo-release) version 0.4.0 (5d68189)
    • Added content spec error reporting for root DirEntry (9643ce0)
    • (cargo-release) start next development iteration 0.3.0 (956b1a5)

v0.3.0 (2019-02-21)

Commit Statistics

  • 8 commits contributed to the release over the course of 9 calendar days.
  • 9 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • (cargo-release) version 0.3.0 (09ebe45)
    • Update dependencies (f47607d)
    • Spelling (b8e9aea)
    • Fix bug when max_depth was set to 0 (29c035e)
    • Revert "Simplify, stop tracking depth in read dir specs." (331a896)
    • Simplify, stop tracking depth in read dir specs. (c1bffdd)
    • More badges! (e0d3e3e)
    • (cargo-release) start next development iteration 0.2.1 (133d168)

v0.2.1 (2019-02-11)

Commit Statistics

  • 4 commits contributed to the release.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • (cargo-release) version 0.2.1 (1dee5e1)
    • Fix usage documentation. Other documentation updates. (2631dbd)
    • Update usage (04f897f)
    • (cargo-release) start next development iteration 0.2.0 (da74631)

v0.2.0 (2019-02-11)

Commit Statistics

  • 37 commits contributed to the release over the course of 13 calendar days.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Expose DirEntry fields for easy destructure. (ad9404e)
    • Clippy suggestions and more doc updates (8fd5ae1)
    • Rename "children" to content. Simplify sort to boolean. (f432c4f)
    • More docs for ReadDirSpec (347bc92)
    • More docs on how DirEntry is implemented (0bb13ee)
    • Fixing too many keywords! (ff5fba1)
    • More readme tweaks (0b23848)
    • Shorter readme page. (0ee3b3c)
    • More doc updates (b3ac65c)
    • Remove unused dependency (301e2a5)
    • Add badge (ab07f7a)
    • Create .travis.yml (66828d7)
    • Add usage (58c7707)
    • split code up into more files (566da8f)
    • More docs cleanup (ade977d)
    • Fix readme headings (738d9f6)
    • Fix README example (1f42a3e)
    • tests and cleanup (5fc2859)
    • Fix DirEntry depth (5cc9db7)
    • Much cleaner, ready for real testing now. (2e58da7)
    • Preping to box instead of template client function. (5cd8e04)
    • Add more walk options and tests (c6f8385)
    • Add hidden file for tests (6372a1a)
    • Add fts to bench (32a527d)
    • Cleanup (d3899aa)
    • Always return ReadDirResutls, no longer an option (32d6b86)
    • Merge pull request #2 from jessegrosjean/ordered (5b4745e)
    • Merge branch 'master' into ordered (3ecc5b6)
    • Ready for feedback? (5d9ee63)
    • more work on work_tree (4ced894)
    • working on more generic "work tree" (ebf9789)
    • Merge pull request #1 from jessegrosjean/ordered (36b2d2f)
    • Cleaned up (6b0df4a)
    • parameterized walk (115a5fe)
    • In progress ordered walk (ba02dda)
    • Adding ordered version (b63f810)
    • init commit (8f64d5a)