Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package dust for openSUSE:Factory checked in 
at 2025-04-02 21:05:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dust (Old)
 and      /work/SRC/openSUSE:Factory/.dust.new.1907 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "dust"

Wed Apr  2 21:05:57 2025 rev:10 rq:1266625 version:1.2.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/dust/dust.changes        2025-03-03 
16:26:15.964234253 +0100
+++ /work/SRC/openSUSE:Factory/.dust.new.1907/dust.changes      2025-04-02 
21:06:03.534076448 +0200
@@ -1,0 +2,16 @@
+Wed Apr 02 16:03:15 UTC 2025 - mvet...@suse.com
+
+- Update to version 1.2.0:
+  * release: increment version (#485)
+  * fix: status mesages go to stderr not stdout (#483)
+  * fix: all arguments now use '-' instead of '_' (#484)
+  * feat: Abort immedietly when ^C is received. (#478)
+  * deps: cargo update (#474)
+  * rewrite: Reduce indentation with guard clause
+  * perf: Canonicalize ignored absolute path only once
+  * refactor: Extract is_ignored_path function
+  * perf: Do not canonicalize non-absolute ignored path
+  * fix: Ignoring absolute path with `-X` option
+  * release: Increment version
+
+-------------------------------------------------------------------

Old:
----
  dust-1.1.2.obscpio

New:
----
  dust-1.2.0.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ dust.spec ++++++
--- /var/tmp/diff_new_pack.kmPld7/_old  2025-04-02 21:06:04.938135536 +0200
+++ /var/tmp/diff_new_pack.kmPld7/_new  2025-04-02 21:06:04.938135536 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           dust
-Version:        1.1.2
+Version:        1.2.0
 Release:        0
 Summary:        A more intuitive version of du
 Group:          Productivity/File utilities

++++++ _service ++++++
--- /var/tmp/diff_new_pack.kmPld7/_old  2025-04-02 21:06:04.974137052 +0200
+++ /var/tmp/diff_new_pack.kmPld7/_new  2025-04-02 21:06:04.978137220 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/bootandy/dust</param>
     <param name="scm">git</param>
     <param name="versionformat">@PARENT_TAG@</param>
-    <param name="revision">v1.1.2</param>
+    <param name="revision">v1.2.0</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="changesgenerate">enable</param>
     <param name="exclude">ci/*</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.kmPld7/_old  2025-04-02 21:06:04.998138061 +0200
+++ /var/tmp/diff_new_pack.kmPld7/_new  2025-04-02 21:06:05.002138230 +0200
@@ -3,6 +3,6 @@
                 <param name="url">git://github.com/bootandy/dust</param>
               <param 
name="changesrevision">c2546684c63bcd0ed99cfee22c5e855c7b825502</param></service><service
 name="tar_scm">
                 <param name="url">https://github.com/bootandy/dust</param>
-              <param 
name="changesrevision">b24f4c8096557529e63e6fb09fc6ecdb497d153b</param></service></servicedata>
+              <param 
name="changesrevision">646cdd976ded146779f4fc57c34c56fa850d728f</param></service></servicedata>
 (No newline at EOF)
 

++++++ dust-1.1.2.obscpio -> dust-1.2.0.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/Cargo.lock new/dust-1.2.0/Cargo.lock
--- old/dust-1.1.2/Cargo.lock   2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/Cargo.lock   2025-04-02 00:19:59.000000000 +0200
@@ -115,9 +115,9 @@
 
 [[package]]
 name = "bitflags"
-version = "2.8.0"
+version = "2.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
+checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd"
 
 [[package]]
 name = "bstr"
@@ -138,9 +138,9 @@
 
 [[package]]
 name = "cc"
-version = "1.2.12"
+version = "1.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "755717a7de9ec452bf7f3f1a3099085deabd7f2962b861dae91ecd7a365903d2"
+checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c"
 dependencies = [
  "shlex",
 ]
@@ -159,32 +159,32 @@
 
 [[package]]
 name = "chrono"
-version = "0.4.39"
+version = "0.4.40"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825"
+checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "js-sys",
  "num-traits",
  "wasm-bindgen",
- "windows-targets 0.52.6",
+ "windows-link",
 ]
 
 [[package]]
 name = "clap"
-version = "4.5.28"
+version = "4.5.31"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "3e77c3243bd94243c03672cb5154667347c457ca271254724f9f393aee1c05ff"
+checksum = "027bb0d98429ae334a8698531da7077bdf906419543a35a55c2cb1b66437d767"
 dependencies = [
  "clap_builder",
 ]
 
 [[package]]
 name = "clap_builder"
-version = "4.5.27"
+version = "4.5.31"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7"
+checksum = "5589e0cba072e0f3d23791efac0fd8627b49c829c196a492e88168e6a669d863"
 dependencies = [
  "anstream",
  "anstyle",
@@ -194,9 +194,9 @@
 
 [[package]]
 name = "clap_complete"
-version = "4.5.44"
+version = "4.5.46"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "375f9d8255adeeedd51053574fd8d4ba875ea5fa558e86617b07f09f1680c8b6"
+checksum = "f5c5508ea23c5366f77e53f5a0070e5a84e51687ec3ef9e0464c86dc8d13ce98"
 dependencies = [
  "clap",
 ]
@@ -309,7 +309,7 @@
 
 [[package]]
 name = "du-dust"
-version = "1.1.2"
+version = "1.2.0"
 dependencies = [
  "ansi_term",
  "assert_cmd",
@@ -338,9 +338,9 @@
 
 [[package]]
 name = "either"
-version = "1.13.0"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
+checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
 
 [[package]]
 name = "errno"
@@ -438,9 +438,9 @@
 
 [[package]]
 name = "itoa"
-version = "1.0.14"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
+checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
 
 [[package]]
 name = "js-sys"
@@ -454,9 +454,9 @@
 
 [[package]]
 name = "libc"
-version = "0.2.169"
+version = "0.2.170"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
+checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828"
 
 [[package]]
 name = "libredox"
@@ -464,7 +464,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.9.0",
  "libc",
 ]
 
@@ -476,15 +476,15 @@
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.15"
+version = "0.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab"
+checksum = "6db9c683daf087dc577b7506e9695b3d556a9f3849903fa28186283afd6809e9"
 
 [[package]]
 name = "log"
-version = "0.4.25"
+version = "0.4.26"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"
+checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e"
 
 [[package]]
 name = "lscolors"
@@ -508,7 +508,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.9.0",
  "cfg-if",
  "cfg_aliases",
  "libc",
@@ -544,9 +544,9 @@
 
 [[package]]
 name = "once_cell"
-version = "1.20.2"
+version = "1.20.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
+checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e"
 
 [[package]]
 name = "overload"
@@ -556,9 +556,9 @@
 
 [[package]]
 name = "portable-atomic"
-version = "1.10.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6"
+checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e"
 
 [[package]]
 name = "predicates"
@@ -589,18 +589,18 @@
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99"
+checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.38"
+version = "1.0.39"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"
+checksum = "c1f1914ce909e1658d9907913b4b91947430c7d9be598b15a1912935b8c04801"
 dependencies = [
  "proc-macro2",
 ]
@@ -687,43 +687,43 @@
 
 [[package]]
 name = "rustix"
-version = "0.38.44"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154"
+checksum = "dade4812df5c384711475be5fcd8c162555352945401aed22a35bffeab61f657"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.9.0",
  "errno",
  "libc",
- "linux-raw-sys 0.4.15",
+ "linux-raw-sys 0.9.2",
  "windows-sys 0.59.0",
 ]
 
 [[package]]
 name = "rustversion"
-version = "1.0.19"
+version = "1.0.20"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"
+checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2"
 
 [[package]]
 name = "ryu"
-version = "1.0.19"
+version = "1.0.20"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd"
+checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f"
 
 [[package]]
 name = "serde"
-version = "1.0.217"
+version = "1.0.219"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70"
+checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.217"
+version = "1.0.219"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"
+checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -732,9 +732,9 @@
 
 [[package]]
 name = "serde_json"
-version = "1.0.138"
+version = "1.0.140"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949"
+checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373"
 dependencies = [
  "itoa",
  "memchr",
@@ -762,9 +762,9 @@
 
 [[package]]
 name = "syn"
-version = "2.0.98"
+version = "2.0.100"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1"
+checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -788,15 +788,15 @@
 
 [[package]]
 name = "tempfile"
-version = "3.16.0"
+version = "3.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91"
+checksum = "2c317e0a526ee6120d8dabad239c8dadca62b24b6f168914bbbc8e2fb1f0e567"
 dependencies = [
  "cfg-if",
  "fastrand",
  "getrandom 0.3.1",
  "once_cell",
- "rustix 0.38.44",
+ "rustix 1.0.1",
  "windows-sys 0.59.0",
 ]
 
@@ -853,9 +853,9 @@
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.16"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034"
+checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"
 
 [[package]]
 name = "unicode-width"
@@ -992,6 +992,12 @@
 ]
 
 [[package]]
+name = "windows-link"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "6dccfd733ce2b1753b03b6d3c65edf020262ea35e20ccdf3e288043e6dd620e3"
+
+[[package]]
 name = "windows-sys"
 version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
@@ -1136,5 +1142,5 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.9.0",
 ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/Cargo.toml new/dust-1.2.0/Cargo.toml
--- old/dust-1.1.2/Cargo.toml   2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/Cargo.toml   2025-04-02 00:19:59.000000000 +0200
@@ -1,9 +1,9 @@
 [package]
 name = "du-dust"
 description = "A more intuitive version of du"
-version = "1.1.2"
+version = "1.2.0"
 authors = ["bootandy <boota...@gmail.com>", "nebkor <c...@ardent.nebcorp.com>"]
-edition = "2021"
+edition = "2024"
 readme = "README.md"
 
 documentation = "https://github.com/bootandy/dust";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/completions/_dust 
new/dust-1.2.0/completions/_dust
--- old/dust-1.1.2/completions/_dust    2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/completions/_dust    2025-04-02 00:19:59.000000000 +0200
@@ -28,12 +28,12 @@
 '--ignore-all-in-file=[Exclude any file or directory with a regex matching 
that listed in this file, the file entries will be added to the ignore regexs 
provided by --invert_filter]:FILE:_files' \
 '-z+[Minimum size file to include in output]:MIN_SIZE:_default' \
 '--min-size=[Minimum size file to include in output]:MIN_SIZE:_default' \
-'(-e --filter -t --file_types)*-v+[Exclude filepaths matching this regex. To 
ignore png files type\: -v "\\.png\$" ]:REGEX:_default' \
-'(-e --filter -t --file_types)*--invert-filter=[Exclude filepaths matching 
this regex. To ignore png files type\: -v "\\.png\$" ]:REGEX:_default' \
-'(-t --file_types)*-e+[Only include filepaths matching this regex. For png 
files type\: -e "\\.png\$" ]:REGEX:_default' \
-'(-t --file_types)*--filter=[Only include filepaths matching this regex. For 
png files type\: -e "\\.png\$" ]:REGEX:_default' \
+'(-e --filter -t --file-types)*-v+[Exclude filepaths matching this regex. To 
ignore png files type\: -v "\\.png\$" ]:REGEX:_default' \
+'(-e --filter -t --file-types)*--invert-filter=[Exclude filepaths matching 
this regex. To ignore png files type\: -v "\\.png\$" ]:REGEX:_default' \
+'(-t --file-types)*-e+[Only include filepaths matching this regex. For png 
files type\: -e "\\.png\$" ]:REGEX:_default' \
+'(-t --file-types)*--filter=[Only include filepaths matching this regex. For 
png files type\: -e "\\.png\$" ]:REGEX:_default' \
 '-w+[Specify width of output overriding the auto detection of terminal 
width]:WIDTH:_default' \
-'--terminal_width=[Specify width of output overriding the auto detection of 
terminal width]:WIDTH:_default' \
+'--terminal-width=[Specify width of output overriding the auto detection of 
terminal width]:WIDTH:_default' \
 '-o+[Changes output display size. si will print sizes in powers of 1000. b k m 
g t kb mb gb tb will print the whole tree in that size.]:FORMAT:(si b k m g t 
kb mb gb tb)' \
 '--output-format=[Changes output display size. si will print sizes in powers 
of 1000. b k m g t kb mb gb tb will print the whole tree in that 
size.]:FORMAT:(si b k m g t kb mb gb tb)' \
 '-S+[Specify memory to use as stack size - use if you see\: '\''fatal runtime 
error\: stack overflow'\'' (default low memory=1048576, high 
memory=1073741824)]:STACK_SIZE:_default' \
@@ -72,14 +72,14 @@
 '-f[Directory '\''size'\'' is number of child files instead of disk size]' \
 '--filecount[Directory '\''size'\'' is number of child files instead of disk 
size]' \
 '-i[Do not display hidden files]' \
-'--ignore_hidden[Do not display hidden files]' \
+'--ignore-hidden[Do not display hidden files]' \
 '(-d --depth -D --only-dir)-t[show only these file types]' \
-'(-d --depth -D --only-dir)--file_types[show only these file types]' \
+'(-d --depth -D --only-dir)--file-types[show only these file types]' \
 '-P[Disable the progress indication.]' \
 '--no-progress[Disable the progress indication.]' \
 '--print-errors[Print path with errors.]' \
-'(-F --only-file -t --file_types)-D[Only directories will be displayed.]' \
-'(-F --only-file -t --file_types)--only-dir[Only directories will be 
displayed.]' \
+'(-F --only-file -t --file-types)-D[Only directories will be displayed.]' \
+'(-F --only-file -t --file-types)--only-dir[Only directories will be 
displayed.]' \
 '(-D --only-dir)-F[Only files will be displayed. (Finds your largest files)]' \
 '(-D --only-dir)--only-file[Only files will be displayed. (Finds your largest 
files)]' \
 '-j[Output the directory tree as json to the current directory]' \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/completions/_dust.ps1 
new/dust-1.2.0/completions/_dust.ps1
--- old/dust-1.1.2/completions/_dust.ps1        2025-02-27 23:01:19.000000000 
+0100
+++ new/dust-1.2.0/completions/_dust.ps1        2025-04-02 00:19:59.000000000 
+0200
@@ -39,7 +39,7 @@
             [CompletionResult]::new('-e', '-e', 
[CompletionResultType]::ParameterName, 'Only include filepaths matching this 
regex. For png files type: -e "\.png$" ')
             [CompletionResult]::new('--filter', '--filter', 
[CompletionResultType]::ParameterName, 'Only include filepaths matching this 
regex. For png files type: -e "\.png$" ')
             [CompletionResult]::new('-w', '-w', 
[CompletionResultType]::ParameterName, 'Specify width of output overriding the 
auto detection of terminal width')
-            [CompletionResult]::new('--terminal_width', '--terminal_width', 
[CompletionResultType]::ParameterName, 'Specify width of output overriding the 
auto detection of terminal width')
+            [CompletionResult]::new('--terminal-width', '--terminal-width', 
[CompletionResultType]::ParameterName, 'Specify width of output overriding the 
auto detection of terminal width')
             [CompletionResult]::new('-o', '-o', 
[CompletionResultType]::ParameterName, 'Changes output display size. si will 
print sizes in powers of 1000. b k m g t kb mb gb tb will print the whole tree 
in that size.')
             [CompletionResult]::new('--output-format', '--output-format', 
[CompletionResultType]::ParameterName, 'Changes output display size. si will 
print sizes in powers of 1000. b k m g t kb mb gb tb will print the whole tree 
in that size.')
             [CompletionResult]::new('-S', '-S ', 
[CompletionResultType]::ParameterName, 'Specify memory to use as stack size - 
use if you see: ''fatal runtime error: stack overflow'' (default low 
memory=1048576, high memory=1073741824)')
@@ -78,9 +78,9 @@
             [CompletionResult]::new('-f', '-f', 
[CompletionResultType]::ParameterName, 'Directory ''size'' is number of child 
files instead of disk size')
             [CompletionResult]::new('--filecount', '--filecount', 
[CompletionResultType]::ParameterName, 'Directory ''size'' is number of child 
files instead of disk size')
             [CompletionResult]::new('-i', '-i', 
[CompletionResultType]::ParameterName, 'Do not display hidden files')
-            [CompletionResult]::new('--ignore_hidden', '--ignore_hidden', 
[CompletionResultType]::ParameterName, 'Do not display hidden files')
+            [CompletionResult]::new('--ignore-hidden', '--ignore-hidden', 
[CompletionResultType]::ParameterName, 'Do not display hidden files')
             [CompletionResult]::new('-t', '-t', 
[CompletionResultType]::ParameterName, 'show only these file types')
-            [CompletionResult]::new('--file_types', '--file_types', 
[CompletionResultType]::ParameterName, 'show only these file types')
+            [CompletionResult]::new('--file-types', '--file-types', 
[CompletionResultType]::ParameterName, 'show only these file types')
             [CompletionResult]::new('-P', '-P ', 
[CompletionResultType]::ParameterName, 'Disable the progress indication.')
             [CompletionResult]::new('--no-progress', '--no-progress', 
[CompletionResultType]::ParameterName, 'Disable the progress indication.')
             [CompletionResult]::new('--print-errors', '--print-errors', 
[CompletionResultType]::ParameterName, 'Print path with errors.')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/completions/dust.bash 
new/dust-1.2.0/completions/dust.bash
--- old/dust-1.1.2/completions/dust.bash        2025-02-27 23:01:19.000000000 
+0100
+++ new/dust-1.2.0/completions/dust.bash        2025-04-02 00:19:59.000000000 
+0200
@@ -19,7 +19,7 @@
 
     case "${cmd}" in
         dust)
-            opts="-d -T -n -p -X -I -L -x -s -r -c -C -b -B -z -R -f -i -v -e 
-t -w -P -D -F -o -S -j -M -A -y -m -h -V --depth --threads --config 
--number-of-lines --full-paths --ignore-directory --ignore-all-in-file 
--dereference-links --limit-filesystem --apparent-size --reverse --no-colors 
--force-colors --no-percent-bars --bars-on-right --min-size --screen-reader 
--skip-total --filecount --ignore_hidden --invert-filter --filter --file_types 
--terminal_width --no-progress --print-errors --only-dir --only-file 
--output-format --stack-size --output-json --mtime --atime --ctime 
--files0-from --collapse --filetime --help --version [PATH]..."
+            opts="-d -T -n -p -X -I -L -x -s -r -c -C -b -B -z -R -f -i -v -e 
-t -w -P -D -F -o -S -j -M -A -y -m -h -V --depth --threads --config 
--number-of-lines --full-paths --ignore-directory --ignore-all-in-file 
--dereference-links --limit-filesystem --apparent-size --reverse --no-colors 
--force-colors --no-percent-bars --bars-on-right --min-size --screen-reader 
--skip-total --filecount --ignore-hidden --invert-filter --filter --file-types 
--terminal-width --no-progress --print-errors --only-dir --only-file 
--output-format --stack-size --output-json --mtime --atime --ctime 
--files0-from --collapse --filetime --help --version [PATH]..."
             if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                 return 0
@@ -126,7 +126,7 @@
                     COMPREPLY=($(compgen -f "${cur}"))
                     return 0
                     ;;
-                --terminal_width)
+                --terminal-width)
                     COMPREPLY=($(compgen -f "${cur}"))
                     return 0
                     ;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/completions/dust.elv 
new/dust-1.2.0/completions/dust.elv
--- old/dust-1.1.2/completions/dust.elv 2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/completions/dust.elv 2025-04-02 00:19:59.000000000 +0200
@@ -36,7 +36,7 @@
             cand -e 'Only include filepaths matching this regex. For png files 
type: -e "\.png$" '
             cand --filter 'Only include filepaths matching this regex. For png 
files type: -e "\.png$" '
             cand -w 'Specify width of output overriding the auto detection of 
terminal width'
-            cand --terminal_width 'Specify width of output overriding the auto 
detection of terminal width'
+            cand --terminal-width 'Specify width of output overriding the auto 
detection of terminal width'
             cand -o 'Changes output display size. si will print sizes in 
powers of 1000. b k m g t kb mb gb tb will print the whole tree in that size.'
             cand --output-format 'Changes output display size. si will print 
sizes in powers of 1000. b k m g t kb mb gb tb will print the whole tree in 
that size.'
             cand -S 'Specify memory to use as stack size - use if you see: 
''fatal runtime error: stack overflow'' (default low memory=1048576, high 
memory=1073741824)'
@@ -75,9 +75,9 @@
             cand -f 'Directory ''size'' is number of child files instead of 
disk size'
             cand --filecount 'Directory ''size'' is number of child files 
instead of disk size'
             cand -i 'Do not display hidden files'
-            cand --ignore_hidden 'Do not display hidden files'
+            cand --ignore-hidden 'Do not display hidden files'
             cand -t 'show only these file types'
-            cand --file_types 'show only these file types'
+            cand --file-types 'show only these file types'
             cand -P 'Disable the progress indication.'
             cand --no-progress 'Disable the progress indication.'
             cand --print-errors 'Print path with errors.'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/completions/dust.fish 
new/dust-1.2.0/completions/dust.fish
--- old/dust-1.1.2/completions/dust.fish        2025-02-27 23:01:19.000000000 
+0100
+++ new/dust-1.2.0/completions/dust.fish        2025-04-02 00:19:59.000000000 
+0200
@@ -7,7 +7,7 @@
 complete -c dust -s z -l min-size -d 'Minimum size file to include in output' 
-r
 complete -c dust -s v -l invert-filter -d 'Exclude filepaths matching this 
regex. To ignore png files type: -v "\\.png$" ' -r
 complete -c dust -s e -l filter -d 'Only include filepaths matching this 
regex. For png files type: -e "\\.png$" ' -r
-complete -c dust -s w -l terminal_width -d 'Specify width of output overriding 
the auto detection of terminal width' -r
+complete -c dust -s w -l terminal-width -d 'Specify width of output overriding 
the auto detection of terminal width' -r
 complete -c dust -s o -l output-format -d 'Changes output display size. si 
will print sizes in powers of 1000. b k m g t kb mb gb tb will print the whole 
tree in that size.' -r -f -a "si\t''
 b\t''
 k\t''
@@ -39,8 +39,8 @@
 complete -c dust -s R -l screen-reader -d 'For screen readers. Removes bars. 
Adds new column: depth level (May want to use -p too for full path)'
 complete -c dust -l skip-total -d 'No total row will be displayed'
 complete -c dust -s f -l filecount -d 'Directory \'size\' is number of child 
files instead of disk size'
-complete -c dust -s i -l ignore_hidden -d 'Do not display hidden files'
-complete -c dust -s t -l file_types -d 'show only these file types'
+complete -c dust -s i -l ignore-hidden -d 'Do not display hidden files'
+complete -c dust -s t -l file-types -d 'show only these file types'
 complete -c dust -s P -l no-progress -d 'Disable the progress indication.'
 complete -c dust -l print-errors -d 'Print path with errors.'
 complete -c dust -s D -l only-dir -d 'Only directories will be displayed.'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/man-page/dust.1 
new/dust-1.2.0/man-page/dust.1
--- old/dust-1.1.2/man-page/dust.1      2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/man-page/dust.1      2025-04-02 00:19:59.000000000 +0200
@@ -1,10 +1,10 @@
 .ie \n(.g .ds Aq \(aq
 .el .ds Aq '
-.TH Dust 1  "Dust 1.1.2" 
+.TH Dust 1  "Dust 1.2.0" 
 .SH NAME
 Dust \- Like du but more intuitive
 .SH SYNOPSIS
-\fBdust\fR [\fB\-d\fR|\fB\-\-depth\fR] [\fB\-T\fR|\fB\-\-threads\fR] 
[\fB\-\-config\fR] [\fB\-n\fR|\fB\-\-number\-of\-lines\fR] 
[\fB\-p\fR|\fB\-\-full\-paths\fR] [\fB\-X\fR|\fB\-\-ignore\-directory\fR] 
[\fB\-I\fR|\fB\-\-ignore\-all\-in\-file\fR] 
[\fB\-L\fR|\fB\-\-dereference\-links\fR] 
[\fB\-x\fR|\fB\-\-limit\-filesystem\fR] [\fB\-s\fR|\fB\-\-apparent\-size\fR] 
[\fB\-r\fR|\fB\-\-reverse\fR] [\fB\-c\fR|\fB\-\-no\-colors\fR] 
[\fB\-C\fR|\fB\-\-force\-colors\fR] [\fB\-b\fR|\fB\-\-no\-percent\-bars\fR] 
[\fB\-B\fR|\fB\-\-bars\-on\-right\fR] [\fB\-z\fR|\fB\-\-min\-size\fR] 
[\fB\-R\fR|\fB\-\-screen\-reader\fR] [\fB\-\-skip\-total\fR] 
[\fB\-f\fR|\fB\-\-filecount\fR] [\fB\-i\fR|\fB\-\-ignore_hidden\fR] 
[\fB\-v\fR|\fB\-\-invert\-filter\fR] [\fB\-e\fR|\fB\-\-filter\fR] 
[\fB\-t\fR|\fB\-\-file_types\fR] [\fB\-w\fR|\fB\-\-terminal_width\fR] 
[\fB\-P\fR|\fB\-\-no\-progress\fR] [\fB\-\-print\-errors\fR] 
[\fB\-D\fR|\fB\-\-only\-dir\fR] [\fB\-F\fR|\fB\-\-only\-file\fR] 
[\fB\-o\fR|\fB\-\-output\-format\
 fR] [\fB\-S\fR|\fB\-\-stack\-size\fR] [\fB\-j\fR|\fB\-\-output\-json\fR] 
[\fB\-M\fR|\fB\-\-mtime\fR] [\fB\-A\fR|\fB\-\-atime\fR] 
[\fB\-y\fR|\fB\-\-ctime\fR] [\fB\-\-files0\-from\fR] [\fB\-\-collapse\fR] 
[\fB\-m\fR|\fB\-\-filetime\fR] [\fB\-h\fR|\fB\-\-help\fR] 
[\fB\-V\fR|\fB\-\-version\fR] [\fIPATH\fR] 
+\fBdust\fR [\fB\-d\fR|\fB\-\-depth\fR] [\fB\-T\fR|\fB\-\-threads\fR] 
[\fB\-\-config\fR] [\fB\-n\fR|\fB\-\-number\-of\-lines\fR] 
[\fB\-p\fR|\fB\-\-full\-paths\fR] [\fB\-X\fR|\fB\-\-ignore\-directory\fR] 
[\fB\-I\fR|\fB\-\-ignore\-all\-in\-file\fR] 
[\fB\-L\fR|\fB\-\-dereference\-links\fR] 
[\fB\-x\fR|\fB\-\-limit\-filesystem\fR] [\fB\-s\fR|\fB\-\-apparent\-size\fR] 
[\fB\-r\fR|\fB\-\-reverse\fR] [\fB\-c\fR|\fB\-\-no\-colors\fR] 
[\fB\-C\fR|\fB\-\-force\-colors\fR] [\fB\-b\fR|\fB\-\-no\-percent\-bars\fR] 
[\fB\-B\fR|\fB\-\-bars\-on\-right\fR] [\fB\-z\fR|\fB\-\-min\-size\fR] 
[\fB\-R\fR|\fB\-\-screen\-reader\fR] [\fB\-\-skip\-total\fR] 
[\fB\-f\fR|\fB\-\-filecount\fR] [\fB\-i\fR|\fB\-\-ignore\-hidden\fR] 
[\fB\-v\fR|\fB\-\-invert\-filter\fR] [\fB\-e\fR|\fB\-\-filter\fR] 
[\fB\-t\fR|\fB\-\-file\-types\fR] [\fB\-w\fR|\fB\-\-terminal\-width\fR] 
[\fB\-P\fR|\fB\-\-no\-progress\fR] [\fB\-\-print\-errors\fR] 
[\fB\-D\fR|\fB\-\-only\-dir\fR] [\fB\-F\fR|\fB\-\-only\-file\fR] 
[\fB\-o\fR|\fB\-\-output\-form
 at\fR] [\fB\-S\fR|\fB\-\-stack\-size\fR] [\fB\-j\fR|\fB\-\-output\-json\fR] 
[\fB\-M\fR|\fB\-\-mtime\fR] [\fB\-A\fR|\fB\-\-atime\fR] 
[\fB\-y\fR|\fB\-\-ctime\fR] [\fB\-\-files0\-from\fR] [\fB\-\-collapse\fR] 
[\fB\-m\fR|\fB\-\-filetime\fR] [\fB\-h\fR|\fB\-\-help\fR] 
[\fB\-V\fR|\fB\-\-version\fR] [\fIPATH\fR] 
 .SH DESCRIPTION
 Like du but more intuitive
 .SH OPTIONS
@@ -66,7 +66,7 @@
 \fB\-f\fR, \fB\-\-filecount\fR
 Directory \*(Aqsize\*(Aq is number of child files instead of disk size
 .TP
-\fB\-i\fR, \fB\-\-ignore_hidden\fR
+\fB\-i\fR, \fB\-\-ignore\-hidden\fR
 Do not display hidden files
 .TP
 \fB\-v\fR, \fB\-\-invert\-filter\fR=\fIREGEX\fR
@@ -75,10 +75,10 @@
 \fB\-e\fR, \fB\-\-filter\fR=\fIREGEX\fR
 Only include filepaths matching this regex. For png files type: \-e "\\.png$" 
 .TP
-\fB\-t\fR, \fB\-\-file_types\fR
+\fB\-t\fR, \fB\-\-file\-types\fR
 show only these file types
 .TP
-\fB\-w\fR, \fB\-\-terminal_width\fR=\fIWIDTH\fR
+\fB\-w\fR, \fB\-\-terminal\-width\fR=\fIWIDTH\fR
 Specify width of output overriding the auto detection of terminal width
 .TP
 \fB\-P\fR, \fB\-\-no\-progress\fR
@@ -137,4 +137,4 @@
 [\fIPATH\fR]
 
 .SH VERSION
-v1.1.2
+v1.2.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/cli.rs new/dust-1.2.0/src/cli.rs
--- old/dust-1.1.2/src/cli.rs   2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/cli.rs   2025-04-02 00:19:59.000000000 +0200
@@ -1,4 +1,4 @@
-use clap::{builder::PossibleValue, value_parser, Arg, Command};
+use clap::{Arg, Command, builder::PossibleValue, value_parser};
 
 // For single thread mode set this variable on your command line:
 // export RAYON_NUM_THREADS=1
@@ -154,7 +154,7 @@
         .arg(
             Arg::new("ignore_hidden")
                 .short('i') // Do not use 'h' this is used by 'help'
-                .long("ignore_hidden")
+                .long("ignore-hidden")
                 .action(clap::ArgAction::SetTrue)
                 .help("Do not display hidden files"),
         )
@@ -180,7 +180,7 @@
         .arg(
             Arg::new("types")
                 .short('t')
-                .long("file_types")
+                .long("file-types")
                 .conflicts_with("depth")
                 .conflicts_with("only_dir")
                 .action(clap::ArgAction::SetTrue)
@@ -189,7 +189,7 @@
         .arg(
             Arg::new("width")
                 .short('w')
-                .long("terminal_width")
+                .long("terminal-width")
                 .value_name("WIDTH")
                 .value_parser(value_parser!(usize))
                 .num_args(1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/config.rs new/dust-1.2.0/src/config.rs
--- old/dust-1.1.2/src/config.rs        2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/config.rs        2025-04-02 00:19:59.000000000 +0200
@@ -4,7 +4,6 @@
 use config_file::FromConfigFile;
 use regex::Regex;
 use serde::Deserialize;
-use std::io::IsTerminal;
 use std::path::Path;
 use std::path::PathBuf;
 
@@ -54,9 +53,7 @@
         Some(true) == self.force_colors || options.get_flag("force_colors")
     }
     pub fn get_disable_progress(&self, options: &ArgMatches) -> bool {
-        Some(true) == self.disable_progress
-            || options.get_flag("disable_progress")
-            || !std::io::stdout().is_terminal()
+        Some(true) == self.disable_progress || 
options.get_flag("disable_progress")
     }
     pub fn get_apparent_size(&self, options: &ArgMatches) -> bool {
         Some(true) == self.display_apparent_size || 
options.get_flag("display_apparent_size")
@@ -291,7 +288,7 @@
     use super::*;
     use chrono::{Datelike, Timelike};
     use clap::builder::PossibleValue;
-    use clap::{value_parser, Arg, ArgMatches, Command};
+    use clap::{Arg, ArgMatches, Command, value_parser};
 
     #[test]
     fn test_get_current_date_epoch_seconds() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/dir_walker.rs 
new/dust-1.2.0/src/dir_walker.rs
--- old/dust-1.1.2/src/dir_walker.rs    2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/dir_walker.rs    2025-04-02 00:19:59.000000000 +0200
@@ -5,10 +5,10 @@
 use std::sync::Mutex;
 
 use crate::node::Node;
+use crate::progress::ORDERING;
 use crate::progress::Operation;
 use crate::progress::PAtomicInfo;
 use crate::progress::RuntimeErrors;
-use crate::progress::ORDERING;
 use crate::utils::is_filtered_out_due_to_file_time;
 use crate::utils::is_filtered_out_due_to_invert_regex;
 use crate::utils::is_filtered_out_due_to_regex;
@@ -125,9 +125,33 @@
     }
 }
 
+// Check if `path` is inside ignored directory
+fn is_ignored_path(path: &Path, walk_data: &WalkData) -> bool {
+    if walk_data.ignore_directories.contains(path) {
+        return true;
+    }
+
+    // Entry is inside an ignored absolute path
+    // Absolute paths should be canonicalized before being added to 
`WalkData.ignore_directories`
+    for ignored_path in walk_data.ignore_directories.iter() {
+        if !ignored_path.is_absolute() {
+            continue;
+        }
+        let absolute_entry_path = 
std::fs::canonicalize(path).unwrap_or_default();
+        if absolute_entry_path.starts_with(ignored_path) {
+            return true;
+        }
+    }
+
+    false
+}
+
 fn ignore_file(entry: &DirEntry, walk_data: &WalkData) -> bool {
+    if is_ignored_path(&entry.path(), walk_data) {
+        return true;
+    }
+
     let is_dot_file = 
entry.file_name().to_str().unwrap_or("").starts_with('.');
-    let is_ignored_path = walk_data.ignore_directories.contains(&entry.path());
     let follow_links = walk_data.follow_links && 
entry.file_type().is_ok_and(|ft| ft.is_symlink());
 
     if !walk_data.allowed_filesystems.is_empty() {
@@ -175,17 +199,13 @@
         return true;
     }
 
-    (is_dot_file && walk_data.ignore_hidden) || is_ignored_path
+    is_dot_file && walk_data.ignore_hidden
 }
 
 fn walk(dir: PathBuf, walk_data: &WalkData, depth: usize) -> Option<Node> {
     let prog_data = &walk_data.progress_data;
     let errors = &walk_data.errors;
 
-    if errors.lock().unwrap().abort {
-        return None;
-    }
-
     let children = if dir.is_dir() {
         let read_dir = fs::read_dir(&dir);
         match read_dir {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/display.rs 
new/dust-1.2.0/src/display.rs
--- old/dust-1.1.2/src/display.rs       2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/display.rs       2025-04-02 00:19:59.000000000 +0200
@@ -71,11 +71,7 @@
 
     fn percent_size(&self, node: &DisplayNode) -> f32 {
         let result = node.size as f32 / self.base_size as f32;
-        if result.is_normal() {
-            result
-        } else {
-            0.0
-        }
+        if result.is_normal() { result } else { 0.0 }
     }
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/main.rs new/dust-1.2.0/src/main.rs
--- old/dust-1.1.2/src/main.rs  2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/main.rs  2025-04-02 00:19:59.000000000 +0200
@@ -24,11 +24,10 @@
 use std::io;
 use std::panic;
 use std::process;
-use std::sync::atomic::AtomicBool;
-use std::sync::atomic::Ordering;
 use std::sync::Arc;
 use std::sync::Mutex;
 use sysinfo::{System, SystemExt};
+use utils::canonicalize_absolute_path;
 
 use self::display::draw_it;
 use config::get_config;
@@ -39,7 +38,7 @@
 use regex::Regex;
 use std::cmp::max;
 use std::path::PathBuf;
-use terminal_size::{terminal_size, Height, Width};
+use terminal_size::{Height, Width, terminal_size};
 use utils::get_filesystem_devices;
 use utils::simplify_dir_names;
 
@@ -118,20 +117,13 @@
     let errors = RuntimeErrors::default();
     let error_listen_for_ctrlc = Arc::new(Mutex::new(errors));
     let errors_for_rayon = error_listen_for_ctrlc.clone();
-    let errors_final = error_listen_for_ctrlc.clone();
-    let is_in_listing = Arc::new(AtomicBool::new(false));
-    let cloned_is_in_listing = Arc::clone(&is_in_listing);
 
     ctrlc::set_handler(move || {
-        error_listen_for_ctrlc.lock().unwrap().abort = true;
         println!("\nAborting");
-        if cloned_is_in_listing.load(Ordering::Relaxed) {
-            process::exit(1);
-        }
+        process::exit(1);
     })
     .expect("Error setting Ctrl-C handler");
 
-    is_in_listing.store(true, Ordering::Relaxed);
     let target_dirs = match config.get_files_from(&options) {
         Some(path) => {
             if path == "-" {
@@ -161,7 +153,6 @@
             None => vec![".".to_owned()],
         },
     };
-    is_in_listing.store(false, Ordering::Relaxed);
 
     let summarize_file_types = options.get_flag("types");
 
@@ -198,6 +189,7 @@
         Some(values) => values
             .map(|v| v.as_str())
             .map(PathBuf::from)
+            .map(canonicalize_absolute_path)
             .collect::<Vec<PathBuf>>(),
         None => vec![],
     };
@@ -302,10 +294,6 @@
     // Must have stopped indicator before we print to stderr
     indicator.stop();
 
-    if errors_final.lock().unwrap().abort {
-        return;
-    }
-
     let final_errors = walk_data.errors.lock().unwrap();
     if !final_errors.file_not_found.is_empty() {
         let err = final_errors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/node.rs new/dust-1.2.0/src/node.rs
--- old/dust-1.1.2/src/node.rs  2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/node.rs  2025-04-02 00:19:59.000000000 +0200
@@ -48,9 +48,9 @@
             || 
is_filtered_out_due_to_invert_regex(walk_data.invert_filter_regex, &dir)
             || by_filecount && !is_file
             || [
-                (&walk_data.filter_modified_time, data.2 .0),
-                (&walk_data.filter_accessed_time, data.2 .1),
-                (&walk_data.filter_changed_time, data.2 .2),
+                (&walk_data.filter_modified_time, data.2.0),
+                (&walk_data.filter_accessed_time, data.2.1),
+                (&walk_data.filter_changed_time, data.2.2),
             ]
             .iter()
             .any(|(filter_time, actual_time)| {
@@ -61,9 +61,9 @@
             1
         } else if by_filetime.is_some() {
             match by_filetime {
-                Some(FileTime::Modified) => data.2 .0.unsigned_abs(),
-                Some(FileTime::Accessed) => data.2 .1.unsigned_abs(),
-                Some(FileTime::Changed) => data.2 .2.unsigned_abs(),
+                Some(FileTime::Modified) => data.2.0.unsigned_abs(),
+                Some(FileTime::Accessed) => data.2.1.unsigned_abs(),
+                Some(FileTime::Changed) => data.2.2.unsigned_abs(),
                 None => unreachable!(),
             }
         } else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/progress.rs 
new/dust-1.2.0/src/progress.rs
--- old/dust-1.1.2/src/progress.rs      2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/progress.rs      2025-04-02 00:19:59.000000000 +0200
@@ -3,9 +3,9 @@
     io::Write,
     path::Path,
     sync::{
+        Arc, RwLock,
         atomic::{AtomicU8, AtomicUsize, Ordering},
         mpsc::{self, RecvTimeoutError, Sender},
-        Arc, RwLock,
     },
     thread::JoinHandle,
     time::Duration,
@@ -79,7 +79,6 @@
     pub file_not_found: HashSet<String>,
     pub unknown_error: HashSet<String>,
     pub interrupted_error: i32,
-    pub abort: bool,
 }
 
 /* -------------------------------------------------------------------------- 
*/
@@ -119,7 +118,7 @@
 
         let time_info_thread = std::thread::spawn(move || {
             let mut progress_char_i: usize = 0;
-            let mut stdout = std::io::stdout();
+            let mut stderr = std::io::stderr();
             let mut msg = "".to_string();
 
             // While the timeout triggers we go round the loop
@@ -128,7 +127,8 @@
                 
receiver.recv_timeout(Duration::from_millis(SPINNER_SLEEP_TIME))
             {
                 // Clear the text written by 'write!'& Return at the start of 
line
-                print!("\r{:width$}", " ", width = msg.len());
+                let clear = format!("\r{:width$}", " ", width = msg.len());
+                write!(stderr, "{clear}").unwrap();
                 let prog_char = PROGRESS_CHARS[progress_char_i];
 
                 msg = match data.state.load(ORDERING) {
@@ -137,15 +137,17 @@
                     _ => panic!("Unknown State"),
                 };
 
-                write!(stdout, "\r{msg}").unwrap();
-                stdout.flush().unwrap();
+                write!(stderr, "\r{msg}").unwrap();
+                stderr.flush().unwrap();
 
                 progress_char_i += 1;
                 progress_char_i %= PROGRESS_CHARS_LEN;
             }
-            print!("\r{:width$}", " ", width = msg.len());
-            print!("\r");
-            stdout.flush().unwrap();
+
+            let clear = format!("\r{:width$}", " ", width = msg.len());
+            write!(stderr, "{clear}").unwrap();
+            write!(stderr, "\r").unwrap();
+            stderr.flush().unwrap();
         });
         self.thread = Some((stop_handler, time_info_thread))
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/src/utils.rs new/dust-1.2.0/src/utils.rs
--- old/dust-1.1.2/src/utils.rs 2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/src/utils.rs 2025-04-02 00:19:59.000000000 +0200
@@ -67,6 +67,17 @@
     path.as_ref().components().collect()
 }
 
+// Canonicalize the path only if it is an absolute path
+pub fn canonicalize_absolute_path(path: PathBuf) -> PathBuf {
+    if !path.is_absolute() {
+        return path;
+    }
+    match std::fs::canonicalize(&path) {
+        Ok(canonicalized_path) => canonicalized_path,
+        Err(_) => path,
+    }
+}
+
 pub fn is_filtered_out_due_to_regex(filter_regex: &[Regex], dir: &Path) -> 
bool {
     if filter_regex.is_empty() {
         false
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dust-1.1.2/tests/test_flags.rs 
new/dust-1.2.0/tests/test_flags.rs
--- old/dust-1.1.2/tests/test_flags.rs  2025-02-27 23:01:19.000000000 +0100
+++ new/dust-1.2.0/tests/test_flags.rs  2025-04-02 00:19:59.000000000 +0200
@@ -10,6 +10,9 @@
 
 fn build_command<T: AsRef<OsStr>>(command_args: Vec<T>) -> String {
     let mut cmd = &mut Command::cargo_bin("dust").unwrap();
+    // Hide progress bar
+    cmd = cmd.arg("-P");
+
     for p in command_args {
         cmd = cmd.arg(p);
     }

++++++ dust.obsinfo ++++++
--- /var/tmp/diff_new_pack.kmPld7/_old  2025-04-02 21:06:05.146144290 +0200
+++ /var/tmp/diff_new_pack.kmPld7/_new  2025-04-02 21:06:05.150144459 +0200
@@ -1,5 +1,5 @@
 name: dust
-version: 1.1.2
-mtime: 1740693679
-commit: b24f4c8096557529e63e6fb09fc6ecdb497d153b
+version: 1.2.0
+mtime: 1743545999
+commit: 646cdd976ded146779f4fc57c34c56fa850d728f
 

++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/dust/vendor.tar.zst 
/work/SRC/openSUSE:Factory/.dust.new.1907/vendor.tar.zst differ: char 7, line 1

Reply via email to