2013 Changes

This page lists all changes to my web site in 2013, except for new journal entries, along with a brief description. For more recent changes and the current RSS feed, see the current changes page. For older changes, see the changes for 2012, 2011, 2010, 2009, and 2008.

December 2013

2013-12-31 — Review: The Female Man

Review of The Female Man by Joanna Russ.

2013-12-28 — Review: The Incrementalists

Review of The Incrementalists by Steven Brust & Skyler White.

2013-12-28 — lbcd 3.5.0

lbcd no longer allows the client to probe any service. Instead, only services specified with -w or -a are allowed. Drop support for lbcd -r and -s, and no longer write a PID file by default. lbcdclient is a complete rewrite with a different command-line syntax and different output format. lbcd supports new -f (run in the foreground) and -l (log every client request to syslog) options. Ignore SIGHUP instead of exiting, and exit cleanly and remove the PID file on SIGTERM and SIGINT. Add client and server support for IPv6 and server support for multiple bind addresses. Fix user on console detection with modern display manager sessions. Add support for systemd, including installed unit files, systemd synchronization notification, and socket activation. Add support for upstart synchronization via a new -Z option. Fix a source typo that prevented compilation on Mac OS X.

2013-12-27 — rra-c-util 5.0

Add the socket type to the network_bind_* functions so that they can be used with UDP services. network_bind_all now returns a boolean that's false if binding fails. All network_bind_* functions now set errno properly in more cases. New network_wait_any function to wait for a set of file descriptors to select for read, used for UDP services to wait for an incoming packet. vector_free and cvector_free can now take NULL. Add a new TAP add-on to start background processes used by test cases that integrates the log files with the process output and rewrite the remctl TAP add-on to use it. Add Autoconf probes for Berkeley DB and zlib.

2013-12-25 — C TAP Harness 2.4

Add new diag_file_add and diag_file_remove functions to manage a list of log files whose contents are interleved with the rest of the output of a test program.

2013-12-23 — Review: The Death of Bees

Review of The Death of Bees by Lisa O'Donnell.

2013-12-21 — Review: They Had to Go Out

Review of They Had to Go Out by Gary J. Hudson.

2013-12-17 — lbcd 3.4.2

Switch to getutxent from getutent by default, which should fix build issues on Mac OS X. Add support for FreeBSD and Debian GNU/kFreeBSD as long as the /proc file system is mounted.

2013-12-16 — krb5-strength 2.2

Add support for character class restrictions, possibly qualified by password length. Add new filtering capabilities to cdbmake-wordlist and support running in filter mode. Fix a file descriptor and memory leak in the embedded CrackLib version.

2013-12-09 — krb5-sync 3.0

Add new config option ad_base_instance to specify an instance that, if it exists, synchronizes its password to the non-instance-qualified version of the account in Active Directory. Change the name of the module to sync.so. Change the ad_ldap_base configuration parameter to require the fully-qualified DN of the Active Directory account tree. Drop support for MIT Kerberos prior to 1.9. New configuration options ad_queue_only, to force all changes to be queued, and syslog, to disable internal syslog logging. Queue all password changes that fail the Active Directory password change. Rewrite krb5-sync-backend to use IPC::Run and Net::Remctl::Backend. Add support for a -d option to specify the queue path, and skip processed events that no longer exist.

2013-12-09 — rra-c-util 4.12

Fix a bug in all _OPTIONAL macros that use lib-helper where --with options were handled incorrectly. Add SASL Autoconf macros contributed by Julien ÉLIE. Add KADM5_MISSING_KRB5_CONF_PARAMS support to portable/kadmin.h. Add test_tmpfile to Test::RRA::Automake. Add dlerror ignore to the valgrind suppression file.

2013-12-07 — Further INN web page cleanup

Point all the distribution links consistently at ftp.isc.org. Add a link to the news.software.nntp newsgroup in the support category.

2013-12-05 — Broken link cleaup

Another periodic cleanup of broken links and removing of permanent redirects.

November 2013

2013-11-29 — git-pbuilder 1.31

Pass --distribution instead of --dist to pbuilder and cowbuilder. Those are the documented options, and --dist appears to not work for at least some people.

2013-11-24 — Redid the INN software page

Revise the INN page on this site to use my new current style for software pages and include more of the contributed links that were on the old ISC web site. Update the URL for the ISC download, but link to more content from my own site. Fix the minimum requirement for Perl and include the actual license on the page.

2013-11-21 — Review: The Pathway to Awesomeness

Review of The Pathway to Awesomeness by Mark Forster.

2013-11-17 — Review: Anathem

Review of Anathem by Neal Stephenson.

2013-11-16 — Review: Wanderlust

Review of Wanderlust by Ann Aguirre.

2013-11-15 — Review: Blue Remembered Earth

Review of Blue Remembered Earth by Alastair Reynolds.

2013-11-14 — rra-c-util 4.11

RRA_LIB_KRB5 macros now define HAVE_KRB5 instead of HAVE_KERBEROS and set rra_use_KRB5 instead of rra_use_kerberos, and all included code has been updated accordingly. RRA_LIB_KRB5_OPTIONAL configures the package to not use Kerberos instead of failing if neither Kerberos error APIs nor com_err could be found. The Kerberos macros no longer require Automake. All *_OPTIONAL macros uniformly use rra_use_* shell variables to indicate whether the library was found. RRA_LIB_OPENSSL macros now define HAVE_OPENSSL instead of HAVE_SSL, properly restore compiler and linker flags after probing, and check for libdl where appropriate. RRA_LIB_OPENSSL_OPTIONAL no longer aborts if libcrypto could not be found. All provided functions check the return status of snprintf, asprintf, and related functions, and xasprintf and xvasprintf distinguish between memory allocation failures and other failures. The vasprintf replacement preserves the snprintf errno setting. portable/socket.h defines EAI_ADDRFAMILY.

2013-11-13 — Review: Water Logic

Review of Water Logic by Laurie J. Marks.

2013-11-13 — C TAP Harness 2.3

New test_cleanup_register function to register a callback that's run at the end of the test program and gets a boolean flag saying whether all tests were successful. Suppress lazy plans and the test summary if the test aborted with bail. Add the warn_unused_result attribute to the functions whose return value really shouldn't be ignored.

2013-11-08 — Review: Fantasy & Science Fiction, July/August 2011

Review of Fantasy & Science Fiction, July/August 2011.

2013-11-06 — Review: Muse of Fire

Review of Muse of Fire by John Scalzi.

2013-11-05 — Broken link cleaup

Another periodic cleanup of broken links and removing of permanent redirects.

2013-11-05 — git-pbuilder 1.30

Fix the URL for the backports archive for wheezy and later. Update my email address.

2013-11-04 — Review: Asimov's Science Fiction, August 2011

Review of Asimov's Science Fiction, August 2011.

2013-11-03 — Add 2013 World Fantasy and British Fantasy winners

Add the 2013 World Fantasy winner for best novel (Alif the Unseen, by G. Willow Wilson), and the 2013 British Fantasy Robert Holdstock award (Some Kind of Fairy Tale, by Graham Joyce).

2013-11-02 — Review: The Walls of Westernfort

Review of The Walls of Westernfort by Jane Fletcher.

2013-11-01 — Review: Fantasy & Science Fiction, May/June 2011

Review of Fantasy & Science Fiction, May/June 2011.

October 2013

2013-10-29 — Add Ohloh analysis of AFS::PAG

AFS::PAG has been added to Ohloh. Add a sidebar link to the code analysis information.

2013-10-29 — Add Ohloh analysis of krb5-strength

krb5-strength has been added to Ohloh. Add a sidebar link to the code analysis information.

2013-10-25 — Review: Why We Fail

Review of Why We Fail by Victor Lombardi.

2013-10-23 — Review: Applied Cryptography

Review of Applied Cryptography by Bruce Schneier.

2013-10-22 — Review: Lean In

Review of Lean In by Sheryl Sandberg & Nell Scovell.

2013-10-10 — kadmin-remctl 3.5

Increase the timeouts for running kpasswd. Fix Perl warnings when kpasswd times out. Use get instead of list for checking principal existence in the Heimdal backend. Recognize the new Heimdal kpasswd prompts. Stop mapping password quality errors in the Heimdal backend and instead just strip a prefix from an external password check program. Check the existence of a principal before enabling or disabling for better error reporting.

2013-10-10 — krb5-strength 2.1

Fix builds when CDB support is disabled. Fix --with-tinycdb with no argument. Tweak the password rejection error messages.

2013-10-09 — Review: 2312

Review of 2312 by Kim Stanley Robinson.

2013-10-07 — Review: Grimspace

Review of Grimspace by Ann Aguirre.

2013-10-07 — krb5-strength 2.0

Add support for the MIT password quality plugin API in MIT Kerberos 1.9 and later. Support CDB dictionaries with a simpler set of transforms before dictionary lookup. Add support for minimum password lengths, requiring a non-alphabetic character, and rejecting non-ASCII or non-printable characters. Allow configuring the plugin without a dictionary. Add more comprehensive tests for passwords based on the principal. Fix some behavior of the embedded CrackLib with longer passwords. Drop support for versions of Heimdal that don't install the kadm5-pwcheck.h header.

2013-10-06 — AFS::PAG 1.01

Fix configuration and build when using libkafs or libkopenafs instead of the internal replacement. Fix metadata to indicate that autodie is required, since it wasn't included in Perl 5.10.0.

2013-10-05 — podlators 2.5.3

Skip Pod::Simple error tests that only trigger with recent versions of Pod::Simple. Fix a documentation bug in specifying the default value of the errors parameter.

2013-10-05 — Update notes on Kindle books

Clarify that I take the cover pictures for Kindle books from Powell's as well as Amazon.

2013-10-05 — Review: Captain Vorpatril's Alliance

Review of Captain Vorpatril's Alliance by Lois McMaster Bujold.

2013-10-05 — Redo Term::ANSIColor change documentation

Term::ANSIColor now uses a regular NEWS file instead of a ChangeLog file. Adjust the software pages accordingly.

2013-10-05 — Broken link cleaup

Another periodic cleanup of broken links and removing of permanent redirects.

2013-10-04 — rra-c-util 4.10

Add Autoconf macros to probe for the TinyCDB library. Change the names and variables of the Autoconf probes for OpenSSL libraries and add an optional variant. In use_prereq in Test::RRA, support version numbers with underscores and report the required version number in skip messages. Support excluding some Perl scripts from strictness tests. Add portability for kadmin error codes and improved portability for krb5_free_default_realm replacements on Heimdal. Avoid leaking dummy symbols from the portability library.

September 2013

2013-09-22 — podlators 2.5.2

Apply performance patches to increase Pod::Man speed by about 10%. Set a default output file handle for parse_string_document and parse_lines. Fix handling of empty documents with error sections. Fix various typos and documentation formatting issues.

2013-09-21 — Add nominees for 2013 World Fantasy award

Add the nominees for the 2013 World Fantasy award for best novel.

2013-09-21 — Add 2013 Hugo winner

Add the winner of the 2013 Hugo Award for best novel (Redshirts, by John Scalzi).

2013-09-21 — Review: Throne of the Crescent Moon

Review of Throne of the Crescent Moon by Saladin Ahmed.

2013-09-21 — Broken link cleaup

Another periodic cleanup of broken links and removing of permanent redirects.

2013-09-16 — pam-webauth-otp 1.0

First public release of a PAM module that does OTP validation by talking to a WebAuth user information service.

2013-09-12 — AFS::PAG 1.00

First release of a Perl module that provides a native API to the PAG manipulation functions exposed by libkafs and libkopenafs: hasafs, haspag, setpag, and unlog.

August 2013

2013-08-31 — Review: An Artificial Night

Review of An Artificial Night by Seanan McGuire.

2013-08-31 — Review: Redshirts

Review of Redshirts by John Scalzi.

2013-08-31 — Add 2013 Mythopoeic Adult Literature winner

Add the winner of the 2013 Mythopoeic award for adult literature (Digger volumes 1 through 6, by Ursula Vernon).

2013-08-29 — Correct information about Bagthorpe TV show

This was a children's program instead of a sitcom and was an adaptation of the first two books. Correction from Gareth Randall.

2013-08-29 — WebAuth 4.5.5

Fix replay detection and extend it and rate limiting to multifactor logins as well. Report accurate error messages for validation service rejections and return the user to the code entry page instead of a dead-end error page. Support remembering that the user has been sent an SMS message and returning to the code entry page after an error.

2013-08-16 — WebAuth 4.5.4

Mismatches between user login tokens and webkdc-proxy tokens are now noted in the logs but no longer a fatal error. Non-password session factor requirements are now handled properly, and handling of required initial factors used with authentication mechanisms that don't include password is more correct. The combination of multifactor with a required Kerberos authenticator and a non-Kerberos password authentication is now handled more correctly. WebLogin retries the WebKDC POST once in case it failed due to being interrupted by a signal from the FastCGI process manager, and also ignores SIGPIPE errors. WebLogin produces better error messages for POST failures, XML parsing failures, some multifactor failures, and missing service tokens. mod_webkdc requires that return URLs be absolute and not contain any non-ASCII characters. Do not do replay detection on password changes, since it doesn't apply to them. Munge XML returned by the WebKDC that contains non-ASCII characters before doing XML parsing. Fix logging of authentication failures in the WebKDC. Fix a prototype error for webauth_user_validate. Log whenever mod_webkdc ignores expired webkdc-factor or webkdc-proxy tokens. Set the version of all Perl modules to reflect the WebAuth release.

2013-08-14 — remctl 3.6

If a user of the client library specifies a timeout, retry the non-blocking connect if it's interrupted by a signal. Fix the help output from Net::Remctl::Backend for commands with very long syntax. Fix compilation issues on Mac OS X and older Red Hat.

2013-08-14 — rra-c-util 4.9

Add btter support for k_pioctl in the libkafs portability layer, and prototypes for libkafs functions if the library is found but no headers. Improve the standard Perl tests in various ways. Retry waiting for a non-blocking connect in network_connect with a timeout if interrupted by a signal. Make the PCRE Autoconf probes cope with systems with a library but no header files. Add a new test and utility script to check or update the version numbers of embedded Perl modules.

2013-08-14 — C TAP Harness 2.2

Change the exit status of the bail and sysbail functions to 255 to match Perl's Test::More. Document why runtests's handling of bailing test cases doesn't match Test::More.

July 2013

2013-07-31 — Review: And Playing the Role of Herself

Review of And Playing the Role of Herself by K.E. Lane.

2013-07-21 — Broken link cleaup

Another periodic cleanup of broken links and removing of permanent redirects.

2013-07-10 — kadmin-remctl 3.4

Set disallow-svr for all newly-created principals. Relax the default allowed principal regex to permit two-character principals. Improve the documentation for the Heimdal backend.

2013-07-01 — Add Campbell and Locus winners

Add 2013 winners of the John W. Campbell Memorial Award (Jack Glass by Adam Roberts), the Locus SF award (Redshirts by John Scalzi), and the Locus fantasy award (The Apocalypse Codex by Charles Stross).

June 2013

2013-06-30 — Review: Dark Lies the Island

Review of Dark Lies the Island by Kevin Barry.

2013-06-30 — release 1.46

Add support for generating release tarballs from a Module::Build Perl module build system.

2013-06-30 — faq2html 1.32

Support multiple subheadings at the top of a page if the line after a blank line is another centered line. This fixes problems with determination of the baseline indent for software README files.

2013-06-30 — Pod::Thread 1.01

Properly encode the output for UTF-8. Strip formatting codes from headings for the table of contents and navbar as the workaround for the lack of real parsing there. Avoid whitespace formatting errors on paragraph wrapping. Modernize the build system and test suite.

2013-06-28 — remctl 3.5

Fix long-standing race condition leading to data corruption when sending large amounts of output from a command that immediately exits. Make remctl_set_ccache thread-safe if the GSS-API and Kerberos libraries support it. Fix the versioning of the Perl modules.

2013-06-27 — Review: This Alien Shore

Review of This Alien Shore by C.S. Friedman.

2013-06-26 — Review: The Odd Clauses

Review of The Odd Clauses by Jay Wexler.

2013-06-25 — Review: River of Stars

Review of River of Stars by Guy Gavriel Kay.

2013-06-01 — control-archive 1.6.0

Preserve the timestamp when exporting the control.ctl file and logs. Suppress a blank line in the logs when processing invalid checkgroups. Improve the suggestions around newsgroups line lengths. Hierarchy updates for bofh.*, grisbi.*, and dictator.*.

May 2013

2013-05-29 — Review: Get Everything Done

Review of Get Everything Done by Mark Forster.

2013-05-28 — Review: The Making of the Indebted Man

Review of The Making of the Indebted Man by Maurizio Lazzarato.

2013-05-28 — Remove changes from December 2012

Remove the changes from December 2012 from the Recent Changes page. (I'm a little late in doing this rollover; usually I do it in February.)

2013-05-28 — Add CVE ID for recent WebAuth vulnerability

A CVE ID was assigned to this vulnerability, so add that CVE ID to the security advisory.

2013-05-27 — Review: Advanced Perl Programming

Review of Advanced Perl Programming by Sriram Srinivasan.

2013-05-27 — Add Nebula and Clarke winners

Add the 2013 winner of the Clarke award (Dark Eden by Chris Beckett) and the Nebula award for best novel (2312 by Kim Stanley Robinson).

2013-05-27 — INN radius.conf renamed to inn-radius.conf

Due to a file conflict with the configuration for the actual RADIUS server, the configuration file for the INN RADIUS authenticator was renamed to inn-radius.conf. Adjust the documentation sites accordingly.

2013-05-15 — Review: Asimov's Science Fiction, July 2011

Review of Asimov's Science Fiction, July 2011.

2013-05-15 — WebAuth 4.5.3

Clear headers between requests in WebLogin, fixing an infinite redirect loop and a security vulnerability (information leakage) for WebLogin installations using FastCGI and the $REMUSER_REDIRECT setting.

2013-05-14 — WebAuth 4.5.2

Allow WebLogin to preserve remember_login across failed login attempts. Properly clear failed login attempts after a successful login. Set cookies properly on the WebLogin error page. Stop erroneously clearing cookies when redirecting the user to check for cookie support.

2013-05-14 — backport 1.30

Backport to wheezy by default, and change the definitions of stable and oldstable.

2013-05-03 — Review: Democracy at Work

Review of Democracy at Work by Richard Wolff.

2013-05-01 — Review: The System of the World

Review of The System of the World by Neal Stephenson.

2013-05-01 — WebAuth 4.5.1

Fix bugs in remember_login that caused single sign-on cookies to be discarded in default configurations. Clarify the template changes required to use the remember_login feature. Preserve remember_login through a forced password change. Pass any user information service message through to the WebLogin confirmation page. Avoid unnecessarily recreating WebAuth cookies in WebLogin. Fix some minor bugs in the installable mod_webauth test suite.

April 2013

2013-04-30 — Review: Questions for a Soldier

Review of Questions for a Soldier by John Scalzi.

2013-04-26 — WebAuth 4.5.0

Revert change in interpretation of WebAuthForceLogin. Add support for not setting single sign-on cookies (requires either a template update or a configuration change to preserve previous behavior). Fix password change handling in WebLogin. Improved Apache error logging. Fix random session multifactor requirements. Add new mod_webauthldap directive to query operational attributes. Drop WebLogin support for querying kadmin-remctl for password expiration in favor of using user information service results. Pass the password expiration in seconds since epoch for better template localization. Add support for persistent cookies that contribute to authentication factors and provide a means to invalidate them. Support passing a user message from the user information service to multifactor login pages. Tell the user information service the current authentication factors. Allow the user information service to require specific factors and add factors to an authentication. Pass opaque login state between WebLogin and the user information service. Tell the user information service what type of OTP authentication was used. Allow the user information service to specify the expiration time of factors. Significant improvements to the internal APIs. Drop support for obtaining proxy tokens via <getTokenRequest>. Fix compilation error with Heimdal.

2013-04-10 — Review: Familiar

Review of Familiar by J. Robert Lennon.

2013-04-08 — Review: Judge Sn Goes Golfing

Review of Judge Sn Goes Golfing by John Scalzi.

2013-04-01 — Review: An Election

Review of An Election by John Scalzi.

2013-04-01 — Add Nebula award nominees

Add the nominees for the 2013 Nebula award for best novel.

March 2013

2013-03-31 — Review: Echo

Review of Echo by Jack McDevitt.

2013-03-31 — New award winners and nominees

Add the 2013 winner of the BFSA award for best novel (Jack Glass by Adam Roberts), the 2013 winner of the Philip K. Dick award (Lost Everything by Brian Francis Slattery), and the 2013 Hugo nominee slate.

2013-03-28 — lbcd 3.4.1

Add support for a nolbcd file, which forces the default service to return the maximum weight. Document and improve lbcd -t mode. Stop rewriting maximum weights in lbcdclient to -1. Document /etc/nologin support.

2013-03-27 — wallet 1.0

Owners of wallet objects are now allowed to destroy them by default. New wallet-admin upgrade command to upgrade the schema from earlier versions. New ldap-attr ACL type. New wa-keyring object type to store WebAuth keyrings. New acl check command to determine whether an ACL exists. New comment field for objects. The wallet server database backend has been converted to DBIx::Class. The Stanford wallet naming policy is now available as the Wallet::Policy::Stanford module.

2013-03-26 — remctl 3.4

New C APIs for establishing a remctl connection given a sockaddr, a list of struct addrinfo, or an already-open socket. Add Net::Remctl::Backend to automate some of the process of writing remctl backend scripts in Perl. Remove prototypes from Net::Remctl. Update the Net::Remctl build system to Module::Build. Return an error if an empty command is passed into remctl_command.

2013-03-25 — kadmin-remctl 3.3

Retry the kadmin connection in the Heimdal backend if the first connection fails and suppress standard error messages from the connection attempt. Clean up error reporting in the Heimdal backend and ensure all functions use the same error formatting and status code conventions. Return a non-zero status from check_passwd if it rejects the password. Provide a better error message when trying to change the password of a disabled account with Heimdal kpasswd. Strip whitespace from the username in passwd_change.

2013-03-15 — rra-c-util 4.8

Add new Test::RRA::* modules that provide a significantly improved infrastructure for Perl testing and integration of that testing with an Automake source package. Update the existing tests to use that infrastructure, including the new perl.conf configuration file so that the same test scripts can be used in multiple packages. Correctly handle cases where the build directory is a subdirectory of the source directory. Add a new perl/t directory with tests for Perl modules. Fix all C code to pass clang --analyze.

2013-03-15 — C TAP Harness 2.1

Search all possible test executable directories for a test program with a particular suffix before trying the next suffix. Fixes a backward incompatibility when used with tests with a separate non-suffixed helper program when the build directory isn't the source directory. Also document that TAP version lines are ignored.

2013-03-14 — C TAP Harness 2.0

Require the -l flag when passing a list of tests to runtests. Otherwise treat command-line arguments as the names of tests. Search for a test executable under the name as given if the name with -t or .t appended couldn't be found. Ignore directories when looking for test executables. Flush the harness output after each test even when not printing to a terminal. Display the total test count in partial statuses for tests using lazy planning as ?. More correctly handle display of aborted tests to the terminal.

2013-03-13 — Review: Higher Order Perl

Review of Higher Order Perl by Mark Jason Dominus.

2013-03-12 — WebAuth 4.4.3

Fix WebAuthTrustAuthzIdentity enabling WebAuthDoLogout in the same scope. Correctly handle authorization identities equal to the authentication identity. Remove arbitrary limit in mod_webauthldap on the number of values of a multivalued attribute it puts in the environment. Fix a syntax error in the default WebLogin error template. Ignore empty app cookies instead of logging them, log a better error for expired app cookies, downgrade expired app cookie logging to info, and don't log the decoded form of a bad app token to the Apache error log. Fix some other minor bugs caught by clang --analyze.

2013-03-11 — Review: Commitment Hour

Review of Commitment Hour by James Alan Gardner.

2013-03-06 — Add 2013 Tiptree winner

Add the 2013 Tiptree winner (well, the one that is a novel): The Drowning Girl, by Caitlín R. Kiernan.

2013-03-01 — Review: Asimov's Science Fiction, June 2011

Review of Asimov's Science Fiction, June 2011.

February 2013

2013-02-27 — podlators 2.5.1

A test-suite-only release that fixes some test suite problems with a new warning in Pod::Simple 3.26.

2013-02-25 — Review: Witches Abroad

Review of Witches Abroad by Terry Pratchett.

2013-02-24 — Review: The Hare with Amber Eyes

Review of The Hare with Amber Eyes by Edmund de Waal.

2013-02-05 — WebAuth 4.4.2

Fix uninitialized variable in the WebKDC code that could cause a crash during authentication. Fix out-of-tree builds, particularly for the Perl modules.

January 2013

2013-01-31 — WebAuth 4.4.1

Add a new authenticate callback to WebLogin that can be used to get the user's identity from arbitrary session data. Properly reuse the application object for WebLogin in FastCGI environments. Switch to Module::Build for the Perl module build. Various documentation improvements.

2013-01-28 — New beach picture

New picture added to the beach gallery.

2013-01-21 — Review: Fantasy & Science Fiction, March/April 2011

Review of Fantasy & Science Fiction, March/April 2011.

2013-01-20 — New clouds picture

New picture added to the clouds gallery.

2013-01-19 — Review: How I Proposed to My Wife

Review of How I Proposed to My Wife by John Scalzi.

2013-01-18 — distribrc 1.0

First public release of the script I use to synchronize my dot-files across all the systems that I use.

2013-01-18 — Further Stanford wallet naming scheme revisions

Remove the group name for host-based file objects. Move the group name to the second field for non-host-based file objects. Add some new object types, and be more consistent about using multi-part slash-separated names instead of ever using dashes.

2013-01-17 — Review: Soulless

Review of Soulless by Gail Carriger.

2013-01-16 — Revise Stanford wallet naming scheme

Recommend slash-separated names by default. Remove some obsolete bits and update a lot of the recommendations and wording.

2013-01-15 — afs-admin-tools 2.0

New package that incorporates frak, fsr, lsmounts, mvto, partinfo, volcreate, volcreate-logs, and volnuke. The individual pages for those programs have been removed. Add support for a standard configuration file and move all site configuration into it. Look for AFS utilities in the user's PATH first by default, except for vos where sbin paths are checked first. Remove Stanford-specific behavior for verifying mount points from volcreate and make it configurable. Make volcreate's support for loadmtpt configurable. Remove Kerberos v4 support in volcreate-logs.

2013-01-12 — Add Ohloh code analysis for afs-monitor

Add afs-monitor to Ohloh and add a link to their code analysis.

2013-01-12 — afs-monitor 2.4

Support filtering volumes to check in check_afs_quotas by regex. Ignore bos status output from long-running scheduled commands in check_afs_bos.

2013-01-11 — Review: Asimov's Science Fiction, April/May 2011

Review of Asimov's Science Fiction, April/May 2011.

2013-01-10 — release 1.45

Add support for signing releases with multiple keyids. Update minimum supported Python version to 2.5.

2013-01-09 — afs-monitor 2.3

Fix a parsing bug in check_afs_quotas when checking all volumes on a partition. Teach check_afs_bos about the output from scheduled jobs.

2013-01-08 — postfaq 1.17

Add support for generating the Last-Modified subheader from the modification timestamp of the FAQ. Add a new -d command-line option to change the default directory for storing status files.

2013-01-07 — Term::ANSIColor 4.02

Fix the order of imports in one test case to work with the Perl 5.6.2 Exporter. Add the required Perl version to the module metadata.

2013-01-06 — faq2html 1.31

Add -l option to request adding a last modified subheading based on the last modification timestamp, matching behavior that usually only happens when the file contains an RCS/CVS Id string. Always add a last modified subheading if there is last modified information available, either from an Id string or from the -l option.

2013-01-06 — Add last modified headers to all FAQs

For all FAQs converted from text documents, add the -l option (new in faq2html 1.31) to use the file timestamp as a last modified date and force a last-modified subheading. Previously, those hedings were only added to FAQs without a subheading or with a Revision or Date keyword.

2013-01-06 — Overhaul Debian package page

Remove the links to the packages I maintain in Debian. My QA overview does a better job of that and doesn't keep getting out of date. Split packaging I maintain from upstreams I maintain so that I don't claim I'm not maintaining wallet. Update my Debian team positions a smidge. Fix the text of links to backports.debian.org for the renaming from backports.org.

2013-01-05 — Remove link to ESR's hacker FAQ

I disagree with enough things in this FAQ (and with ESR's site in general) that I don't want to link to this any more. No need to advocate Ubuntu and Python or unnecessarily badmouth Java.

2013-01-05 — Broken link cleaup

Another periodic cleanup of broken links and removing of permanent redirects.

2013-01-05 — Restore PDF version of AFS balancing paper

Add back the PDF version of the AFS balancing paper, lost in the conversion to Git.

2013-01-05 — Pod::Thread 1.00

Convert to Pod::Simple, fixing a long-standing bug with =item parsing. Fix conversion of URLs with anchor text. Update coding style and add now-standard test suite.

2013-01-04 — spin 1.80

Fix variable scoping issue that prevented pages from getting the correct modification date from Git.

2013-01-03 — cl2xhtml 1.10

Support the multi-author ChangeLog convention by extracting all the authors and turning them into an English list of authors in the description list heading.

2013-01-03 — release 1.44

Use Git to commit the .versions file instead of Subversion.

2013-01-03 — spin 1.79

Support determining the last modification time of thread source via Git when the source is a Git working tree. Also ignore RCS directories.

2013-01-02 — podlators 2.5.0

pod2text and pod2man now die on POD syntax errors by default. New errors option to set the error handling behavior among dying, reporting to standard error, reporting in the POD document, and ignoring. New option to suppress URLs for L<> formatting codes where anchor text was provided. Fix X<> handling when the keyword contains newlines. Fix small-caps handling in Pod::Man for paragraphs that are entirely in capital letters.

2013-01-01 — 2012 reading in review

Add an overview of my 2012 reading, main book recommendations, and reading statistics.

2013-01-01 — Rotated 2012 changes

Move all web site changes for 2012 to a separate page and remove all entries older than December of 2012 from the current changes page.

Last modified and spun 2017-01-01