Commit graph

163 commits

Author SHA1 Message Date
Andrea Mazzoleni
f40b2decdb Further conversions from 32 to 64 bits 2026-08-18 23:33:54 +02:00
Andrea Mazzoleni
bbd3c23cd2 Migrate block_off_t to 64-bit with updated CLI parsing, VLQ serialization, and format specifiers 2026-08-18 23:33:54 +02:00
Andrea Mazzoleni
87313c2bfd Delete snapshot links in Windows 2026-08-18 23:33:53 +02:00
Andrea Mazzoleni
5c1cf8560a Secure external tools execution 2026-08-18 23:33:53 +02:00
Andrea Mazzoleni
c724b47189 More coverage support 2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
76ce1cbb16 Add regression check for Btrfs
It requires root privileges as it has to create Btrfs filesystems.
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
54602422dd Change commenting style 2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
1227a8c45e Sync no longer requires clearing the past hash
It no longer assumes past hashes are valid if even a single unsynced
block exists, which indicates a previous sync was interrupted.

While this makes syncing slower after an interruption, it preserves the
past hash in the content file, enabling a more reliable fix if a
disk fails following an incomplete sync.

This ensures the --import option remains functional even after an
interrupted sync.
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
2fc38017a8 Add Btrfs snapshot support for atomic sync and recovery consistency 2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
3f280486bd Fix regression with both touch and threshold active at the same time 2026-07-19 17:55:29 +02:00
Andrea Mazzoleni
e088672ccd Fix false file modification report after threshold-aborted sync 2026-07-06 15:34:22 +02:00
Andrea Mazzoleni
bf2657b76a Avoid saving the content file in touch if nothing changed 2026-06-10 14:49:47 +02:00
Andrea Mazzoleni
96e20b3912 Switch esc_tag and path formatting to a contiguous thread-local circular pool to eliminate stack bloat
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-05-29 11:22:04 +02:00
Andrea Mazzoleni
23b4cc5fa0 Make the devices commands to fail if unsupported in the platform 2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
81995ccc8d Use eaccess() instead of access() 2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
1f0136f2e5 Avoid potential size overflow in 32 bit system in option size specification 2026-05-21 16:08:02 +02:00
Andrea Mazzoleni
e17bb92f69 Avoid floating point precision errors in -p option 2026-05-21 16:08:02 +02:00
Andrea Mazzoleni
ecce8b136c Drop the test-run option from the official binary 2026-05-21 16:08:02 +02:00
Andrea Mazzoleni
34b6a47e5e Fixed --gui-threshold logic
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-04-20 00:42:48 +02:00
Andrea Mazzoleni
4ba6ee874c Log the modification time of the content file in probe and other commmands 2026-04-09 17:56:50 +02:00
Andrea Mazzoleni
323c943afb Use exit code 2 if sync is aborted due to threshold limits 2026-04-09 17:56:50 +02:00
Andrea Mazzoleni
0d0431a907 Simpler Copyright string 2026-04-09 17:56:49 +02:00
Christoph Hellwig
60269a1236 Use SPDX (https://spdx.dev/) tags to identify the license used for each
file, and a COPYING file explaining the licensing scheme, with the actual
licenses listed in the LICENSES/ directory.
2026-04-02 16:01:37 +02:00
Andrea Mazzoleni
80bb5af22e As option argument never accept an empty string for the 0 value 2026-03-19 15:07:43 +01:00
Andrea Mazzoleni
8ee24aa26c Avoid undefined behaviour parsing double 2026-03-19 12:59:03 +01:00
Andrea Mazzoleni
1d2ab288d1 Fix wrong variable use. No effect but also not correct. 2026-03-19 12:55:01 +01:00
Andrea Mazzoleni
189029749e Configuration is now required also for smart and probe commands
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-03-12 16:19:40 +01:00
Andrea Mazzoleni
c8f219e6e8 Comment why read doesn't refersh the disks info 2026-03-11 16:05:39 +01:00
Andrea Mazzoleni
e48cdacce5 New option --gui-touch-before 2026-03-10 23:43:21 +01:00
Andrea Mazzoleni
27c44ce56e Quote tags in the logs
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-03-02 17:57:29 +01:00
Andrea Mazzoleni
21561e6cf9 More coverage test
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-02-28 18:13:11 +01:00
Andrea Mazzoleni
8639c8b479 Use PACKAGE_NAME where proper 2026-02-24 09:09:10 +01:00
Andrea Mazzoleni
a63a985bf7 Promote "test-read" to an official command as "read"
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-02-20 00:03:07 +01:00
Andrea Mazzoleni
11fd4ada69 Support decimal point for -p, --plan
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-02-17 02:02:48 +01:00
Andrea Mazzoleni
627b7cff50 New gui options to have a better integration 2026-02-10 12:16:50 +01:00
Andrea Mazzoleni
f89d5fa4f3 Unified the two --force-realloc logics 2026-02-09 14:39:19 +01:00
Ralf
966583e6f0 Add a new -W, --force-realloc-tail that operates only on the specified tail
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2026-02-09 14:39:19 +01:00
Andrea Mazzoleni
345f9bf019 Treat SIGQUIT as immediate exit, remove from graceful shutdown
This aligns with common behavior in vim, nano, helix, weechat, etc.
2026-02-09 14:39:16 +01:00
Andrea Mazzoleni
43e46cf013 When received a signal, terminate with the same signal 2026-02-08 15:44:20 +01:00
Ralf
c09bdc572e Add new locate command with --tail option.
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2026-02-02 14:02:16 +01:00
Andrea Mazzoleni
d3f7bf64c1 Differentiate messages in the log files if they are caused by an hardware issue 2026-02-01 20:44:36 +01:00
Andrea Mazzoleni
f134201438 Log more information about the filesystems 2026-01-31 16:30:15 +01:00
Andrea Mazzoleni
692856b4f9 Fix help of -d option 2026-01-26 22:49:42 +01:00
Andrea Mazzoleni
1166d9dcea Bump to 14.0 2026-01-26 09:39:50 +01:00
Andrea Mazzoleni
b29500c25f Update beautification with uncrustify 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
6b79b3157d Splitted the --gui option in --gui and --gui-verbose to avoid extremely big logs 2026-01-14 10:49:23 +01:00
Andrea Mazzoleni
9f14dd94e5 Add support for ** in the patterns
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2026-01-11 15:48:36 +01:00
Andrea Mazzoleni
36cef9ee89 New .snapraidignore feature 2026-01-11 12:07:01 +01:00
Andrea Mazzoleni
00dc3e6a48 New speed test options 2026-01-11 12:01:12 +01:00
Andrea Mazzoleni
13fae39eb3 New pseudo random number generator
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
2026-01-06 09:34:29 +01:00