summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorRuss Allbery <rra@cpan.org>2022-01-16 12:37:53 -0800
committerRuss Allbery <rra@cpan.org>2022-01-16 12:37:53 -0800
commitc63b8c190bc95654ad5a39b416da9369e6017b92 (patch)
treeef504ee6985a01c277ed20765f1d37d887ad9ac1 /t
parent3fc9ec55da2fdcb1788aca3954f7b062e8855cbc (diff)
Use templates in App::DocKnot::Spin::RSS
Rather than using inline strings and complex print_fh statements, generate the output files from App::DocKnot::Spin::RSS using Template Toolkit templates like other parts of DocKnot. Add some additional Unicode to the input files to better test Unicode handling throughout DocKnot. Use Unicode emdashes rather than the HTML entity.
Diffstat (limited to 't')
-rwxr-xr-xt/cli/spin.t8
-rw-r--r--t/data/spin/input/.rss6
-rw-r--r--t/data/spin/input/reviews/books/0-385-49362-2.th2
-rw-r--r--t/data/spin/output/changes.html144
-rw-r--r--t/data/spin/output/changes.rss22
-rw-r--r--t/data/spin/output/journal/debian.rss4
-rw-r--r--t/data/spin/output/journal/index.html6
-rw-r--r--t/data/spin/output/journal/index.rss8
-rw-r--r--t/data/spin/output/journal/reviews.rss8
-rw-r--r--t/data/spin/output/reviews/books/0-385-49362-2.html2
10 files changed, 109 insertions, 101 deletions
diff --git a/t/cli/spin.t b/t/cli/spin.t
index 2522eda..37fc269 100755
--- a/t/cli/spin.t
+++ b/t/cli/spin.t
@@ -2,7 +2,7 @@
#
# Tests for the App::DocKnot command dispatch for spin and spin-file.
#
-# Copyright 2021 Russ Allbery <rra@cpan.org>
+# Copyright 2021-2022 Russ Allbery <rra@cpan.org>
#
# SPDX-License-Identifier: MIT
@@ -76,11 +76,8 @@ print_fh($fh, $pointer_path, "format: pod\n");
print_fh($fh, $pointer_path, "path: $pod_source\n");
close($fh);
-# Spin a tree of files. Do this from the temporary directory because 6.00 had
-# a regression where docknot spin would fail if there were no package metadata
-# even though it didn't use it.
+# Spin a tree of files.
my $cwd = getcwd();
-chdir($tempdir->dirname);
$expected = File::Spec->catfile($datadir, 'output');
capture_stdout {
$docknot->run(
@@ -88,7 +85,6 @@ capture_stdout {
$tempdir->dirname,
);
};
-chdir($cwd);
my $count = is_spin_output_tree($tempdir->dirname, $expected, 'spin');
# Spin a file with warnings. The specific warnings are checked in
diff --git a/t/data/spin/input/.rss b/t/data/spin/input/.rss
index c304c7a..bf75d9c 100644
--- a/t/data/spin/input/.rss
+++ b/t/data/spin/input/.rss
@@ -37,6 +37,12 @@ Thread-Prefix:
\link[changes/2011.html][2011], \link[changes/2010.html][2010],
\link[changes/2009.html][2009], and \link[changes/2008.html][2008].
+Date: 2021-08-30 22:30
+Title: Test UTF-8 entry
+Link: /
+Description:
+ Test entry — with UTF-8 dash.
+
Date: 2021-08-30 21:25
Title: kstart 4.3
Link: software/kstart/
diff --git a/t/data/spin/input/reviews/books/0-385-49362-2.th b/t/data/spin/input/reviews/books/0-385-49362-2.th
index 5df2e86..6fcc675 100644
--- a/t/data/spin/input/reviews/books/0-385-49362-2.th
+++ b/t/data/spin/input/reviews/books/0-385-49362-2.th
@@ -23,7 +23,7 @@ Fermat's Last Theorem is the infamous proposal that:
has no solutions for integer \italic[x, y, z, n] and \italic[n > 2]. It's
infamous for being very simple to state and understand, a variation on the
equation produced by the Pythagorean Theorem, but incredibly difficult to
-prove. It's also infamous for Pierre de Fermat's maddening marginal note:
+prove. It's also infamous for Pierre de Fermat's maddening marginal note —
"I have discovered a truly marvelous demonstration of this proposition
which this margin is too narrow to contain." 350 years after Fermat wrote
this, the theorem was still unproven in the general case, although the
diff --git a/t/data/spin/output/changes.html b/t/data/spin/output/changes.html
index 5e90dfe..acedc22 100644
--- a/t/data/spin/output/changes.html
+++ b/t/data/spin/output/changes.html
@@ -52,7 +52,13 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>August 2021</h2>
<dl>
-<dt>2021-08-30 &mdash;
+<dt>2021-08-30 —
+ <a href="https://www.eyrie.org/~eagle/">Test UTF-8 entry</a></dt>
+<dd><p>
+ Test entry — with UTF-8 dash.
+</p></dd>
+
+<dt>2021-08-30 —
<a href="https://www.eyrie.org/~eagle/software/kstart/">kstart 4.3</a></dt>
<dd><p>
Add support for kafs by continuing with -t behavior if kafs is present.
@@ -63,37 +69,37 @@ Also see changes from <a href="changes/2020.html">2020</a>,
updates.
</p></dd>
-<dt>2021-08-18 &mdash;
+<dt>2021-08-18 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-250-30112-2.html">Review: The Past is Red</a></dt>
<dd><p>
Review of The Past is Red by Catherynne M. Valente.
</p></dd>
-<dt>2021-08-16 &mdash;
+<dt>2021-08-16 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-5344-3769-X.html">Review: Black Sun</a></dt>
<dd><p>
Review of Black Sun by Rebecca Roanhorse.
</p></dd>
-<dt>2021-08-15 &mdash;
+<dt>2021-08-15 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-06-293605-0.html">Review: The Galaxy, and the Ground Within</a></dt>
<dd><p>
Review of The Galaxy, and the Ground Within by Becky Chambers.
</p></dd>
-<dt>2021-08-08 &mdash;
+<dt>2021-08-08 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044210-6.html">Review: The Last Battle</a></dt>
<dd><p>
Review of The Last Battle by C.S. Lewis.
</p></dd>
-<dt>2021-08-07 &mdash;
+<dt>2021-08-07 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
</p></dd>
-<dt>2021-08-01 &mdash;
+<dt>2021-08-01 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-63557-564-8.html">Review: Piranesi</a></dt>
<dd><p>
Review of Piranesi by Susanna Clarke.
@@ -103,25 +109,25 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>July 2021</h2>
<dl>
-<dt>2021-07-31 &mdash;
+<dt>2021-07-31 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-250-76538-2.html">Review: Fugitive Telemetry</a></dt>
<dd><p>
Review of Fugitive Telemetry by Martha Wells.
</p></dd>
-<dt>2021-07-24 &mdash;
+<dt>2021-07-24 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add finalists for the World Fantasy Award</a></dt>
<dd><p>
Add the finalists for the 2021 World Fantasy Award for best novel.
</p></dd>
-<dt>2021-07-24 &mdash;
+<dt>2021-07-24 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
</p></dd>
-<dt>2021-07-03 &mdash;
+<dt>2021-07-03 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add Clarke Award nominees and Locus Award Winners</a></dt>
<dd><p>
Add the nominees for the 2021 Arthur C. Clarke Award, and the winners of
@@ -134,14 +140,14 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>June 2021</h2>
<dl>
-<dt>2021-06-27 &mdash;
+<dt>2021-06-27 —
<a href="https://www.eyrie.org/~eagle/software/control-archive/">control-archive 1.9.1</a></dt>
<dd><p>
A data-only release that updates the Big Eight control signing key and
removes some obsolete information about net.*.
</p></dd>
-<dt>2021-06-27 &mdash;
+<dt>2021-06-27 —
<a href="https://www.eyrie.org/~eagle/big-8/">Added web page for Big Eight control information</a></dt>
<dd><p>
New web page summarizing control information for the Big Eight
@@ -149,32 +155,32 @@ Also see changes from <a href="changes/2020.html">2020</a>,
Moose key.
</p></dd>
-<dt>2021-06-20 &mdash;
+<dt>2021-06-20 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-345-36331-0.html">Review: Demon Lord of Karanda</a></dt>
<dd><p>
Review of Demon Lord of Karanda by David Eddings.
</p></dd>
-<dt>2021-06-19 &mdash;
+<dt>2021-06-19 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044230-0.html">Review: The Magician's Nephew</a></dt>
<dd><p>
Review of The Magician's Nephew by C.S. Lewis.
</p></dd>
-<dt>2021-06-06 &mdash;
+<dt>2021-06-06 —
<a href="https://www.eyrie.org/~eagle/reviews/books/stoneskin.html">Review: Stoneskin</a></dt>
<dd><p>
Review of Stoneskin by K.B. Spangler.
</p></dd>
-<dt>2021-06-05 &mdash;
+<dt>2021-06-05 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add winner of 2021 Nebula Award for best novel</a></dt>
<dd><p>
Add the winner of the 2021 Nebula Award for best novel (Network Effect by
Martha Wells).
</p></dd>
-<dt>2021-06-05 &mdash;
+<dt>2021-06-05 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
@@ -184,37 +190,37 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>May 2021</h2>
<dl>
-<dt>2021-05-31 &mdash;
+<dt>2021-05-31 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044200-9.html">Review: The Horse and His Boy</a></dt>
<dd><p>
Review of The Horse and His Boy by C.S. Lewis.
</p></dd>
-<dt>2021-05-30 &mdash;
+<dt>2021-05-30 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-250-23648-7.html">Review: The Relentless Moon</a></dt>
<dd><p>
Review of The Relentless Moon by Mary Robinette Kowal.
</p></dd>
-<dt>2021-05-29 &mdash;
+<dt>2021-05-29 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044250-5.html">Review: The Silver Chair</a></dt>
<dd><p>
Review of The Silver Chair by C.S. Lewis.
</p></dd>
-<dt>2021-05-29 &mdash;
+<dt>2021-05-29 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
</p></dd>
-<dt>2021-05-15 &mdash;
+<dt>2021-05-15 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-250-18648-X.html">Review: A Desolation Called Peace</a></dt>
<dd><p>
Review of A Desolation Called Peace by Arkady Martine.
</p></dd>
-<dt>2021-05-02 &mdash;
+<dt>2021-05-02 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044260-2.html">Review: The Voyage of the Dawn Treader</a></dt>
<dd><p>
Review of The Voyage of the Dawn Treader by C.S. Lewis.
@@ -224,45 +230,45 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>April 2021</h2>
<dl>
-<dt>2021-04-27 &mdash;
+<dt>2021-04-27 —
<a href="https://www.eyrie.org/~eagle/reviews/books/beyond-shame.html">Review: Beyond Shame</a></dt>
<dd><p>
Review of Beyond Shame by Kit Rocha.
</p></dd>
-<dt>2021-04-24 &mdash;
+<dt>2021-04-24 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-4920-5172-1.html">Review: Learning React</a></dt>
<dd><p>
Review of Learning React by Alex Banks &amp; Eve Porcello.
</p></dd>
-<dt>2021-04-24 &mdash;
+<dt>2021-04-24 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add nominees for the 2021 Hugo Award</a></dt>
<dd><p>
Add the nominees for the 2021 Hugo Award for best novel.
</p></dd>
-<dt>2021-04-10 &mdash;
+<dt>2021-04-10 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
</p></dd>
-<dt>2021-04-05 &mdash;
+<dt>2021-04-05 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add 2021 winner of the BSFA award</a></dt>
<dd><p>
Add 2021 winner of the BSFA award for best novel (The City We Became, by
N.K. Jemisin).
</p></dd>
-<dt>2021-04-05 &mdash;
+<dt>2021-04-05 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add 2021 winner of the Philip K. Dick Award</a></dt>
<dd><p>
Add 2021 winner of the Philip K. Dick Award for best novel (The Road out
of Winter, by Alison Stine).
</p></dd>
-<dt>2021-04-03 &mdash;
+<dt>2021-04-03 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044240-8.html">Review: Prince Caspian</a></dt>
<dd><p>
Review of Prince Caspian by C.S. Lewis.
@@ -272,33 +278,33 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>March 2021</h2>
<dl>
-<dt>2021-03-30 &mdash;
+<dt>2021-03-30 —
<a href="https://www.eyrie.org/~eagle/reviews/books/paladins-strength.html">Review: Paladin's Strength</a></dt>
<dd><p>
Review of Paladin's Strength by T. Kingfisher.
</p></dd>
-<dt>2021-03-29 &mdash;
+<dt>2021-03-29 —
<a href="https://www.eyrie.org/~eagle/reviews/books/paladins-grace.html">Add series information to Paladin's Grace</a></dt>
<dd><p>
Paladin's Grace by T. Kingfisher is the first of a series. Add the
series information and a mention of the sequel.
</p></dd>
-<dt>2021-03-28 &mdash;
+<dt>2021-03-28 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-4919-5202-4.html">Review: JavaScript: The Definitive Guide</a></dt>
<dd><p>
Review of JavaScript: The Definitive Guide by David Flanagan.
</p></dd>
-<dt>2021-03-28 &mdash;
+<dt>2021-03-28 —
<a href="https://www.eyrie.org/~eagle/software/inn/">Add sample INN init script and systemd unit file</a></dt>
<dd><p>
In the documentation pages for INN CURRENT, 2.6, and 2.5, add the sample
init script and systemd unit.
</p></dd>
-<dt>2021-03-28 &mdash;
+<dt>2021-03-28 —
<a href="https://www.eyrie.org/~eagle/software/pod-thread/">Pod::Thread 2.00</a></dt>
<dd><p>
Handle the navbar and table of contents internally in the module rather
@@ -307,32 +313,32 @@ Also see changes from <a href="changes/2020.html">2020</a>,
contain an underscore.
</p></dd>
-<dt>2021-03-21 &mdash;
+<dt>2021-03-21 —
<a href="https://www.eyrie.org/~eagle/software/web/">cvs2xhtml 1.15</a></dt>
<dd><p>
Convert to Python 3. Update my email address.
</p></dd>
-<dt>2021-03-21 &mdash;
+<dt>2021-03-21 —
<a href="https://www.eyrie.org/~eagle/software/web/">cl2xhtml 1.12</a></dt>
<dd><p>
Convert to Python 3. Update my email address.
</p></dd>
-<dt>2021-03-21 &mdash;
+<dt>2021-03-21 —
<a href="https://www.eyrie.org/~eagle/software/web/">faq2html 1.36</a></dt>
<dd><p>
Support formatting of dense bullet lists with line continuations but no
blank lines between bullets. Update my email address.
</p></dd>
-<dt>2021-03-21 &mdash;
+<dt>2021-03-21 —
<a href="https://www.eyrie.org/~eagle/software/debian.html">Remove DocKnot from my personal Debian repository list</a></dt>
<dd><p>
DocKnot has now been uploaded to Debian proper.
</p></dd>
-<dt>2021-03-21 &mdash;
+<dt>2021-03-21 —
<a href="https://www.eyrie.org/~eagle/software/pod-thread/">Add separate web pages for Pod::Thread</a></dt>
<dd><p>
As the first step in cleaning up my static site generator pages, and in
@@ -340,14 +346,14 @@ Also see changes from <a href="changes/2020.html">2020</a>,
its own separate web pages.
</p></dd>
-<dt>2021-03-20 &mdash;
+<dt>2021-03-20 —
<a href="https://www.eyrie.org/~eagle/software/pam-krb5/">pam-krb5 4.10</a></dt>
<dd><p>
Fix use-after-free if krb5_cc_get_principal fails on the newly-created
ticket cache.
</p></dd>
-<dt>2021-03-20 &mdash;
+<dt>2021-03-20 —
<a href="https://www.eyrie.org/~eagle/software/rra-c-util/">rra-c-util 9.0</a></dt>
<dd><p>
Rename SQLite Autoconf macros and their outputs from SQLITE to SQLITE3.
@@ -361,7 +367,7 @@ Also see changes from <a href="changes/2020.html">2020</a>,
perlcritic with YAML::XS.
</p></dd>
-<dt>2021-03-20 &mdash;
+<dt>2021-03-20 —
<a href="https://www.eyrie.org/~eagle/personal/contact.html">Clean GnuPG key</a></dt>
<dd><p>
Refresh the expiration on my signing key and re-export my key with the
@@ -369,27 +375,27 @@ Also see changes from <a href="changes/2020.html">2020</a>,
signatures.
</p></dd>
-<dt>2021-03-20 &mdash;
+<dt>2021-03-20 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add nominees for 2021 Nebula Award for best novel</a></dt>
<dd><p>
Add the nominees for the 2021 Nebula Award for best novel.
</p></dd>
-<dt>2021-03-14 &mdash;
+<dt>2021-03-14 —
<a href="https://www.eyrie.org/~eagle/journal/2021-03/001.html">New experimental Big Eight control message signing key</a></dt>
<dd><p>
Published a new experimental signing key for Big Eight control messages
that was generated with a modern GnuPG.
</p></dd>
-<dt>2021-03-13 &mdash;
+<dt>2021-03-13 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Add 2020 British Fantasy Award winner</a></dt>
<dd><p>
Add winner of the 2020 British Fantasy Robert Holdstock Award for best
fantasy novel (The Bone Ships, by RJ Barker).
</p></dd>
-<dt>2021-03-01 &mdash;
+<dt>2021-03-01 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-02-044220-3.html">Review: The Lion, the Witch and the Wardrobe</a></dt>
<dd><p>
Review of The Lion, the Witch and the Wardrobe by C.S. Lewis.
@@ -399,13 +405,13 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>February 2021</h2>
<dl>
-<dt>2021-02-28 &mdash;
+<dt>2021-02-28 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-250-21546-3.html">Review: Architects of Memory</a></dt>
<dd><p>
Review of Architects of Memory by Karen Osborne.
</p></dd>
-<dt>2021-02-27 &mdash;
+<dt>2021-02-27 —
<a href="https://www.eyrie.org/~eagle/software/docknot/">DocKnot 4.01</a></dt>
<dd><p>
Add support for a global user configuration file. Allow the distribution
@@ -415,50 +421,50 @@ Also see changes from <a href="changes/2020.html">2020</a>,
4.00 release.
</p></dd>
-<dt>2021-02-21 &mdash;
+<dt>2021-02-21 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-7564-1511-X.html">Review: Finder</a></dt>
<dd><p>
Review of Finder by Suzanne Palmer.
</p></dd>
-<dt>2021-02-20 &mdash;
+<dt>2021-02-20 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-7653-9893-1.html">Review: The Fated Sky</a></dt>
<dd><p>
Review of The Fated Sky by Mary Robinette Kowal.
</p></dd>
-<dt>2021-02-17 &mdash;
+<dt>2021-02-17 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-9821-5694-5.html">Review: Solutions and Other Problems</a></dt>
<dd><p>
Review of Solutions and Other Problems by Allie Brosh.
</p></dd>
-<dt>2021-02-14 &mdash;
+<dt>2021-02-14 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-4516-3937-6.html">Review: Spheres of Influence</a></dt>
<dd><p>
Review of Spheres of Influence by Ryk E. Spoor.
</p></dd>
-<dt>2021-02-14 &mdash;
+<dt>2021-02-14 —
<a href="https://www.eyrie.org/~eagle/reviews/mythopoeic.html">Add winner of 2020 Mythopoeic Award</a></dt>
<dd><p>
Add the winner of the (delayed) 2020 Mythopoeic Fantasy Award for Adult
Literature (Snow White Learns Witchcraft, by Theodora Goss).
</p></dd>
-<dt>2021-02-13 &mdash;
+<dt>2021-02-13 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
</p></dd>
-<dt>2021-02-07 &mdash;
+<dt>2021-02-07 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-7653-9212-7.html">Review: The Future of Another Timeline</a></dt>
<dd><p>
Review of The Future of Another Timeline by Annalee Newitz.
</p></dd>
-<dt>2021-02-01 &mdash;
+<dt>2021-02-01 —
<a href="https://www.eyrie.org/~eagle/changes.html">Remove changes from December 2020</a></dt>
<dd><p>
Remove the changes from December 2020 from the recent changes
@@ -469,13 +475,13 @@ Also see changes from <a href="changes/2020.html">2020</a>,
<h2>January 2021</h2>
<dl>
-<dt>2021-01-30 &mdash;
+<dt>2021-01-30 —
<a href="https://www.eyrie.org/~eagle/">Broken link cleanup</a></dt>
<dd><p>
Another periodic cleanup of broken links.
</p></dd>
-<dt>2021-01-28 &mdash;
+<dt>2021-01-28 —
<a href="https://www.eyrie.org/~eagle/software/inn/">INN 2.6.4</a></dt>
<dd><p>
Added support for systemd notifications and socket activation. Adapt the
@@ -488,44 +494,44 @@ Also see changes from <a href="changes/2020.html">2020</a>,
hardening flags.
</p></dd>
-<dt>2021-01-26 &mdash;
+<dt>2021-01-26 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-593-12849-4.html">Review: A Deadly Education</a></dt>
<dd><p>
Review of A Deadly Education by Naomi Novik.
</p></dd>
-<dt>2021-01-25 &mdash;
+<dt>2021-01-25 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-316-50985-X.html">Review: The City We Became</a></dt>
<dd><p>
Review of The City We Became by N.K. Jemisin.
</p></dd>
-<dt>2021-01-24 &mdash;
+<dt>2021-01-24 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-9821-4013-5.html">Review: Laziness Does Not Exist</a></dt>
<dd><p>
Review of Laziness Does Not Exist by Devon Price.
</p></dd>
-<dt>2021-01-18 &mdash;
+<dt>2021-01-18 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-5098-4115-6.html">Review: The Secret Barrister</a></dt>
<dd><p>
Review of The Secret Barrister by The Secret Barrister.
</p></dd>
-<dt>2021-01-04 &mdash;
+<dt>2021-01-04 —
<a href="https://www.eyrie.org/~eagle/journal/">Update some blog roll links</a></dt>
<dd><p>
Update URL to Nicola Griffith's blog, and switch Karl Schroeder's blog to
https.
</p></dd>
-<dt>2021-01-03 &mdash;
+<dt>2021-01-03 —
<a href="https://www.eyrie.org/~eagle/reviews/books/0-316-42202-9.html">Review: The Once and Future Witches</a></dt>
<dd><p>
Review of The Once and Future Witches by Alix E. Harrow.
</p></dd>
-<dt>2021-01-01 &mdash;
+<dt>2021-01-01 —
<a href="https://www.eyrie.org/~eagle/reviews/awards.html">Update award winners</a></dt>
<dd><p>
Add links to all award pages that have good award web sites. Add notes
@@ -535,14 +541,14 @@ Also see changes from <a href="changes/2020.html">2020</a>,
by Silvia Moreno-Garcia).
</p></dd>
-<dt>2021-01-01 &mdash;
+<dt>2021-01-01 —
<a href="https://www.eyrie.org/~eagle/changes/2020.html">Rotate 2020 changes</a></dt>
<dd><p>
Move all web site changes from 2020 to a separate page and remove all
entries older than December of 2020 from the current changes page.
</p></dd>
-<dt>2021-01-01 &mdash;
+<dt>2021-01-01 —
<a href="https://www.eyrie.org/~eagle/reviews/year/2020.html">2020 reading in review</a></dt>
<dd><p>
Add an overview of my 2020 reading, main book recommendations, and
diff --git a/t/data/spin/output/changes.rss b/t/data/spin/output/changes.rss
index 1c2ee33..d4246cb 100644
--- a/t/data/spin/output/changes.rss
+++ b/t/data/spin/output/changes.rss
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
- <title>Changes to Russ Allbery's Web Pages</title>
+ <title>Changes to Russ Allbery&apos;s Web Pages</title>
<link>https://www.eyrie.org/~eagle/</link>
- <description>Recent changes to Russ Allbery's web pages.</description>
+ <description>Recent changes to Russ Allbery&apos;s web pages.</description>
<language>en-us</language>
<pubDate>%DATE%</pubDate>
<lastBuildDate>%DATE%</lastBuildDate>
@@ -12,6 +12,15 @@
type="application/rss+xml" />
<item>
+ <title>Test UTF-8 entry</title>
+ <link>https://www.eyrie.org/~eagle/</link>
+ <description><![CDATA[
+ <p>Test entry — with UTF-8 dash.</p>
+ ]]></description>
+ <pubDate>%DATE%</pubDate>
+ <guid isPermaLink="false">%DATE%</guid>
+ </item>
+ <item>
<title>kstart 4.3</title>
<link>https://www.eyrie.org/~eagle/software/kstart/</link>
<description><![CDATA[
@@ -148,14 +157,5 @@
<pubDate>%DATE%</pubDate>
<guid isPermaLink="false">%DATE%</guid>
</item>
- <item>
- <title>Review: The Magician's Nephew</title>
- <link>https://www.eyrie.org/~eagle/reviews/books/0-02-044230-0.html</link>
- <description><![CDATA[
- <p>Review of The Magician's Nephew by C.S. Lewis.</p>
- ]]></description>
- <pubDate>%DATE%</pubDate>
- <guid isPermaLink="false">%DATE%</guid>
- </item>
</channel>
</rss>
diff --git a/t/data/spin/output/journal/debian.rss b/t/data/spin/output/journal/debian.rss
index 10be70b..c4f0c86 100644
--- a/t/data/spin/output/journal/debian.rss
+++ b/t/data/spin/output/journal/debian.rss
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
- <title>Eagle's Path</title>
+ <title>Eagle&apos;s Path</title>
<link>https://www.eyrie.org/~eagle/</link>
- <description>"Passion and dispassion. Choose two." -- Larry Wall</description>
+ <description>&quot;Passion and dispassion. Choose two.&quot; -- Larry Wall</description>
<language>en-us</language>
<pubDate>%DATE%</pubDate>
<lastBuildDate>%DATE%</lastBuildDate>
diff --git a/t/data/spin/output/journal/index.html b/t/data/spin/output/journal/index.html
index ba16e82..f13cda8 100644
--- a/t/data/spin/output/journal/index.html
+++ b/t/data/spin/output/journal/index.html
@@ -651,7 +651,7 @@ things that I've not read but that are on my to-read list.
Christian faith to make any sense.</li>
</ol>
-<p class="footer">2011-08-13 00:09 &mdash;
+<p class="footer">2011-08-13 00:09 —
<a href="https://www.eyrie.org/~eagle/journal/2011-08/006.html">Permanent link</a></p>
<h2>2007-01-14: Review: Fermat's Enigma</h2>
@@ -703,7 +703,7 @@ Fermat's Last Theorem is the infamous proposal that:
has no solutions for integer <i>x, y, z, n</i> and <i>n &gt; 2</i>. It's
infamous for being very simple to state and understand, a variation on the
equation produced by the Pythagorean Theorem, but incredibly difficult to
-prove. It's also infamous for Pierre de Fermat's maddening marginal note:
+prove. It's also infamous for Pierre de Fermat's maddening marginal note —
"I have discovered a truly marvelous demonstration of this proposition
which this margin is too narrow to contain." 350 years after Fermat wrote
this, the theorem was still unproven in the general case, although the
@@ -796,7 +796,7 @@ includes several interesting nuggets of mathematical history.
Rating: 6 out of 10
</p>
-<p class="footer">2007-01-14 21:30 &mdash;
+<p class="footer">2007-01-14 21:30 —
<a href="https://www.eyrie.org/~eagle/reviews/books/1-250-30112-2.html">Permanent link</a></p></div>
<address>
diff --git a/t/data/spin/output/journal/index.rss b/t/data/spin/output/journal/index.rss
index 4dee08f..148989b 100644
--- a/t/data/spin/output/journal/index.rss
+++ b/t/data/spin/output/journal/index.rss
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
- <title>Eagle's Path</title>
+ <title>Eagle&apos;s Path</title>
<link>https://www.eyrie.org/~eagle/</link>
- <description>"Passion and dispassion. Choose two." -- Larry Wall</description>
+ <description>&quot;Passion and dispassion. Choose two.&quot; -- Larry Wall</description>
<language>en-us</language>
<pubDate>%DATE%</pubDate>
<lastBuildDate>%DATE%</lastBuildDate>
@@ -378,7 +378,7 @@ things that I've not read but that are on my to-read list.
<guid>https://www.eyrie.org/~eagle/journal/2011-08/006.html</guid>
</item>
<item>
- <title>Review: Fermat's Enigma</title>
+ <title>Review: Fermat&apos;s Enigma</title>
<link>https://www.eyrie.org/~eagle/reviews/books/1-250-30112-2.html</link>
<description><![CDATA[
<p>Review: <cite>Fermat's Enigma</cite>, by Simon Singh</p>
@@ -421,7 +421,7 @@ Fermat's Last Theorem is the infamous proposal that:
has no solutions for integer <i>x, y, z, n</i> and <i>n &gt; 2</i>. It's
infamous for being very simple to state and understand, a variation on the
equation produced by the Pythagorean Theorem, but incredibly difficult to
-prove. It's also infamous for Pierre de Fermat's maddening marginal note:
+prove. It's also infamous for Pierre de Fermat's maddening marginal note —
"I have discovered a truly marvelous demonstration of this proposition
which this margin is too narrow to contain." 350 years after Fermat wrote
this, the theorem was still unproven in the general case, although the
diff --git a/t/data/spin/output/journal/reviews.rss b/t/data/spin/output/journal/reviews.rss
index 5632834..ca070d6 100644
--- a/t/data/spin/output/journal/reviews.rss
+++ b/t/data/spin/output/journal/reviews.rss
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
- <title>Eagle's Path</title>
+ <title>Eagle&apos;s Path</title>
<link>https://www.eyrie.org/~eagle/</link>
- <description>"Passion and dispassion. Choose two." -- Larry Wall</description>
+ <description>&quot;Passion and dispassion. Choose two.&quot; -- Larry Wall</description>
<language>en-us</language>
<pubDate>%DATE%</pubDate>
<lastBuildDate>%DATE%</lastBuildDate>
@@ -12,7 +12,7 @@
type="application/rss+xml" />
<item>
- <title>Review: Fermat's Enigma</title>
+ <title>Review: Fermat&apos;s Enigma</title>
<link>https://www.eyrie.org/~eagle/reviews/books/1-250-30112-2.html</link>
<description><![CDATA[
<p>Review: <cite>Fermat's Enigma</cite>, by Simon Singh</p>
@@ -55,7 +55,7 @@ Fermat's Last Theorem is the infamous proposal that:
has no solutions for integer <i>x, y, z, n</i> and <i>n &gt; 2</i>. It's
infamous for being very simple to state and understand, a variation on the
equation produced by the Pythagorean Theorem, but incredibly difficult to
-prove. It's also infamous for Pierre de Fermat's maddening marginal note:
+prove. It's also infamous for Pierre de Fermat's maddening marginal note —
"I have discovered a truly marvelous demonstration of this proposition
which this margin is too narrow to contain." 350 years after Fermat wrote
this, the theorem was still unproven in the general case, although the
diff --git a/t/data/spin/output/reviews/books/0-385-49362-2.html b/t/data/spin/output/reviews/books/0-385-49362-2.html
index 56f6900..e70d263 100644
--- a/t/data/spin/output/reviews/books/0-385-49362-2.html
+++ b/t/data/spin/output/reviews/books/0-385-49362-2.html
@@ -65,7 +65,7 @@ Fermat's Last Theorem is the infamous proposal that:
has no solutions for integer <i>x, y, z, n</i> and <i>n &gt; 2</i>. It's
infamous for being very simple to state and understand, a variation on the
equation produced by the Pythagorean Theorem, but incredibly difficult to
-prove. It's also infamous for Pierre de Fermat's maddening marginal note:
+prove. It's also infamous for Pierre de Fermat's maddening marginal note —
"I have discovered a truly marvelous demonstration of this proposition
which this margin is too narrow to contain." 350 years after Fermat wrote
this, the theorem was still unproven in the general case, although the