From ed8726152c24ad843b6d5d6d5c0a8cd1b787e690 Mon Sep 17 00:00:00 2001 From: Thomas Hochstein Date: Sat, 24 Jan 2026 15:45:20 +0100 Subject: [PATCH] Add %t placeholder for Message-ID. Feature parity with 0.9 Signed-off-by: Thomas Hochstein --- ChangeLog | 2 +- bin/yapfaq.pl | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1705401..0c1395f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,5 @@ yapfaq 1.1.0 (unreleased) - +* Add %t placeholder for Message-ID (feature parity with 0.9). yapfaq 1.0.0 (2025-01-23) * Complete rewrite. diff --git a/bin/yapfaq.pl b/bin/yapfaq.pl index b00d536..d63384f 100755 --- a/bin/yapfaq.pl +++ b/bin/yapfaq.pl @@ -464,15 +464,18 @@ sub BuildPosting { # %m current month # %d current day # %p PID + # %t timestamp (seconds since epoch) if (/^Message-ID: /i) { my $TDY = $TD->strftime('%Y'); my $TDM = $TD->strftime('%m'); my $TDD = $TD->strftime('%d'); + my $TimeStamp = time; $_ =~ s/\%n/$Project/g; $_ =~ s/\%y/$TDY/g; $_ =~ s/\%m/$TDM/g; $_ =~ s/\%d/$TDD/g; $_ =~ s/\%p/$$/g; + $_ =~ s/\%t/$TimeStamp/g; # add random part in test mode if ($OptTest) { my $random = sprintf("%08X", rand(0xFFFFFFFF)); @@ -747,11 +750,12 @@ curly brackets and spaces) is removed. If a I header is present, placeholders in that header will be replaced: I<%n> with the project name, I<%y> with the current year (YYYY), I<%m> with the current month (MM), I<%d> with the -current day (DD) and I<%p> with the current process ID (PID) of -B. If no I header is present, the I -will be generated with the hostname of the system B is -running on and I<%n-%y-%m-%d> as template for the left hand side. If -the I header in the headers file does not contain +current day (DD), I<%p> with the current process ID (PID) of +B and I<%t> with a timestamp timestamp (seconds since epoch). +If no I header is present, the I will be +generated with the hostname of the system B is running on and +I<%n-%y-%m-%d> as template for the left hand side. If the +I header in the headers file does not contain placeholders, the next repost will most probably fail. If an I header is present, it must contain a time period of