Skip to content

Latest commit

 

History

History
1314 lines (921 loc) · 70.2 KB

CHANGELOG.md

File metadata and controls

1314 lines (921 loc) · 70.2 KB

Changelog

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.

5.2.0 (2024-10-26)

New Features

  • Short circuiting check for empty trash is_empty() is a short circuiting function that checks if the trash is empty on Freedesktop compatible systems and Windows.

    The main purpose of is_empty() is to avoid evaluating the entire trash context when the caller is only interested in whether the trash is empty or not. This is especially useful for full trashes with many items.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Merge pull request #120 from joshuamegnauth54/feat-short-circuiting-is-empty (0120bbe)
    • Short circuiting check for empty trash (6d59fa9)

5.1.1 (2024-08-31)

This release accelerates removing large folders by removing an unnecessary recursive check.

Commit Statistics

  • 6 commits contributed to the release.
  • 22 days passed between releases.
  • 0 commits were understood as conventional.
  • 1 unique issue was worked on: #114

Commit Details

view details
  • #114
    • Merge pull request #114 from sungsphinx/fix-fedora-atomic (3d95173)
  • Uncategorized
    • Release trash v5.1.1 (a2920fa)
    • Adjust changelog prior to release (bc3e9c1)
    • Merge pull request #115 from NeumoNeumo/NeumoNeumo-patch-1 (df6f3b9)
    • Accelerate by removing recursive renaming (8f8f5c0)
    • Fix trashing files on Fedora Atomic variants (4d22ee4)

5.1.0 (2024-08-09)

New Features

  • check for operation abort

Commit Statistics

  • 3 commits contributed to the release.
  • 52 days passed between releases.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Release trash v5.1.0 (26e55ae)
    • Merge pull request #113 from anatawa12/master (ca6d598)
    • Check for operation abort (7919178)

5.0.0 (2024-06-18)

To support non-UTF8 encoding in paths, the name field changed from String to OsString in the TrashItem struct. As it's a return value, one won't see code break unless name is actually used.

Bug Fixes

  • Support non-Unicode paths There are several spots where paths are assumed to be Unicode. However, some (all?) operating systems support non-Unicode paths which causes trash-rs to panic if encountered. I switched some of those code to use OsStrings instead of Strings. Unfortunately, I had to add a new dependency, urlencoding, in order to properly handle decoding non-UTF8 byte slices.

    As of this commit, the test suite passes and code should be ready, but I will try to remove the url crate and use urlencoding in its place in the next commit.

Other

  • Use objc2-foundation

Bug Fixes (BREAKING)

  • Support non-UTF8 paths. Note that this changes the type of returned paths to OsString from String, hence the breaking change.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v5.0.0 (a754f4a)
    • Prepare changelog prior to release (02d1a8d)
    • Support non-UTF8 paths. (0971b8f)
    • Update Windows code to account for API change (e4b7119)
    • Simplify Linux/BSD only tests for non-UTF8 paths (559b57b)
    • Impl test for listing invalid UTF8 trash items (209db9d)
    • Cleanup non-Unicode support for readability (2f31116)
    • Remove url and replace with urlencoding (67fb256)
    • Support non-Unicode paths (15a15f8)
    • Merge pull request #107 from madsmtm/objc2 (46585ce)
    • Use objc2-foundation (58b99ef)

4.1.1 (2024-05-01)

This release updates the windows dependency (on Windows) to v0.56.

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
    • Release trash v4.1.1 (c14d904)
    • Update changelog prior to release. (47baa0e)
    • Merge pull request #106 from YizhePKU/bump-windows (02f1e6c)
    • Bump windows crate to 0.56.0 (c0e0f7a)

4.1.0 (2024-03-19)

New Features

  • add os_limited::trash_folders() for use on many unixes.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v4.1.0 (35b549f)
    • Add os_limited::trash_folders() for use on many unixes. (eb659cb)
    • Fix lint on Windows (daad5b7)
    • trash_folders() is invalid on Windows (32719fb)
    • List valid trash bin paths (3eba5c3)

4.0.0 (2024-03-12)

Bug Fixes (BREAKING)

  • Assure directory deletions on Windows don't put the entire contents into the trash. Instead, like on other platforms, on Windows it will now put the folder into the trash instead.

    Please note that this is not a breaking change in terms of API, but a potentially breaking change with older Windows versions. It's unknown if there are side-effects, as it's unknown why Windows had special behaviour previously.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v4.0.0 (b6acac9)
    • Assure directory deletions on Windows don't put the entire contents into the trash. (146ea03)
    • Fix lint by removing unused code (d03934f)
    • Attempt to fix second argument issue (1435c3d)
    • Make delete_all not recursive (03ae59d)

3.3.1 (2024-02-12)

Bug Fixes

  • Use AtomicI32 instead of I64 for compatibility with armel

Commit Statistics

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

Commit Details

view details
  • #99
    • Use AtomicI32 instead of I64 for compatibility with armel (98049f1)
  • Uncategorized

3.3.0 (2024-02-10)

New Features

  • improved error granularity Inform about operating-system specific errors more clearly, thus avoid degenerating error information.

Bug Fixes

  • Use AtomicI32 in tests for compatibility with armel platform

Commit Statistics

  • 6 commits contributed to the release over the course of 5 calendar days.
  • 25 days passed between releases.
  • 2 commits were understood as conventional.
  • 1 unique issue was worked on: #99

Commit Details

view details
  • #99
    • Use AtomicI32 in tests for compatibility with armel platform (920ff0c)
  • Uncategorized

3.2.1 (2024-01-15)

Bug Fixes

  • find best-possible trash dir, e.g. use /run/foo/.trash instead of/run/.trash when deleting /run/foo/bar.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v3.2.1 (d7abb5b)
    • Find best-possible trash dir, e.g. use /run/foo/.trash instead of/run/.trash when deleting /run/foo/bar. (bb868d6)
    • Refactor (8cb3f75)
    • Cargo fmt (0b42fc0)
    • Use unstable sort (18dadef)
    • Fixing method os (8ba855e)
    • Sort mount points first (b2e4cf2)
    • Refactor (da8ce63)
    • Fix clippy error (8f74b17)
    • Fixing sometimes choosing incorrect mount point if substring of each other (1e9df03)

3.2.0 (2024-01-10)

New Features

  • provide os_limited::metadata(). Metadata is currently limited to the amount of things, like bytes or entries, in the metadata item, but there is potential for adding more later.

Other

  • update ci job to use cargo-cross

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v3.2.0 (03aa7ac)
    • Provide os_limited::metadata(). (aa8e504)
    • Refactor (8dad3df)
    • Address review comments (63639c3)
    • Stub for get_mount_points on unsupported targets (fd89ea5)
    • Windows implementation (1a1f75e)
    • Add metadata function, implement for freedesktop (3bea3e2)
    • Merge pull request #92 from TD-Sky/unknown-to-fs-error (916d769)
    • Accepting generic type instead of &Path (17411be)
    • Be consistent with the style of the project (7ee2617)
    • Keep error converter function and rename it fs_error (a08118c)
    • More precise file system error (c51aa78)
    • Merge pull request #90 from fujiapple852/build-add-cargo-cross-ci (695af32)
    • Update ci job to use cargo-cross (be43b09)

3.1.2 (2023-10-18)

This release fixes compile errors on DragonFly, a fork of FreeBSD.

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
    • Release trash v3.1.2 (609f6b3)
    • Prepare changelog (c81d4dd)
    • Merge pull request #89 from jbeich/dragonfly (ad26100)
    • Add DragonFly support via FreeBSD codepath (ed1984b)

3.1.1 (2023-10-18)

Bug Fixes

  • compilation on FreeBSD should work now. #(86)

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v3.1.1 (aa6fd20)
    • Compilation on FreeBSD should work now. #(86) (1a5bc2d)
    • Update freedesktop.rs (aa7b7fd)
    • Restore statfs for FreeBSD & OpenBSD (1562113)
    • Update version in README so it matches the latest published one (50e8030)

3.1.0 (2023-10-08)

New Features

  • compatibility with OpenBSD and NetBSD
  • allow passing in items' ownership or reference

Other

  • describe how to retry restoring when encountering RestoreCollision error

Commit Statistics

  • 10 commits contributed to the release.
  • 88 days passed between releases.
  • 3 commits were understood as conventional.
  • 1 unique issue was worked on: #84

Commit Details

view details
  • #84
    • Compatibility with OpenBSD and NetBSD (24e0cb6)
  • Uncategorized
    • Release trash v3.1.0 (be17cd2)
    • Bump minor version to indicate a feature change (ddb9917)
    • Merge pull request #81 from TD-Sky/re-restore (c87a946)
    • Test edition bump (b77bd6d)
    • Bump version (75cc270)
    • Update dependencies (7d1e2bb)
    • One step closer (aee3dce)
    • Allow passing in items' ownership or reference (0789b23)
    • Describe how to retry restoring when encountering RestoreCollision error (554c273)

3.0.6 (2023-07-12)

Bug Fixes

  • don't recurse into symlink when trashing a directory on windows.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v3.0.6 (450edc1)
    • Merge branch 'fix-symlink-traversal' (43d44cb)
    • Don't recurse into symlink when trashing a directory on windows. (3f5e842)
    • Inform about reason for yanking v3.0.5 (112e99e)

3.0.5 (2023-07-06)

YANKED: It was discovered that symlinks aren't handled correctly, which can lead to removals of unrelated directory trees.

Bug Fixes

  • On windows, delete() will now delete recursively like on the other platforms. Note that the current implementation may consume a lot of memory as it will traverse the entire directory structure once while storing each path for later trashing.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v3.0.5 (4655a07)
    • Upgrade serial-test crate (0354d36)
    • On windows, delete() will now delete recursively like on the other platforms. (c1feece)
    • Refactor (41edcdf)
    • Removed self as parameter only used in recurssion. (a7619c1)
    • Reorganized code for cross-platform compatibility. (1c09e48)
    • Use recursive deletion on Windows by default. (46e0697)
    • Removed Windows only restriction for recursive deletion test. (d363dd8)
    • Merge branch 'Byron:master' into bug/windows_nonempty_folder (0f4b2c8)

3.0.4 (2023-07-01)

Bug Fixes

  • Don't use 'oldtime' feature of chrono by controlling exactly which features are enabled. That particular feature has a rustsec advisory up against it.

Commit Statistics

  • 3 commits contributed to the release.
  • 19 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #75

Commit Details

view details
  • #75
    • Don't use 'oldtime' feature of chrono by controlling exactly which features are enabled. (55b0d5c)
  • Uncategorized
    • Release trash v3.0.4 (a2343c2)
    • Don't use oldtime feature of chrono (fad81a4)

3.0.3 (2023-06-11)

Bug Fixes

  • disallow empty paths from being deleted. Previously passing "" for deletion wuold delete the current working directory as it would canonicalize any input path without validating the path is non-empty.

Commit Statistics

  • 3 commits contributed to the release over the course of 11 calendar days.
  • 25 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #73

Commit Details

view details
  • #73
    • Disallow empty paths from being deleted. (aa8cd7b)
  • Uncategorized
    • Release trash v3.0.3 (841bc13)
    • Fix issue #70.Added recursive removal on Windows. (05e0cf4)

3.0.2 (2023-05-17)

Bug Fixes

  • broken symlinks won't cause failure anymore on freedesktop platforms.

Commit Statistics

  • 4 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 trash v3.0.2 (e20fe6a)
    • Broken symlinks won't cause failure anymore on freedesktop platforms. (75daea6)
    • Make virtually_exists private (454a77e)
    • Operate broken symbolic links is safe now (9198013)

3.0.1 (2023-01-30)

Chore

  • bump windows crate to 0.44 Merge branch 'bump-windows-0.44'

Commit Statistics

  • 5 commits contributed to the release over the course of 61 calendar days.
  • 64 days passed between releases.
  • 1 commit was 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

3.0.0 (2022-11-27)

Chore (BREAKING)

  • Upgrade from windows v0.37 to v0.43.

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 trash v3.0.0 (1fb5ad6)
    • Upgrade from windows v0.37 to v0.43. (a024b44)
    • Fix Clippy failures on Linux (538dea0)
    • Upgrade windows crate from v0.37 to v0.43 (48cdc67)
    • Derive Clone for TrashItem (fcf6bb5)

2.1.5 (2022-07-05)

Bug Fixes

  • Make chrono a default-enabled optional feature. This allows to turn chrono support off without actually affecting the ability to trash and restore items. chrono still has issues to dubious local-time support which relies on a c-library function that can cause undefined behaviour as it accesses an environment variable in a non-threadsafe fashion.

Commit Statistics

  • 5 commits contributed to the release.
  • 40 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #39

Commit Details

view details
  • #39
    • Make chrono a default-enabled optional feature. (67244ba)
  • Uncategorized
    • Release trash v2.1.5 (266d780)
    • Improve CI stage names; fix feature configuration on windows (5591fda)
    • Silence clippy (d13be48)
    • Add rust-cache for faster builds (676a43f)

2.1.4 (2022-05-25)

Fixes

  • upgrade the windows crate to v0.37 to resolve a build issue and lay the foundation for more regular updates of the windows support.

Commit Statistics

  • 3 commits contributed to the release.
  • 8 days passed between releases.
  • 0 commits were understood as conventional.
  • 2 unique issues were worked on: #39, #51

Commit Details

view details

2.1.3 (2022-05-17)

Fixes

  • include windows crate only on windows for reduced CI build times from ~9s to ~4s.

Commit Statistics

  • 5 commits contributed to the release.
  • 3 days passed between releases.
  • 0 commits were understood as conventional.
  • 1 unique issue was worked on: #5050505050

Commit Details

view details

2.1.2 (2022-05-13)

Bug Fixes

  • avoid inconsistency when using relative paths in trashed file info. We use absolute paths now without trying to generate a relative path based on some top directory as the latter seems to be causing inconsistencies on some linux distros, as the restore path ends up being incorrect.

    Rather go with the absolute truth and don't fiddle with path transformations at all to make it work everywhere.

Commit Statistics

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

Commit Details

view details
  • #39
    • Avoid inconsistency when using relative paths in trashed file info. (367cf5f)
  • Uncategorized

2.1.1 (2022-05-10)

Bug Fixes

  • Properly reconstruct paths when restoring files on freedesktop if those were relative.

    Previously it would be unable to reconstruct original paths if the trash directory was on a mount point due to a 'split brain' of sorts.

    When trashing files it would create original path information based on them being relative to a mount point, but when restoring them it would reconstruct them to be relative to the trash top level directory.

    Now the reconstruction happens against to mount point itself which makes restoration match.

Commit Statistics

  • 7 commits contributed to the release over the course of 2 calendar days.
  • 3 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #47

Commit Details

view details
  • #47
    • Properly reconstruct paths when restoring files on freedesktop if those were relative (dcda6df)
    • Somewhat hard-code special case for fedora (90f0f9b)
    • Proper cleanup after potential assertion failure (1f3a600)
    • Remove unused trait (ac913d8)
  • Uncategorized
    • Release trash v2.1.1 (50ab31a)
    • Update changelog (98d32c8)
    • More robust removal of test files in failure case on os specific tests (3f6502d)

2.1.0 (2022-05-06)

Fixes

  • Leading directories are now created on linux to avoid errors when trashing nested directories.

Commit Statistics

  • 8 commits contributed to the release.
  • 103 days passed between releases.
  • 0 commits were understood as conventional.
  • 2 unique issues were worked on: #45, #47

Commit Details

view details
  • #45
    • Reproduce issue with lack of leading directories and fix it (d5b6faa)
  • #47
  • Uncategorized
    • Release trash v2.1.0 (b3a4547)
    • Prepare upcoming release (e3bbb6b)
    • Merge branch 'refactor-tests' (0e90cac)
    • Assure tests don't race (d9778ba)
    • Thanks clippy (220a216)
    • Move all intergration tests into corresponding location (e5dc62e)

2.0.4 (2022-01-23)

We detected the possibility of UB in the Linux and FreeBSD versions of get_mount_points() and reduced the likelihood of it happening in a multi-threaded environment by synchronizing access. You can read more about the state of a more permanent fix in the tracking issue.

All previous 2.0.* releases which contained this function were yanked from crates-io.

Fixes

  • Make internal get_mount_points() thread-safe to reduce chance of UB greatly. This may reduce performance of crates that are using trash from multiple threads somewhat, as a part of the operation is now synchronized.
  • Fix build on FreeBSD, handle UB similarly to the above.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Release trash v2.0.4 (c7edcb1)
    • Prepare changelog for next release (b65f574)
    • Add Mutex to linux version of get_mount_points(); document UB chance in lib.rs (c5c9c5e)
    • Use Mutex to prevent concurrent access to getmntinfo (5c8e0ce)
    • Merge pull request #43 from wezm/num-threads-freebsd (8f10c85)
    • Fix build on FreeBSD after refactor (f3d31e5)
    • Use num_threads() to avoid UB in FreeBSD version of get_mount_points() (3c153ae)
    • Refactor (92ab7b9)
    • Add BSD compatible implementation of get_mount_points (82d2132)
    • Run cargo-diet for a more minimal crates package (561f21d)

2.0.3 (2021-12-23)

Bug Fixes

  • let dependency specification in Cargo.toml match cfg directives in code This fixes issue 40.

Commit Statistics

  • 6 commits contributed to the release.
  • 1 commit was understood as conventional.
  • 2 unique issues were worked on: #37, #40

Commit Details

view details
  • #37
    • Fix some clippy warnings (3c566ef)
  • #40
    • Let dependency specification in Cargo.toml match cfg directives in code (cb5b617)
  • Uncategorized
    • Release trash v2.0.3 (6864e34)
    • Disable lint for platforms where it matters (b4add86)
    • Update changelog with cargo changelog (932cea4)
    • Add Rust CI status badge (b94fce2)

v2.0.2 (2021-08-18)

Changed

  • Fix failing to delete files on some freedesktop (eg Linux) systems when the home was not mounted at the root.
  • The list function now returns an empty list if there is no trash directory (it used to return an error).
  • Fix for test failing on Linux environments that don't have a desktop environment (more specifically don't have a tool like gio)

Commit Statistics

  • 10 commits contributed to the release over the course of 104 calendar days.
  • 108 days passed between releases.
  • 0 commits were understood as conventional.
  • 3 unique issues were worked on: #34, #35, #36

Commit Details

view details
  • #34
    • Fix for failing to delete files on Freedesktop systems (eg Linux) (bd8679c)
  • #35
    • Fix for test failing on some Linux environments (9da7b59)
  • #36
    • Avoid error from the list function (cb59c7e)
  • Uncategorized
    • Update version (600b59c)
    • Update windows-rs (2b64f38)
    • Some minor improvements (0e281bc)
    • Merge pull request #29 from ArturKovacs/update-win-rs (2a1eaf8)
    • Revert the build script (1b4a501)
    • Ran cargo fmt (42884ae)
    • Update windows-rs and fix for cross compilation (681d7b4)

v2.0.1 (2021-05-02)

Changed

  • Fix not being able to trash any item on some systems.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Update version number (6f11f8d)
    • Merge pull request #26 from ArturKovacs/fix-25 (13a36ce)
    • Update changelog (812b574)
    • Fix for error when trashing an item (a876d0f)

v2.0.0 (2021-04-20)

Changed

  • The "Linux" implementation was replaced by a custom Freedesktop implementation.

Added

  • list, purge_all, and restore_all to Windows and Freedesktop

Commit Statistics

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

Commit Details

view details

v1.3.0 (2021-01-24)

Commit Statistics

  • 18 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
    • Fix for clippy error (a728dce)
    • Increment version and update fmt (6d2270a)
    • Ran fmt and fix for warning (ff7cf3b)
    • Fix for path canonicalization (5dfe5dc)
    • Merge pull request #23 from cbr9/optimize--get-desktop-environment (c887b6b)
    • Optimized get_desktop_environment() (a0a7fbb)
    • Update readme (30427f0)
    • Oops that Path wasn't completely unused after all (ba850ee)
    • Fixed compile warning and ran rustfmt (c556d28)
    • Removed Cargo.lock from the gitignore. (cdde3a7)
    • Implement delete and delete_all for macOS (cb564ef)
    • Updated readme (7a298be)
    • Implement delete and delete_all for windows. (d9a25c8)
    • Add delete functions for Linux (fedeb83)
    • Update to the readme, incorporating some suggestions by Caleb Bassi (9bddccc)
    • Merge pull request #18 from cjbassi/rename-files (c49b496)
    • Rename readme and license files (5a9a5a6)
    • Adds a deprecated attribute to the is_implemented function. (386db96)

v1.1.0 (2020-08-12)

Commit Statistics

  • 2 commits contributed to the release.
  • 87 days passed between releases.
  • 0 commits were understood as conventional.
  • 1 unique issue was worked on: #17

Commit Details

view details
  • #17
    • Implement std::error::Error for trash::Error (8765acf)
  • Uncategorized
    • Increment minor version number (281bb93)

v1.0.1 (2020-05-16)

Refactor

  • port mac implementation to work with v2 Updates the existing Mac implementation to compile with v2 of the library. Does not add any new functionality other defining required methods.

    Tests fail for methods relating to list, purge_all, or restore_all, which are unimplemented.

Commit Statistics

  • 59 commits contributed to the release.
  • 218 days passed between releases.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update readme and increment the patch field in the version number. (217b473)
    • Merge pull request #15 from myfreeweb/bsd (5af79ab)
    • Build "linux" module on *BSD (any non-macOS unix) (9e38ff8)
    • Fix clippy warnings on linux. (0731a64)
    • Merge branch 'master' of https://github.com/ArturKovacs/trash (1e43dc1)
    • Add .vscode to gitignore (f63f7ce)
    • Fix for clippy warning. (80eba00)
    • Ran cargo fmt. (b753689)
    • Add tests for Windows and MacOS as well as the nightly toolchain. (29876c7)
    • Default rust workflow (GitHub Actions) (cf7d22f)
    • Merge branch 'master' into v2-dev (32de332)
    • Merge branch 'master' into v2-dev (b3ea819)
    • Remove Azure test (3e7db4f)
    • Add GitHub Actions test (0c8b1fa)
    • Fix wording in Readme (7025e10)
    • Update Readme to reflect the state of development. (a31a944)
    • Merge pull request #9 from NilsIrl/patch-1 (02bb739)
    • Fix typo (6c4d650)
    • Added test cases and extra documentation. The test cases cover empty input for purge_all and restore_all. (c275449)
    • Moved Linux and Windows specific features to a mod (0e2fc93)
    • Refined windows implementation. Added error kind RestoreTwins. (d105553)
    • Ran cargo fmt (743b2f3)
    • Merge branch 'v2-mac' into v2-dev (62a7218)
    • Merge branch 'v2-dev' of https://github.com/ArturKovacs/trash into v2-dev (90d3fa6)
    • Removed the two previously added errors. Replaced ZeroMountPointsFound and CantOpenMountPointsFile with panic! after coming across https://lukaskalbertodt.github.io/2019/11/14/thoughts-on-error-handling-in-rust.html and reading http://joeduffyblog.com/2016/02/07/the-error-model/ (fa03282)
    • No need for those parentheses (534677e)
    • Merge branch 'v2-dev' of https://github.com/ArturKovacs/trash into v2-dev (00fc235)
    • Add missing error kinds. ZeroMountPointsFound and CantOpenMountPointsFile were added. (6c79f7d)
    • Improve collision handling and add collision test. (6db249b)
    • Merge pull request #7 from ArturKovacs/v2-linux (b957f38)
    • Remove debug lines. (3ab9217)
    • Fix creating the home trash folder. (10364c6)
    • Create home trash if doesn't yet exist. Also added debug print line numbers. (e1b2aae)
    • Attempt to add RUST_BACKTRACE=1 again. (7bd6023)
    • Merge branch 'v2-dev' into v2-linux (303a274)
    • Added RUST_BACKTRACE=1 to test. (c1cb106)
    • Merge branch 'v2-dev' into v2-linux (ecf521f)
    • Add ability to trash items from an external drive. (16f0ee1)
    • Added a partialy implementaiton of remove_all. Can't remove from non-root devices or partitions. (1e03167)
    • Steps towards implementing remove_all. (20ba354)
    • Fix for list failing on Linux. This happened because list on Linux didn't handle paralell threads manipulating the trash correctly. (d6cb6ba)
    • Merge pull request #6 from ayazhafiz/refactor/mac2 (adf0ea4)
    • Remove the Cirrus CI config. (fd597fc)
    • Port mac implementation to work with v2 (576fad7)
    • Add MacOS and Linux as targets for CI tests. (e409a98)
    • Fix OS setup in Azure's config. (08db817)
    • Update Azure's target operating systems. (cfb25b6)
    • Add Azure Pipelines CI. (760dfa6)
    • Add Cirrus CI test. (e5c22c4)
    • Added implementation of purge_all for Linux. Also ran rustfmt and created a rustfmt config. (a90f9bf)
    • Now using the url crate for parsing the original location on Linux. (02ffe0b)
    • Add list implementation for linux. (5c73fea)
    • Add note about coming features in version 2 to the Readme. (dddbe25)
    • Improve the Error type and add create_remove_empty_folder test. (a940b66)
    • Changed std::mem::uninit and std::mem::zeroed to std::mem::MaybeUninit. Plus ran Rustfmt. (632a6fb)
    • Now purge_all doesn't show a dialog on windows. (07e3bc2)
    • Fix purge_all and restore_all reading invvalid memory and not executing the operation on the requested items. Add test cases for purge_all and restore_all. Test are now thread safe. (22d5181)
    • Implement purge_all and restore_all for Windows. (e06c825)
    • Run rust fmt. Implement list for Windows. (3f29636)

v1.0.0 (2019-10-11)

Refactor

  • port mac implementation to work with v2 Updates the existing Mac implementation to compile with v2 of the library. Does not add any new functionality other defining required methods.

    Tests fail for methods relating to list, purge_all, or restore_all, which are unimplemented.

New Features

  • implementation for macOS Moves files to trash on macOS by executing an AppleScript command to delete all requested paths.

Commit Statistics

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

Commit Details

view details