This file documents the high-level history of Stow, and some of its major contributors. See also the THANKS file for a more complete list of contributors. Stow was originally written by Bob Glickstein , Zanshin Software, Inc. Gord Matzigkeit made some early contributions. John Bazik wrote `fastcwd', the Perl subroutine for computing the current working directory (later removed in 1.3.3). Charles Briscoe-Smith wrote the fix to prevent stow -D / stow -R removing initially-empty directories (mentioned in 1.3.3 section of NEWS). Adam Lackorzynski wrote the fix to prevent the generation of wrong links if there are links in the stow directory. Stow was maintained by Guillaume Morin up to November 2007. Guillaume originally imported the source code into the Savannah CVS repository on 2001/12/24 with the tag "v1_3_2". This history was later imported into git as described below. 1.3.3 was the last release of the 1.x series. The CVS history contains a few commits after 1.3.3 preparing for a 1.3.4 release which was never published (see the "import-cvs" tag in git). Between 2007 and 2009, a small team of people collaborated on a private in-house project on Stow: https://lists.gnu.org/archive/html/stow-devel/2011-11/msg00003.html Kahlil (Kal) Hodgson performed a major rewrite in order to implement: 1. deferred operations, 2. option parsing via Getopt::Long, 3. options to support shared files, 4. support for multiple operations per invocation, 5. default command line arguments via '.stowrc' and '~/.stowrc' files, 6. better cooperation between multiple stow directories, 7. a test suite (and support code) to ensure that everything still works. As these changes required a dramatic reorganisation of the code, very little was left untouched, and so Stow's major version number was bumped up to 2. Austin Wood and Chris Hoobin helped clean up the documentation for the new 2.x.y series, and created the texi2man script. Kahlil obtained permission to donate these changes back to GNU. The Subversion history from this period is no longer accessible, so the breakdown of the individual changes to the source code between 1.3.3 and the unreleased 2.0.2 version have been lost; however some details are still visible in ChangeLog.OLD, which also acknowledges the contributions of Geoffrey Giesemann and Emil Mikulc. Sometime after this, Troy Will took over maintainership and imported the unreleased 2.0.2 code base as the original root commit into Savannah git repository. On 25th November 2011, Adam Spiers took over maintainership. He imported the CVS history into the Savannah git repository, grafting it onto the previous root commit imported by Troy, and tagged this as v2.0.2: https://lists.gnu.org/archive/html/stow-devel/2011-11/msg00001.html https://lists.gnu.org/archive/html/stow-devel/2011-11/msg00002.html refactored the backend code into new Stow.pm and Stow/Util.pm modules providing an OO interface, tightened up the test suite, added support for ignore lists, `make test', and distribution via CPAN, and cleaned up numerous other minor issues. These changes were included in 2.1.0, which was the first official release since 1.3.3 in 2002. Stow is currently maintained by Adam Spiers.