[INFO] fetching crate ringboard 0.12.2... [INFO] testing ringboard-0.12.2 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate ringboard 0.12.2 into /workspace/builds/worker-4-tc2/source [INFO] started tweaking crates.io crate ringboard 0.12.2 [INFO] finished tweaking crates.io crate ringboard 0.12.2 [INFO] tweaked toml for crates.io crate ringboard 0.12.2 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate ringboard 0.12.2 on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate ringboard 0.12.2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 832941f50d2b7ee9ea497b03bb7c9c2d4e7367217294cbfaf25412ae8729479d [INFO] running `Command { std: "docker" "start" "-a" "832941f50d2b7ee9ea497b03bb7c9c2d4e7367217294cbfaf25412ae8729479d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "832941f50d2b7ee9ea497b03bb7c9c2d4e7367217294cbfaf25412ae8729479d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "832941f50d2b7ee9ea497b03bb7c9c2d4e7367217294cbfaf25412ae8729479d", kill_on_drop: false }` [INFO] [stdout] 832941f50d2b7ee9ea497b03bb7c9c2d4e7367217294cbfaf25412ae8729479d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ae116ff7fd509ea15bd238a0969d56cb351d5b84ee9e3ac3d38ffc580cd45abc [INFO] running `Command { std: "docker" "start" "-a" "ae116ff7fd509ea15bd238a0969d56cb351d5b84ee9e3ac3d38ffc580cd45abc", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling rustix v1.0.8 [INFO] [stderr] Compiling bitflags v2.9.2 [INFO] [stderr] Compiling linux-raw-sys v0.9.4 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling error-stack v0.5.0 [INFO] [stderr] Compiling anstyle-query v1.1.4 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling clap_lex v0.7.5 [INFO] [stderr] Compiling anstream v0.6.20 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling smallvec v2.0.0-alpha.11 [INFO] [stderr] Compiling toml_writer v1.0.2 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling rand_xoshiro v0.7.0 [INFO] [stderr] Compiling base64-serde v0.8.0 [INFO] [stderr] Compiling ask-cli v0.3.0 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling rand_distr v0.5.1 [INFO] [stderr] Compiling clap-num v1.2.0 [INFO] [stderr] Compiling darling_core v0.21.2 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling thiserror-impl v2.0.15 [INFO] [stderr] Compiling clap_derive v4.5.45 [INFO] [stderr] Compiling thiserror v2.0.15 [INFO] [stderr] Compiling darling_macro v0.21.2 [INFO] [stderr] Compiling darling v0.21.2 [INFO] [stderr] Compiling bon-macros v3.7.1 [INFO] [stderr] Compiling terminal_size v0.4.3 [INFO] [stderr] Compiling clap_builder v4.5.44 [INFO] [stderr] Compiling clap v4.5.45 [INFO] [stderr] Compiling bon v3.7.1 [INFO] [stderr] Compiling fuc_engine v3.1.1 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling serde_spanned v1.0.0 [INFO] [stderr] Compiling toml_datetime v0.7.0 [INFO] [stderr] Compiling serde_json v1.0.143 [INFO] [stderr] Compiling quick-xml v0.38.2 [INFO] [stderr] Compiling toml v0.9.5 [INFO] [stderr] Compiling clipboard-history-core v0.12.2 [INFO] [stderr] Compiling clipboard-history-client-sdk v0.12.2 [INFO] [stderr] Compiling ringboard v0.12.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.76s [INFO] running `Command { std: "docker" "inspect" "ae116ff7fd509ea15bd238a0969d56cb351d5b84ee9e3ac3d38ffc580cd45abc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae116ff7fd509ea15bd238a0969d56cb351d5b84ee9e3ac3d38ffc580cd45abc", kill_on_drop: false }` [INFO] [stdout] ae116ff7fd509ea15bd238a0969d56cb351d5b84ee9e3ac3d38ffc580cd45abc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 626a501bf04e6da8fa62fba6c0904830dcabe9a0acd14f4a7a6ad97beb217b1f [INFO] running `Command { std: "docker" "start" "-a" "626a501bf04e6da8fa62fba6c0904830dcabe9a0acd14f4a7a6ad97beb217b1f", kill_on_drop: false }` [INFO] [stderr] Compiling dissimilar v1.0.10 [INFO] [stderr] Compiling expect-test v1.5.1 [INFO] [stderr] Compiling supercilex-tests v0.4.21 [INFO] [stderr] Compiling ringboard v0.12.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.92s [INFO] running `Command { std: "docker" "inspect" "626a501bf04e6da8fa62fba6c0904830dcabe9a0acd14f4a7a6ad97beb217b1f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "626a501bf04e6da8fa62fba6c0904830dcabe9a0acd14f4a7a6ad97beb217b1f", kill_on_drop: false }` [INFO] [stdout] 626a501bf04e6da8fa62fba6c0904830dcabe9a0acd14f4a7a6ad97beb217b1f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 97ba5af6291d7a6a0907dd2693ff766f73d39bc14737df1873162ee386efe140 [INFO] running `Command { std: "docker" "start" "-a" "97ba5af6291d7a6a0907dd2693ff766f73d39bc14737df1873162ee386efe140", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ringboard-59611bf028b6e904) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test cli_tests::verify_app ... ok [INFO] [stdout] test cli_tests::help_for_review ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- cli_tests::help_for_review stdout ---- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expect test failed [INFO] [stdout] --> /opt/rustwide/workdir/command-reference.golden [INFO] [stdout] [INFO] [stdout] You can update all `expect!` tests by running: [INFO] [stdout] [INFO] [stdout] env UPDATE_EXPECT=1 cargo test [INFO] [stdout] [INFO] [stdout] To update a single test, place the cursor on `expect` token and use `run` feature of rust-analyzer. [INFO] [stdout] [INFO] [stdout] Expect: [INFO] [stdout] ---- [INFO] [stdout] The Ringboard (clipboard history) CLI. [INFO] [stdout] [INFO] [stdout] Ringboard uses a client-server architecture, wherein the server has exclusive write access to the [INFO] [stdout] clipboard database and clients must ask the server to perform the modifications they need. This CLI [INFO] [stdout] is a non-interactive client and a debugging tool. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] get Get an entry from the database [INFO] [stdout] search Searches the Ringboard database for entries matching a query [INFO] [stdout] add Add an entry to the database [INFO] [stdout] favorite Favorite an entry [INFO] [stdout] unfavorite Unfavorite an entry [INFO] [stdout] move-to-front Move an entry to the front, making it the most recent entry [INFO] [stdout] swap Swap the positions of two entries [INFO] [stdout] remove Delete an entry from the database [INFO] [stdout] wipe Wipe the entire database [INFO] [stdout] import Migrate from other clipboard managers to Ringboard [INFO] [stdout] garbage-collect Run garbage collection on the database [INFO] [stdout] configure Modify app settings [INFO] [stdout] debug Debugging tools for developers [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] -V, --version [INFO] [stdout] Print version [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Get an entry from the database. [INFO] [stdout] [INFO] [stdout] The entry bytes will be outputted to stdout. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history get [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Searches the Ringboard database for entries matching a query [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history search [OPTIONS] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The query string to search for [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -r, --regex [INFO] [stdout] Interpret the query string as regex instead of a plain-text match [INFO] [stdout] [INFO] [stdout] -i, --ignore-case [INFO] [stdout] Ignore ASCII casing when searching [INFO] [stdout] [INFO] [stdout] --json [INFO] [stdout] Output JSON [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Add an entry to the database. [INFO] [stdout] [INFO] [stdout] Prints the ID of the newly added entry. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history add [OPTIONS] [DATA_FILE] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [DATA_FILE] [INFO] [stdout] A file containing the data to be added to the entry. [INFO] [stdout] [INFO] [stdout] A value of `-` may be supplied to indicate that data should be read from STDIN. [INFO] [stdout] [INFO] [stdout] [default: -] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -f, --favorite [INFO] [stdout] Whether to add the entry to the favorites ring [INFO] [stdout] [INFO] [stdout] -m, --mime-type [INFO] [stdout] The entry mime type [INFO] [stdout] [INFO] [stdout] -c, --copy [INFO] [stdout] Whether to overwrite the system clipboard with this entry [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Favorite an entry [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history favorite [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Unfavorite an entry [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history unfavorite [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Move an entry to the front, making it the most recent entry [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history move-to-front [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Swap the positions of two entries. [INFO] [stdout] [INFO] [stdout] One of the entries may be uninitialized. Thus, swap can be used to insert an entry into the ring by [INFO] [stdout] adding it and swapping the new entry into position. [INFO] [stdout] [INFO] [stdout] A set operation may also be implemented via swap by adding an entry, swapping it into place, and [INFO] [stdout] deleting the swapped out entry. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history swap [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The first entry ID [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] The second entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Delete an entry from the database [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history remove [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Wipe the entire database. [INFO] [stdout] [INFO] [stdout] WARNING: this operation is irreversible. ALL DATA WILL BE LOST. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history wipe [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Migrate from other clipboard managers to Ringboard [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history import [DATABASE] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The existing clipboard to import [INFO] [stdout] [INFO] [stdout] Possible values: [INFO] [stdout] - gnome-clipboard-history: [Gnome Clipboard [INFO] [stdout] History](https://extensions.gnome.org/extension/4839/clipboard-history/) [INFO] [stdout] - clipboard-indicator: [Clipboard [INFO] [stdout] Indicator](https://extensions.gnome.org/extension/779/clipboard-indicator/) [INFO] [stdout] - g-paste: [GPaste](https://github.com/Keruspe/GPaste) [INFO] [stdout] - json: A sequence of JSON objects in the same format as the dump [INFO] [stdout] command [INFO] [stdout] [INFO] [stdout] [DATABASE] [INFO] [stdout] The existing clipboard's database location. [INFO] [stdout] [INFO] [stdout] This will be automatically inferred by default. [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Run garbage collection on the database. [INFO] [stdout] [INFO] [stdout] Prints the amount of freed space. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history garbage-collect [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -m, --max-wasted-bytes [INFO] [stdout] The maximum amount of garbage (in bytes) that is tolerable. [INFO] [stdout] [INFO] [stdout] A value of zero will perform maximal compaction including entry deduplication. [INFO] [stdout] [INFO] [stdout] [default: 0] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Modify app settings [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history configure [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] x11 Edit the X11 watcher settings [INFO] [stdout] wayland Edit the Wayland watcher settings [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Edit the X11 watcher settings [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history configure x11 [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] --auto-paste [INFO] [stdout] Instead of simply placing selected items in the clipboard, attempt to automatically paste [INFO] [stdout] the selected item into the previously focused application [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] --fast-path-optimizations [INFO] [stdout] Disable this option to support blocking passwords from password managers that support the [INFO] [stdout] `x-kde-passwordManagerHint` mime type. [INFO] [stdout] [INFO] [stdout] ### Technical details [INFO] [stdout] [INFO] [stdout] In X11, it is possible to ask applications for their selection with a mime type before [INFO] [stdout] knowing if the selection is available in that format. Since the majority of clipboard [INFO] [stdout] entries are expected to be text based, Ringboard skips a round trip with the application [INFO] [stdout] by immediately asking for a plain text mime type selection. Only if this request fails [INFO] [stdout] will Ringboard ask the application for the supported mime types on its selection. [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Edit the Wayland watcher settings [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history configure wayland [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] --auto-paste [INFO] [stdout] Instead of simply placing selected items in the clipboard, attempt to automatically paste [INFO] [stdout] the selected item into the previously focused application [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Debugging tools for developers [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history debug [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] stats Print statistics about the Ringboard database [INFO] [stdout] dump Dump the database contents for analysis [INFO] [stdout] generate Generate a pseudo-random database for testing and performance tuning purposes [INFO] [stdout] fuzz Spam the server with random commands [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Print statistics about the Ringboard database [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history debug stats [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Dump the database contents for analysis. [INFO] [stdout] [INFO] [stdout] The JSON format is as follows: [INFO] [stdout] [ [INFO] [stdout] { [INFO] [stdout] "id": int64, [INFO] [stdout] "kind": "Human" | "Bytes", [INFO] [stdout] "data": (UTF-8 | base64) string [INFO] [stdout] }, [INFO] [stdout] ... [INFO] [stdout] ] [INFO] [stdout] [INFO] [stdout] Note that `$ ringboard import json` expects a JSON stream (wherein each object appears on its own [INFO] [stdout] line instead of being in a list). To import an export, you can convert the JSON array to a stream [INFO] [stdout] with `$ ... | jq -c .[]`. [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history debug dump [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Generate a pseudo-random database for testing and performance tuning purposes [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history debug generate [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -n, --entries [INFO] [stdout] The number of random entries to generate [INFO] [stdout] [INFO] [stdout] [default: 100_000] [INFO] [stdout] [INFO] [stdout] -m, --mean-size [INFO] [stdout] The mean entry size [INFO] [stdout] [INFO] [stdout] [default: 512] [INFO] [stdout] [INFO] [stdout] -c, --cv-size [INFO] [stdout] The coefficient of variation of the entry size [INFO] [stdout] [INFO] [stdout] [default: 10] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Spam the server with random commands [INFO] [stdout] [INFO] [stdout] Usage: clipboard-history debug fuzz [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -s, --seed [INFO] [stdout] The RNG seed [INFO] [stdout] [INFO] [stdout] [default: 42] [INFO] [stdout] [INFO] [stdout] -m, --mean-size [INFO] [stdout] The mean entry size [INFO] [stdout] [INFO] [stdout] [default: 512] [INFO] [stdout] [INFO] [stdout] -c, --cv-size [INFO] [stdout] The coefficient of variation of the entry size [INFO] [stdout] [INFO] [stdout] [default: 10] [INFO] [stdout] [INFO] [stdout] -v, --verbose [INFO] [stdout] Print extra debugging output [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] ---- [INFO] [stdout] [INFO] [stdout] Actual: [INFO] [stdout] ---- [INFO] [stdout] The Ringboard (clipboard history) CLI. [INFO] [stdout] [INFO] [stdout] Ringboard uses a client-server architecture, wherein the server has exclusive write access to the [INFO] [stdout] clipboard database and clients must ask the server to perform the modifications they need. This CLI [INFO] [stdout] is a non-interactive client and a debugging tool. [INFO] [stdout] [INFO] [stdout] Usage: ringboard [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] get Get an entry from the database [INFO] [stdout] search Searches the Ringboard database for entries matching a query [INFO] [stdout] add Add an entry to the database [INFO] [stdout] favorite Favorite an entry [INFO] [stdout] unfavorite Unfavorite an entry [INFO] [stdout] move-to-front Move an entry to the front, making it the most recent entry [INFO] [stdout] swap Swap the positions of two entries [INFO] [stdout] remove Delete an entry from the database [INFO] [stdout] wipe Wipe the entire database [INFO] [stdout] import Migrate from other clipboard managers to Ringboard [INFO] [stdout] garbage-collect Run garbage collection on the database [INFO] [stdout] configure Modify app settings [INFO] [stdout] debug Debugging tools for developers [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] -V, --version [INFO] [stdout] Print version [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Get an entry from the database. [INFO] [stdout] [INFO] [stdout] The entry bytes will be outputted to stdout. [INFO] [stdout] [INFO] [stdout] Usage: ringboard get [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Searches the Ringboard database for entries matching a query [INFO] [stdout] [INFO] [stdout] Usage: ringboard search [OPTIONS] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The query string to search for [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -r, --regex [INFO] [stdout] Interpret the query string as regex instead of a plain-text match [INFO] [stdout] [INFO] [stdout] -i, --ignore-case [INFO] [stdout] Ignore ASCII casing when searching [INFO] [stdout] [INFO] [stdout] --json [INFO] [stdout] Output JSON [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Add an entry to the database. [INFO] [stdout] [INFO] [stdout] Prints the ID of the newly added entry. [INFO] [stdout] [INFO] [stdout] Usage: ringboard add [OPTIONS] [DATA_FILE] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [DATA_FILE] [INFO] [stdout] A file containing the data to be added to the entry. [INFO] [stdout] [INFO] [stdout] A value of `-` may be supplied to indicate that data should be read from STDIN. [INFO] [stdout] [INFO] [stdout] [default: -] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -f, --favorite [INFO] [stdout] Whether to add the entry to the favorites ring [INFO] [stdout] [INFO] [stdout] -m, --mime-type [INFO] [stdout] The entry mime type [INFO] [stdout] [INFO] [stdout] -c, --copy [INFO] [stdout] Whether to overwrite the system clipboard with this entry [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Favorite an entry [INFO] [stdout] [INFO] [stdout] Usage: ringboard favorite [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Unfavorite an entry [INFO] [stdout] [INFO] [stdout] Usage: ringboard unfavorite [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Move an entry to the front, making it the most recent entry [INFO] [stdout] [INFO] [stdout] Usage: ringboard move-to-front [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Swap the positions of two entries. [INFO] [stdout] [INFO] [stdout] One of the entries may be uninitialized. Thus, swap can be used to insert an entry into the ring by [INFO] [stdout] adding it and swapping the new entry into position. [INFO] [stdout] [INFO] [stdout] A set operation may also be implemented via swap by adding an entry, swapping it into place, and [INFO] [stdout] deleting the swapped out entry. [INFO] [stdout] [INFO] [stdout] Usage: ringboard swap [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The first entry ID [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] The second entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Delete an entry from the database [INFO] [stdout] [INFO] [stdout] Usage: ringboard remove [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Wipe the entire database. [INFO] [stdout] [INFO] [stdout] WARNING: this operation is irreversible. ALL DATA WILL BE LOST. [INFO] [stdout] [INFO] [stdout] Usage: ringboard wipe [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Migrate from other clipboard managers to Ringboard [INFO] [stdout] [INFO] [stdout] Usage: ringboard import [DATABASE] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The existing clipboard to import [INFO] [stdout] [INFO] [stdout] Possible values: [INFO] [stdout] - gnome-clipboard-history: [Gnome Clipboard [INFO] [stdout] History](https://extensions.gnome.org/extension/4839/clipboard-history/) [INFO] [stdout] - clipboard-indicator: [Clipboard [INFO] [stdout] Indicator](https://extensions.gnome.org/extension/779/clipboard-indicator/) [INFO] [stdout] - g-paste: [GPaste](https://github.com/Keruspe/GPaste) [INFO] [stdout] - json: A sequence of JSON objects in the same format as the dump [INFO] [stdout] command [INFO] [stdout] [INFO] [stdout] [DATABASE] [INFO] [stdout] The existing clipboard's database location. [INFO] [stdout] [INFO] [stdout] This will be automatically inferred by default. [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Run garbage collection on the database. [INFO] [stdout] [INFO] [stdout] Prints the amount of freed space. [INFO] [stdout] [INFO] [stdout] Usage: ringboard garbage-collect [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -m, --max-wasted-bytes [INFO] [stdout] The maximum amount of garbage (in bytes) that is tolerable. [INFO] [stdout] [INFO] [stdout] A value of zero will perform maximal compaction including entry deduplication. [INFO] [stdout] [INFO] [stdout] [default: 0] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Modify app settings [INFO] [stdout] [INFO] [stdout] Usage: ringboard configure [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] x11 Edit the X11 watcher settings [INFO] [stdout] wayland Edit the Wayland watcher settings [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stderr] error: test failed, to rerun pass `--bin ringboard` [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Edit the X11 watcher settings [INFO] [stdout] [INFO] [stdout] Usage: ringboard configure x11 [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] --auto-paste [INFO] [stdout] Instead of simply placing selected items in the clipboard, attempt to automatically paste [INFO] [stdout] the selected item into the previously focused application [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] --fast-path-optimizations [INFO] [stdout] Disable this option to support blocking passwords from password managers that support the [INFO] [stdout] `x-kde-passwordManagerHint` mime type. [INFO] [stdout] [INFO] [stdout] ### Technical details [INFO] [stdout] [INFO] [stdout] In X11, it is possible to ask applications for their selection with a mime type before [INFO] [stdout] knowing if the selection is available in that format. Since the majority of clipboard [INFO] [stdout] entries are expected to be text based, Ringboard skips a round trip with the application [INFO] [stdout] by immediately asking for a plain text mime type selection. Only if this request fails [INFO] [stdout] will Ringboard ask the application for the supported mime types on its selection. [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Edit the Wayland watcher settings [INFO] [stdout] [INFO] [stdout] Usage: ringboard configure wayland [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] --auto-paste [INFO] [stdout] Instead of simply placing selected items in the clipboard, attempt to automatically paste [INFO] [stdout] the selected item into the previously focused application [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Debugging tools for developers [INFO] [stdout] [INFO] [stdout] Usage: ringboard debug [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] stats Print statistics about the Ringboard database [INFO] [stdout] dump Dump the database contents for analysis [INFO] [stdout] generate Generate a pseudo-random database for testing and performance tuning purposes [INFO] [stdout] fuzz Spam the server with random commands [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Print statistics about the Ringboard database [INFO] [stdout] [INFO] [stdout] Usage: ringboard debug stats [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Dump the database contents for analysis. [INFO] [stdout] [INFO] [stdout] The JSON format is as follows: [INFO] [stdout] [ [INFO] [stdout] { [INFO] [stdout] "id": int64, [INFO] [stdout] "kind": "Human" | "Bytes", [INFO] [stdout] "data": (UTF-8 | base64) string [INFO] [stdout] }, [INFO] [stdout] ... [INFO] [stdout] ] [INFO] [stdout] [INFO] [stdout] Note that `$ ringboard import json` expects a JSON stream (wherein each object appears on its own [INFO] [stdout] line instead of being in a list). To import an export, you can convert the JSON array to a stream [INFO] [stdout] with `$ ... | jq -c .[]`. [INFO] [stdout] [INFO] [stdout] Usage: ringboard debug dump [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Generate a pseudo-random database for testing and performance tuning purposes [INFO] [stdout] [INFO] [stdout] Usage: ringboard debug generate [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -n, --entries [INFO] [stdout] The number of random entries to generate [INFO] [stdout] [INFO] [stdout] [default: 100_000] [INFO] [stdout] [INFO] [stdout] -m, --mean-size [INFO] [stdout] The mean entry size [INFO] [stdout] [INFO] [stdout] [default: 512] [INFO] [stdout] [INFO] [stdout] -c, --cv-size [INFO] [stdout] The coefficient of variation of the entry size [INFO] [stdout] [INFO] [stdout] [default: 10] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Spam the server with random commands [INFO] [stdout] [INFO] [stdout] Usage: ringboard debug fuzz [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -s, --seed [INFO] [stdout] The RNG seed [INFO] [stdout] [INFO] [stdout] [default: 42] [INFO] [stdout] [INFO] [stdout] -m, --mean-size [INFO] [stdout] The mean entry size [INFO] [stdout] [INFO] [stdout] [default: 512] [INFO] [stdout] [INFO] [stdout] -c, --cv-size [INFO] [stdout] The coefficient of variation of the entry size [INFO] [stdout] [INFO] [stdout] [default: 10] [INFO] [stdout] [INFO] [stdout] -v, --verbose [INFO] [stdout] Print extra debugging output [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] ---- [INFO] [stdout] [INFO] [stdout] Diff: [INFO] [stdout] ---- [INFO] [stdout] The Ringboard (clipboard history) CLI. [INFO] [stdout] [INFO] [stdout] Ringboard uses a client-server architecture, wherein the server has exclusive write access to the [INFO] [stdout] clipboard database and clients must ask the server to perform the modifications they need. This CLI [INFO] [stdout] is a non-interactive client and a debugging tool. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] get Get an entry from the database [INFO] [stdout] search Searches the Ringboard database for entries matching a query [INFO] [stdout] add Add an entry to the database [INFO] [stdout] favorite Favorite an entry [INFO] [stdout] unfavorite Unfavorite an entry [INFO] [stdout] move-to-front Move an entry to the front, making it the most recent entry [INFO] [stdout] swap Swap the positions of two entries [INFO] [stdout] remove Delete an entry from the database [INFO] [stdout] wipe Wipe the entire database [INFO] [stdout] import Migrate from other clipboard managers to Ringboard [INFO] [stdout] garbage-collect Run garbage collection on the database [INFO] [stdout] configure Modify app settings [INFO] [stdout] debug Debugging tools for developers [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] -V, --version [INFO] [stdout] Print version [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Get an entry from the database. [INFO] [stdout] [INFO] [stdout] The entry bytes will be outputted to stdout. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history get [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Searches the Ringboard database for entries matching a query [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history search [OPTIONS] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The query string to search for [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -r, --regex [INFO] [stdout] Interpret the query string as regex instead of a plain-text match [INFO] [stdout] [INFO] [stdout] -i, --ignore-case [INFO] [stdout] Ignore ASCII casing when searching [INFO] [stdout] [INFO] [stdout] --json [INFO] [stdout] Output JSON [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Add an entry to the database. [INFO] [stdout] [INFO] [stdout] Prints the ID of the newly added entry. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history add [OPTIONS] [DATA_FILE] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [DATA_FILE] [INFO] [stdout] A file containing the data to be added to the entry. [INFO] [stdout] [INFO] [stdout] A value of `-` may be supplied to indicate that data should be read from STDIN. [INFO] [stdout] [INFO] [stdout] [default: -] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -f, --favorite [INFO] [stdout] Whether to add the entry to the favorites ring [INFO] [stdout] [INFO] [stdout] -m, --mime-type [INFO] [stdout] The entry mime type [INFO] [stdout] [INFO] [stdout] -c, --copy [INFO] [stdout] Whether to overwrite the system clipboard with this entry [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Favorite an entry [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history favorite [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Unfavorite an entry [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history unfavorite [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Move an entry to the front, making it the most recent entry [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history move-to-front [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Swap the positions of two entries. [INFO] [stdout] [INFO] [stdout] One of the entries may be uninitialized. Thus, swap can be used to insert an entry into the ring by [INFO] [stdout] adding it and swapping the new entry into position. [INFO] [stdout] [INFO] [stdout] A set operation may also be implemented via swap by adding an entry, swapping it into place, and [INFO] [stdout] deleting the swapped out entry. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history swap [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The first entry ID [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] The second entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Delete an entry from the database [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history remove [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The entry ID [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Wipe the entire database. [INFO] [stdout] [INFO] [stdout] WARNING: this operation is irreversible. ALL DATA WILL BE LOST. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history wipe [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Migrate from other clipboard managers to Ringboard [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history import [DATABASE] [INFO] [stdout] [INFO] [stdout] Arguments: [INFO] [stdout] [INFO] [stdout] The existing clipboard to import [INFO] [stdout] [INFO] [stdout] Possible values: [INFO] [stdout] - gnome-clipboard-history: [Gnome Clipboard [INFO] [stdout] History](https://extensions.gnome.org/extension/4839/clipboard-history/) [INFO] [stdout] - clipboard-indicator: [Clipboard [INFO] [stdout] Indicator](https://extensions.gnome.org/extension/779/clipboard-indicator/) [INFO] [stdout] - g-paste: [GPaste](https://github.com/Keruspe/GPaste) [INFO] [stdout] - json: A sequence of JSON objects in the same format as the dump [INFO] [stdout] command [INFO] [stdout] [INFO] [stdout] [DATABASE] [INFO] [stdout] The existing clipboard's database location. [INFO] [stdout] [INFO] [stdout] This will be automatically inferred by default. [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Run garbage collection on the database. [INFO] [stdout] [INFO] [stdout] Prints the amount of freed space. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history garbage-collect [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -m, --max-wasted-bytes [INFO] [stdout] The maximum amount of garbage (in bytes) that is tolerable. [INFO] [stdout] [INFO] [stdout] A value of zero will perform maximal compaction including entry deduplication. [INFO] [stdout] [INFO] [stdout] [default: 0] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Modify app settings [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history configure [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] x11 Edit the X11 watcher settings [INFO] [stdout] wayland Edit the Wayland watcher settings [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Edit the X11 watcher settings [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history configure x11 [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] --auto-paste [INFO] [stdout] Instead of simply placing selected items in the clipboard, attempt to automatically paste [INFO] [stdout] the selected item into the previously focused application [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] --fast-path-optimizations [INFO] [stdout] Disable this option to support blocking passwords from password managers that support the [INFO] [stdout] `x-kde-passwordManagerHint` mime type. [INFO] [stdout] [INFO] [stdout] ### Technical details [INFO] [stdout] [INFO] [stdout] In X11, it is possible to ask applications for their selection with a mime type before [INFO] [stdout] knowing if the selection is available in that format. Since the majority of clipboard [INFO] [stdout] entries are expected to be text based, Ringboard skips a round trip with the application [INFO] [stdout] by immediately asking for a plain text mime type selection. Only if this request fails [INFO] [stdout] will Ringboard ask the application for the supported mime types on its selection. [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Edit the Wayland watcher settings [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history configure wayland [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] --auto-paste [INFO] [stdout] Instead of simply placing selected items in the clipboard, attempt to automatically paste [INFO] [stdout] the selected item into the previously focused application [INFO] [stdout] [INFO] [stdout] [possible values: true, false] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Debugging tools for developers [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history debug [INFO] [stdout] [INFO] [stdout] Commands: [INFO] [stdout] stats Print statistics about the Ringboard database [INFO] [stdout] dump Dump the database contents for analysis [INFO] [stdout] generate Generate a pseudo-random database for testing and performance tuning purposes [INFO] [stdout] fuzz Spam the server with random commands [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Print statistics about the Ringboard database [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history debug stats [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Dump the database contents for analysis. [INFO] [stdout] [INFO] [stdout] The JSON format is as follows: [INFO] [stdout] [ [INFO] [stdout] { [INFO] [stdout] "id": int64, [INFO] [stdout] "kind": "Human" | "Bytes", [INFO] [stdout] "data": (UTF-8 | base64) string [INFO] [stdout] }, [INFO] [stdout] ... [INFO] [stdout] ] [INFO] [stdout] [INFO] [stdout] Note that `$ ringboard import json` expects a JSON stream (wherein each object appears on its own [INFO] [stdout] line instead of being in a list). To import an export, you can convert the JSON array to a stream [INFO] [stdout] with `$ ... | jq -c .[]`. [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history debug dump [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Generate a pseudo-random database for testing and performance tuning purposes [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history debug generate [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -n, --entries [INFO] [stdout] The number of random entries to generate [INFO] [stdout] [INFO] [stdout] [default: 100_000] [INFO] [stdout] [INFO] [stdout] -m, --mean-size [INFO] [stdout] The mean entry size [INFO] [stdout] [INFO] [stdout] [default: 512] [INFO] [stdout] [INFO] [stdout] -c, --cv-size [INFO] [stdout] The coefficient of variation of the entry size [INFO] [stdout] [INFO] [stdout] [default: 10] [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] --- [INFO] [stdout] [INFO] [stdout] Spam the server with random commands [INFO] [stdout] [INFO] [stdout] Usage: clipringboard-history debug fuzz [OPTIONS] [INFO] [stdout] [INFO] [stdout] Options: [INFO] [stdout] -s, --seed [INFO] [stdout] The RNG seed [INFO] [stdout] [INFO] [stdout] [default: 42] [INFO] [stdout] [INFO] [stdout] -m, --mean-size [INFO] [stdout] The mean entry size [INFO] [stdout] [INFO] [stdout] [default: 512] [INFO] [stdout] [INFO] [stdout] -c, --cv-size [INFO] [stdout] The coefficient of variation of the entry size [INFO] [stdout] [INFO] [stdout] [default: 10] [INFO] [stdout] [INFO] [stdout] -v, --verbose [INFO] [stdout] Print extra debugging output [INFO] [stdout] [INFO] [stdout] -h, --help [INFO] [stdout] Print help (use `-h` for a summary) [INFO] [stdout] [INFO] [stdout] ---- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] cli_tests::help_for_review [INFO] [stdout] [INFO] [stdout] test result: FAILED. 1 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "97ba5af6291d7a6a0907dd2693ff766f73d39bc14737df1873162ee386efe140", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "97ba5af6291d7a6a0907dd2693ff766f73d39bc14737df1873162ee386efe140", kill_on_drop: false }` [INFO] [stdout] 97ba5af6291d7a6a0907dd2693ff766f73d39bc14737df1873162ee386efe140