# Changelog ## Unreleased ## v0.9.1 (6th Oct 2024) - Added man page and shell completion generation to `wl-clipboard-rs-tools`. - Updated dependencies. ## v0.9.0 (19th June 2024) - **Breaking** Removed `utils::copy_data`. It forked into a `/usr/bin/env cat` for copying. All internal uses of the function have been changed to simply use `std::io::copy` instead. - Replaced `nix` with `rustix`, following `wayland-rs`. - Replaced the deprecated `structopt` with `clap` itself. - Updated dependencies. ## v0.8.1 (7th Mar 2024) - Updated dependencies, notably `nix`, which fixes building on LoongArch. ## v0.8.0 (3rd Oct 2023) - Added `copy::Options::omit_additional_text_mime_types` to disable wl-clipboard-rs offering several known text MIME types when a text MIME type is copied. - Updated `wayland-rs` to 0.31. - **Breaking** This changed the error types slightly. However, most uses of wl-clipboard-rs should be completely unaffected. - Updated other dependencies. ## v0.7.0 (23rd Sep 2022) - Fixed `paste::get_contents()` leaving behind zombie `cat` processes. - Changed debug logging from `info!` to `trace!`. - Bumped `nix` dependency to `0.24` to match that of the wayland-rs crates. - Replaced `derive_more` with `thiserror`. ## v0.6.0 (20th Mar 2022) - Fixed `wl-copy` and `wl-clip` hangs when followed by a pipe (e.g. `wl-copy hello | cat`). - Removed the deprecated `failure` dependency from both the library and the tools. The standard `Error` trait is now used. - Replaced underscores back with dashes in the tool binary names. - Renamed `wl-clipboard-tools` subcrate to `wl-clipboard-rs-tools`. ## v0.5.0 (13th Mar 2022) - Split binaries from the main crate `wl-clipboard-rs` into a new sub-crate `wl-clipboard-tools`. This removes a few dependencies that were only used in the binaries (like `structopt`). - This change also unintentionally replaced dashes with underscores in tool binary names. - Replaced `tree_magic` (which went unmaintained) with `tree_magic_mini`. - Changed the `fork` code which runs during the copy operation to exec `/usr/bin/env cat` instead of just `cat`. This was done to remove a non-async-signal-safe call in the child process. - Updated dependencies. ## v0.4.1 (1st Sep 2020) - Updated `nix` to 0.18 and `wayland-rs` to 0.27. ## v0.4.0 (13th Dec 2019) - **Breaking** Copying in non-foreground mode no longer forks (which was **unsafe** in multi-threaded programs). Instead, it spawns a background thread to serve copy requests. - Added `copy::prepare_copy()` and `copy::prepare_copy_multi()` (and respective functions in `copy::Options`) to accommodate workflows which depended on the forking behavior, such as `wl-copy`. See `wl-copy` for example usage. - **Breaking** Changed `copy::Source` and `copy::Seat` to own the contained data rather than borrow it. As a consequence, those types, as well as `copy::MimeSource` and `copy::Options`, have dropped their lifetime generic parameter. ## v0.3.1 (27th Nov 2019) - Reduced the `wl_seat` version requirement from 6 to 2. - Added `copy::copy_multi()` for offering multiple data sources under multiple different MIME types. ## v0.3.0 (4th Apr 2019) - **Breaking** Moved `ClipboardType` into `copy::` and `paste::`. - **Breaking** Renamed `utils::Error` into `utils::CopyDataError`. - Added `copy::ClipboardType::Both` for operating both clipboards at once. - Added `utils::is_primary_selection_supported()`. - [wl-copy]: added `--regular`, which, when set together with `--primary`, makes `wl-copy` operate on both clipboards at once. ## v0.2.0 (17th Feb 2019) - **Breaking** Changed `copy::Options::paste_once` to `serve_requests` which allows to specify the number of paste requests to serve. - Marked `copy::Seat` and `copy::Options` as `Copy`. - Updated `data-control`, it's now merged into `wlr-protocols` so no further changes without a version bump. - [wl-copy, wl-paste]: replaced `env_logger` with `stderrlog` which made the binaries much smaller. - Implemented `wl-clip`, a Wayland version of `xclip`. ## v0.1.0 (12th Feb 2019) - Initial release.