Compare commits

..

5 commits

Author SHA1 Message Date
de5163c877 Change version suffix to '-pre'(release).
Signed-off-by: Thomas Hochstein <thh@thh.name>
2026-01-24 18:50:36 +01:00
ae4714e30d Imply -o for --testing as long as -n is not set.
Signed-off-by: Thomas Hochstein <thh@thh.name>
2026-01-24 18:42:41 +01:00
6b73bdfdd3 Don't modify headers while --testing if -o is set.
Signed-off-by: Thomas Hochstein <thh@thh.name>
2026-01-24 18:31:48 +01:00
9177618643 Merge branch 'maint'
* maint:
  Release 1.0.1

Signed-off-by: Thomas Hochstein <thh@thh.name>
2026-01-24 18:19:32 +01:00
da1e16083d Release 1.0.1
Signed-off-by: Thomas Hochstein <thh@thh.name>
2026-01-24 18:15:45 +01:00
2 changed files with 20 additions and 18 deletions

View file

@ -1,7 +1,8 @@
yapfaq 1.1.0 (unreleased) yapfaq 1.1.0 (unreleased)
* --test: Set Supersedes and don't modify Message-ID if -o is set.
* --test: Force -o if -n is not set.
yapfaq 1.0.1 (2025-01-24)
yapfaq 1.0.1 (unreleased)
* Add %t placeholder for Message-ID (feature parity with 0.9). * Add %t placeholder for Message-ID (feature parity with 0.9).
* Remove debugging code. * Remove debugging code.

View file

@ -19,7 +19,7 @@
# It can be redistributed and/or modified under the same terms under # It can be redistributed and/or modified under the same terms under
# which Perl itself is published. # which Perl itself is published.
my $VERSION = "1.1.0-unreleased"; my $VERSION = "1.1.0-pre";
(my $NAME = $0) =~ s#^.*/##; (my $NAME = $0) =~ s#^.*/##;
use utf8; use utf8;
@ -112,6 +112,9 @@ if ($OptSimulation) {
$Config{'verbose'} = 1; $Config{'verbose'} = 1;
} }
# -t implies -o if -n is not set
$OptOutput = 1 if $OptTest && !$OptNewsgroup;
### create list of @Projects from $Config{'datadir'} unless -p is set ### create list of @Projects from $Config{'datadir'} unless -p is set
my @Projects; my @Projects;
if (!$OptProject) { if (!$OptProject) {
@ -475,7 +478,7 @@ sub BuildPosting {
$_ =~ s/\%p/$$/g; $_ =~ s/\%p/$$/g;
$_ =~ s/\%t/$TimeStamp/g; $_ =~ s/\%t/$TimeStamp/g;
# add random part in test mode # add random part in test mode
if ($OptTest) { if ($OptTest && !$OptOutput) {
my $random = sprintf("%08X", rand(0xFFFFFFFF)); my $random = sprintf("%08X", rand(0xFFFFFFFF));
$_ =~ s/</<test-$random-/; $_ =~ s/</<test-$random-/;
} }
@ -491,7 +494,7 @@ sub BuildPosting {
} }
# add Supersedes: if set # add Supersedes: if set
if (/^Supersedes: /) { if (/^Supersedes: /) {
if ($LastMID && !$OptTest) { if ($LastMID && (!$OptTest or $OptOutput)) {
$_= "Supersedes: $LastMID\n"; $_= "Supersedes: $LastMID\n";
} else { } else {
$_ = ''; $_ = '';
@ -843,7 +846,7 @@ unique I<Message-ID:> (and no I<Supersedes:> header).
Don't post via NNTP, but print to STDOUT. Don't post via NNTP, but print to STDOUT.
Combine with B<--test> to avoid updating project status. Use B<--test> instead to avoid updating project status.
Intended for testing purposes or to pipe in another program like Intended for testing purposes or to pipe in another program like
I<inews> or I<tinews.pl>. If you want to pipe the output to another I<inews> or I<tinews.pl>. If you want to pipe the output to another
@ -861,20 +864,18 @@ Display this man page and exit.
=item B<-s>, B<--simulation> =item B<-s>, B<--simulation>
Simulation mode. Don't post, just show which projects would be due. Simulation mode. Don't post, just show which projects would be due.
Implies B<--test> and B<--verbose>. Implies B<--test> (without B<--output>) and B<--verbose>.
Can be combined with B<--project> to show if just one project is due. Can be combined with B<--project> to show if just one project is due.
=item B<-t>, B<--test> =item B<-t>, B<--test>
Test mode. Don't update project status (time and Message-ID of last Test mode. Don't update project status (time and Message-ID of last
posting), dont' add a I<Supersedes:> header and modify the posting); if project is posted to Usenet, dont' add a I<Supersedes:>
I<Message-ID:> with a random part. header and modify the I<Message-ID:> with a random part.
The text(s) will still be posted if due or forced by B<--force>. Implies B<--output> (to redirect output to STDOUT) as long as
B<--newsgroup> (to override the I<Newsgroups:> header) is not set.
Combine with B<--output> to redirect output to STDOUT or with
B<--newsgroup> to override the I<Newsgroups:> header.
=item B<-V>, B<--version> =item B<-V>, B<--version>
@ -911,16 +912,16 @@ that are not:
Do a test run of your I<example> text and and print it on STDOUT Do a test run of your I<example> text and and print it on STDOUT
(whether ist is due or not): (whether ist is due or not):
yapfaq.pl -t -f -o -p example yapfaq.pl -t -f -p example
(or yapfaq.pl -tfop example) (or yapfaq.pl -tfp example)
The same, with debugging output (add "-d"): The same, with debugging output (add "-d"):
yapfaq.pl -tfdop example yapfaq.pl -tfdp example
Force a test post of your I<example> text to I<alt.test>, even if Force a test post of your I<example> text to I<alt.test>, even if
the text is not due to be posted (same as before, just replace "-o" the text is not due to be posted (same as before, just add
by "-n alt-test"): "-n alt-test"):
yapfaq.pl -t -f -p example -n alt.test yapfaq.pl -t -f -p example -n alt.test