Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package watchexec for openSUSE:Factory checked in at 2023-02-17 16:44:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/watchexec (Old) and /work/SRC/openSUSE:Factory/.watchexec.new.22824 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "watchexec" Fri Feb 17 16:44:24 2023 rev:4 rq:1066238 version:1.21.1 Changes: -------- --- /work/SRC/openSUSE:Factory/watchexec/watchexec.changes 2023-01-12 22:45:31.533279993 +0100 +++ /work/SRC/openSUSE:Factory/.watchexec.new.22824/watchexec.changes 2023-02-17 16:44:32.918708425 +0100 @@ -1,0 +2,14 @@ +Thu Feb 16 08:27:44 UTC 2023 - david.a...@suse.com + +- Update to version 1.21.1: + * release: watchexec-cli v1.21.1 (#499) + * release: watchexec v2.1.1 (#498) + * Exit explicitly when we're PID 1 (#497) + * Reset process sigmask for Rust 1.66 (#494) + * Bump tokio from 1.23.1 to 1.24.2 (#491) + * Avoid looping in demo (#486) + * Add #449 to lib changelog (#481) + * Lock CI for msrv checks (#482) + * Update git-config requirement from 0.14.0 to 0.15.0 in /crates/ignore-files (#480) + +------------------------------------------------------------------- Old: ---- watchexec-1.21.0.tar.xz New: ---- watchexec-1.21.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ watchexec.spec ++++++ --- /var/tmp/diff_new_pack.kgquvY/_old 2023-02-17 16:44:33.886713877 +0100 +++ /var/tmp/diff_new_pack.kgquvY/_new 2023-02-17 16:44:33.890713900 +0100 @@ -17,7 +17,7 @@ Name: watchexec -Version: 1.21.0 +Version: 1.21.1 Release: 0 Summary: Watches a path and runs a command whenever it detects modifications. License: Apache-2.0 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.kgquvY/_old 2023-02-17 16:44:33.938714170 +0100 +++ /var/tmp/diff_new_pack.kgquvY/_new 2023-02-17 16:44:33.942714192 +0100 @@ -3,7 +3,7 @@ <param name="url">https://github.com/watchexec/watchexec.git</param> <param name="versionformat">@PARENT_TAG@</param> <param name="scm">git</param> - <param name="revision">v1.21.0</param> + <param name="revision">v1.21.1</param> <param name="match-tag">*</param> <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param> <param name="versionrewrite-replacement">\1</param> ++++++ vendor.tar.xz ++++++ /work/SRC/openSUSE:Factory/watchexec/vendor.tar.xz /work/SRC/openSUSE:Factory/.watchexec.new.22824/vendor.tar.xz differ: char 27, line 1 ++++++ watchexec-1.21.0.tar.xz -> watchexec-1.21.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/.github/workflows/tests.yml new/watchexec-1.21.1/.github/workflows/tests.yml --- old/watchexec-1.21.0/.github/workflows/tests.yml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/.github/workflows/tests.yml 2023-02-15 00:56:59.000000000 +0100 @@ -70,10 +70,13 @@ path: target/ key: ${{ runner.os }}-target-${{ matrix.toolchain }}-${{ hashFiles('**/Cargo.lock') }} + - if: matrix.toolchain != 'stable' + run: echo "flags=--locked" >> $GITHUB_ENV + - name: Run test suite - run: cargo test + run: cargo test ${{ env.flags }} - name: Check that CLI runs - run: cargo run -p watchexec-cli -- -1 echo + run: cargo run ${{ env.flags }} -p watchexec-cli -- -1 echo cross-checks: name: Checks only against select targets @@ -109,3 +112,13 @@ - run: cargo check --target x86_64-unknown-linux-musl - run: cross check --target x86_64-unknown-freebsd - run: cross check --target x86_64-unknown-netbsd + + # Dummy job to have a stable name for the "all tests pass" requirement + tests-pass: + name: Tests pass + needs: + - test + - cross-checks + runs-on: ubuntu-latest + steps: + - run: echo "Tests pass" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/CITATION.cff new/watchexec-1.21.1/CITATION.cff --- old/watchexec-1.21.0/CITATION.cff 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/CITATION.cff 2023-02-15 00:56:59.000000000 +0100 @@ -3,8 +3,8 @@ If you use this software, please cite it using these metadata. title: "Watchexec: a tool to react to filesystem changes, and a crate ecosystem to power it" -version: "1.21.0" -date-released: 2023-01-09 +version: "1.21.1" +date-released: 2023-02-14 repository-code: https://github.com/watchexec/watchexec license: Apache-2.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/Cargo.lock new/watchexec-1.21.1/Cargo.lock --- old/watchexec-1.21.0/Cargo.lock 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/Cargo.lock 2023-02-15 00:56:59.000000000 +0100 @@ -374,7 +374,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41aa24cc5e1d6b3fc49ad4cd540b522fedcbe88bc6f259ff16e20e7010b6f8c7" dependencies = [ - "nix 0.26.1", + "nix 0.26.2", "terminfo", "thiserror", "which", @@ -388,7 +388,7 @@ checksum = "026c3922235f9f7d78f21251a026f3acdeb7cce3deba107fe09a4bfa63d850a2" dependencies = [ "async-trait", - "nix 0.26.1", + "nix 0.26.2", "tokio", "winapi", ] @@ -1325,6 +1325,15 @@ ] [[package]] +name = "memoffset" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" +dependencies = [ + "autocfg", +] + +[[package]] name = "miette" version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1407,18 +1416,20 @@ "cc", "cfg-if 1.0.0", "libc", - "memoffset", + "memoffset 0.6.5", ] [[package]] name = "nix" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46a58d1d356c6597d08cde02c2f09d785b09e28711837b1ed667dc652c08a694" +checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" dependencies = [ "bitflags", "cfg-if 1.0.0", "libc", + "memoffset 0.7.1", + "pin-utils", "static_assertions", ] @@ -2263,9 +2274,9 @@ [[package]] name = "tokio" -version = "1.23.1" +version = "1.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38a54aca0c15d014013256222ba0ebed095673f89345dd79119d912eb561b7a8" +checksum = "597a12a59981d9e3c38d216785b0c37399f6e415e8d0712047620f189371b0bb" dependencies = [ "autocfg", "bytes", @@ -2636,7 +2647,7 @@ [[package]] name = "watchexec" -version = "2.1.0" +version = "2.1.1" dependencies = [ "async-priority-channel", "async-recursion 1.0.0", @@ -2646,6 +2657,7 @@ "futures", "ignore-files", "miette", + "nix 0.26.2", "normalize-path", "notify", "once_cell", @@ -2658,7 +2670,7 @@ [[package]] name = "watchexec-cli" -version = "1.21.0" +version = "1.21.1" dependencies = [ "clap", "console-subscriber", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/cli/Cargo.toml new/watchexec-1.21.1/crates/cli/Cargo.toml --- old/watchexec-1.21.0/crates/cli/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/cli/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -1,6 +1,6 @@ [package] name = "watchexec-cli" -version = "1.21.0" +version = "1.21.1" authors = ["Matt Green <mattgreenro...@gmail.com>", "Félix Saparelli <fe...@passcod.name>"] license = "Apache-2.0" @@ -40,7 +40,7 @@ path = "../project-origins" [dependencies.watchexec] -version = "2.1.0" +version = "2.1.1" path = "../lib" [dependencies.watchexec-filterer-globset] @@ -52,7 +52,7 @@ path = "../filterer/tagged" [dependencies.tokio] -version = "1.23.1" +version = "1.24.2" features = [ "fs", "io-std", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/cli/src/main.rs new/watchexec-1.21.1/crates/cli/src/main.rs --- old/watchexec-1.21.0/crates/cli/src/main.rs 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/cli/src/main.rs 2023-02-15 00:56:59.000000000 +0100 @@ -4,5 +4,11 @@ #[tokio::main] async fn main() -> miette::Result<()> { - watchexec_cli::run().await + watchexec_cli::run().await?; + + if std::process::id() == 1 { + std::process::exit(0); + } + + Ok(()) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/cli/watchexec.exe.manifest new/watchexec-1.21.1/crates/cli/watchexec.exe.manifest --- old/watchexec-1.21.0/crates/cli/watchexec.exe.manifest 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/cli/watchexec.exe.manifest 2023-02-15 00:56:59.000000000 +0100 @@ -3,7 +3,7 @@ <assemblyIdentity type="win32" name="Watchexec.Cli.watchexec" - version="1.21.0.0" + version="1.21.1.0" /> <trustInfo> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/filterer/globset/Cargo.toml new/watchexec-1.21.1/crates/filterer/globset/Cargo.toml --- old/watchexec-1.21.0/crates/filterer/globset/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/filterer/globset/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -24,7 +24,7 @@ path = "../../ignore-files" [dependencies.watchexec] -version = "2.1.0" +version = "2.1.1" path = "../../lib" [dependencies.watchexec-filterer-ignore] @@ -39,7 +39,7 @@ path = "../../project-origins" [dev-dependencies.tokio] -version = "1.23.1" +version = "1.24.2" features = [ "fs", "io-std", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/filterer/ignore/Cargo.toml new/watchexec-1.21.1/crates/filterer/ignore/Cargo.toml --- old/watchexec-1.21.0/crates/filterer/ignore/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/filterer/ignore/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -24,7 +24,7 @@ path = "../../ignore-files" [dependencies.watchexec] -version = "2.1.0" +version = "2.1.1" path = "../../lib" [dev-dependencies] @@ -35,7 +35,7 @@ path = "../../project-origins" [dev-dependencies.tokio] -version = "1.23.1" +version = "1.24.2" features = [ "fs", "io-std", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/filterer/tagged/Cargo.toml new/watchexec-1.21.1/crates/filterer/tagged/Cargo.toml --- old/watchexec-1.21.0/crates/filterer/tagged/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/filterer/tagged/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -31,13 +31,13 @@ path = "../../ignore-files" [dependencies.tokio] -version = "1.23.1" +version = "1.24.2" features = [ "fs", ] [dependencies.watchexec] -version = "2.1.0" +version = "2.1.1" path = "../../lib" [dependencies.watchexec-filterer-ignore] @@ -52,7 +52,7 @@ path = "../../project-origins" [dev-dependencies.tokio] -version = "1.23.1" +version = "1.24.2" features = [ "fs", "io-std", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/ignore-files/Cargo.toml new/watchexec-1.21.1/crates/ignore-files/Cargo.toml --- old/watchexec-1.21.0/crates/ignore-files/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/ignore-files/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -20,7 +20,7 @@ ignore = "0.4.18" miette = "5.3.0" thiserror = "1.0.31" -tokio = { version = "1.23.1", default-features = false, features = ["fs"] } +tokio = { version = "1.24.2", default-features = false, features = ["fs"] } tracing = "0.1.35" [dependencies.project-origins] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/lib/CHANGELOG.md new/watchexec-1.21.1/crates/lib/CHANGELOG.md --- old/watchexec-1.21.0/crates/lib/CHANGELOG.md 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/lib/CHANGELOG.md 2023-02-15 00:56:59.000000000 +0100 @@ -2,6 +2,8 @@ ## Next (YYYY-MM-DD) +## v2.1.1 (2023-02-14) + ## v2.1.0 (2023-01-08) - MSRV: bump to 1.61.0 @@ -10,6 +12,7 @@ - Internal: drop support code for Fuchsia. MIO already didn't support it, so it never compiled there. - Add `#[must_use]` annotations to a bunch of functions. - Add missing `Send` bound to `HandlerLock`. +- Add new keyboard event source; initially supports just detecting EOF on STDIN. ([#449](https://github.com/watchexec/watchexec/pull/449)) - Fix `summarise_events_to_env` on Windows to output paths with backslashes. ## v2.0.2 (2022-09-07) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/lib/Cargo.toml new/watchexec-1.21.1/crates/lib/Cargo.toml --- old/watchexec-1.21.0/crates/lib/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/lib/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -1,6 +1,6 @@ [package] name = "watchexec" -version = "2.1.0" +version = "2.1.1" authors = ["Matt Green <mattgreenro...@gmail.com>", "Félix Saparelli <fe...@passcod.name>"] license = "Apache-2.0" @@ -42,7 +42,7 @@ path = "../project-origins" [dependencies.tokio] -version = "1.23.1" +version = "1.24.2" features = [ "fs", "io-std", @@ -57,5 +57,9 @@ version = "0.1.26" features = ["log"] +[target.'cfg(unix)'.dependencies.nix] +version = "0.26.2" +features = ["signal"] + [dev-dependencies] tracing-subscriber = "0.3.6" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/lib/examples/demo.rs new/watchexec-1.21.1/crates/lib/examples/demo.rs --- old/watchexec-1.21.0/crates/lib/examples/demo.rs 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/lib/examples/demo.rs 2023-02-15 00:56:59.000000000 +0100 @@ -56,7 +56,7 @@ eprintln!("Switching to polling for funsies"); config.file_watcher(Watcher::Poll(Duration::from_millis(50))); w.reconfigure(config)?; - } else { + } else if (action.events.iter().flat_map(Event::paths).next().is_some()) { action.outcome(Outcome::if_running( Outcome::both(Outcome::Stop, Outcome::Start), Outcome::Start, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/lib/src/command/supervisor.rs new/watchexec-1.21.1/crates/lib/src/command/supervisor.rs --- old/watchexec-1.21.0/crates/lib/src/command/supervisor.rs 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/lib/src/command/supervisor.rs 2023-02-15 00:56:59.000000000 +0100 @@ -282,6 +282,26 @@ let mut spawnable = command.to_spawnable()?; spawnable.kill_on_drop(true); + // Required from Rust 1.66: + // https://github.com/rust-lang/rust/pull/101077 + // + // We do that before the pre-spawn so that hook can be used to set a different mask if wanted. + #[cfg(unix)] + { + use nix::sys::signal::{sigprocmask, SigSet, SigmaskHow, Signal}; + unsafe { + spawnable.pre_exec(|| { + let mut oldset = SigSet::empty(); + let mut newset = SigSet::all(); + newset.remove(Signal::SIGHUP); // leave SIGHUP alone so nohup works + debug!(unblocking=?newset, "resetting process sigmask"); + sigprocmask(SigmaskHow::SIG_UNBLOCK, Some(&newset), Some(&mut oldset))?; + debug!(?oldset, "sigmask reset"); + Ok(()) + }); + } + } + debug!("running pre-spawn handler"); Ok(PreSpawn::new( command.clone(), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/lib/src/lib.rs new/watchexec-1.21.1/crates/lib/src/lib.rs --- old/watchexec-1.21.0/crates/lib/src/lib.rs 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/lib/src/lib.rs 2023-02-15 00:56:59.000000000 +0100 @@ -96,7 +96,6 @@ #![doc(html_logo_url = "https://watchexec.github.io/logo:watchexec.svg")] #![warn(clippy::unwrap_used, missing_docs)] #![deny(rust_2018_idioms)] -#![forbid(unsafe_code)] // the toolkit to make your own pub mod action; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/lib/src/signal/process.rs new/watchexec-1.21.1/crates/lib/src/signal/process.rs --- old/watchexec-1.21.0/crates/lib/src/signal/process.rs 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/lib/src/signal/process.rs 2023-02-15 00:56:59.000000000 +0100 @@ -3,7 +3,7 @@ use std::str::FromStr; #[cfg(unix)] -use command_group::Signal as NixSignal; +use nix::sys::signal::Signal as NixSignal; use crate::error::SignalParseError; @@ -82,14 +82,12 @@ /// # Examples /// /// ``` - /// # // we don't have a direct nix dependency, so we fake it... rather horribly - /// # mod nix { pub mod sys { pub mod signal { - /// # #[cfg(unix)] pub use command_group::Signal; - /// # #[cfg(not(unix))] #[repr(i32)] pub enum Signal { SIGABRT = 6 } - /// # } } } + /// # #[cfg(unix)] + /// # { /// use watchexec::signal::process::SubSignal; /// use nix::sys::signal::Signal; /// assert_eq!(SubSignal::Custom(6), SubSignal::from(Signal::SIGABRT as i32)); + /// # } /// ``` /// /// On Unix the [`from_nix`][SubSignal::from_nix] method should be preferred if converting from @@ -98,8 +96,6 @@ /// ``` /// # #[cfg(unix)] /// # { - /// # // we don't have a direct nix dependency, so we fake it... rather horribly - /// # mod nix { pub mod sys { pub mod signal { pub use command_group::Signal; } } } /// use watchexec::signal::process::SubSignal; /// use nix::sys::signal::Signal; /// assert_eq!(SubSignal::Custom(6), SubSignal::from_nix(Signal::SIGABRT)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/watchexec-1.21.0/crates/project-origins/Cargo.toml new/watchexec-1.21.1/crates/project-origins/Cargo.toml --- old/watchexec-1.21.0/crates/project-origins/Cargo.toml 2023-01-09 02:09:21.000000000 +0100 +++ new/watchexec-1.21.1/crates/project-origins/Cargo.toml 2023-02-15 00:56:59.000000000 +0100 @@ -16,7 +16,7 @@ [dependencies] futures = "0.3.21" -tokio = { version = "1.23.1", features = ["fs"] } +tokio = { version = "1.24.2", features = ["fs"] } tokio-stream = { version = "0.1.9", features = ["fs"] } [dev-dependencies]