info-gnu
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU Stow 2.3.0 released


From: Adam Spiers
Subject: GNU Stow 2.3.0 released
Date: Sat, 29 Jun 2019 01:46:28 +0100
User-agent: NeoMutt/20180716

Hi all,

GNU Stow 2.3.0 is now available for download from 

     http://ftp.gnu.org/gnu/stow/

and also from the mirrors[1] as soon as they catch up. 

Stow is a symlink farm manager program which takes distinct sets 
of software and/or data located in separate directories on the 
filesystem, and makes them all appear to be installed in a single 
directory tree. 

While Stow has often been used to manage system-wide software 
installations, it also provides a clean mechanism for managing 
software and configuration files in users' home directories: 

     http://lists.gnu.org/archive/html/info-stow/2011-12/msg00000.html

More information is available at the homepage: 

     http://www.gnu.org/software/stow/

[1] You can see a list of mirrors at http://www.gnu.org/prep/ftp.html
     or use http://ftpmirror.gnu.org/stow/ which will automatically
     redirect to a nearby mirror.

Here is a summary of the changes since the previous 2.2.2 release; 
please see the ChangeLog for full details. 

--------- 8< --------- 8< --------- 8< --------- 8< --------- 8< ---------

Table of Contents
_________________

1. New features / changes in behaviour
.. 1. New --dotfiles option
.. 2. Shell-like expansion in .stowrc files
.. 3. chkstow now honours the $STOW_DIR environment variable
.. 4. Stow now has a non-zero exit code if option parsing failed
2. License upgraded from GPL version 2 to version 3
3. Documentation fixes and enhancements
.. 1. Remove dependency on unmaintained texi2html
.. 2. Fixed naming of man page
.. 3. Convert README and INSTALL to Markdown
.. 4. Update documentation to reflect more modern use cases
.. 5. Miscellaneous documentation fixes
4. Fixes for bugs, tests, and other technical debt
.. 1. Add Docker files for convenient testing across multiple Perl versions
.. 2. Set up continuous testing via Travis CI
.. 3. Add Coveralls integration with GitHub
.. 4. Miscellaneous improvements to the test suite
.. 5. Fix for test suite on Cygwin
.. 6. aclocal.m4 was updated using aclocal 1.15.1.
.. 7. Miscellaneous fixes to the build and distribution process
.. 8. Improve handling of directories with unusual names


1 New features / changes in behaviour
=====================================

1.1 New --dotfiles option
~~~~~~~~~~~~~~~~~~~~~~~~~

   Enable special handling for "dotfiles" (files or folders whose name
   begins with a period) in the package directory. If this option is
   enabled, Stow will add a preprocessing step for each file or folder
   whose name begins with "dot-", and replace the "dot-" prefix in the
   name by a period (".").  This is useful when Stow is used to manage
   collections of dotfiles, to avoid having a package directory full of
   hidden files.

   For example, suppose we have a package containing two files,
   stow/dot-bashrc and stow/dot-emacs.d/init.el.  With this option, Stow
   will create symlinks from .bashrc to stow/dot-bashrc and from
   .emacs.d/init.el to stow/dot-emacs.d/init.el.  Any other files, whose
   name does not begin with "dot-", will be processed as usual.

   Thanks to Joris Vankerschaver for this feature!


1.2 Shell-like expansion in .stowrc files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   For options within .stowrc files which describe file paths, "~" can be
   included to expand to the current value of $HOME, and environment
   variables can be referenced e.g. via "$FOO" or "${FOO}".  To prevent
   expansion, escape with a backslash.

   Thanks a lot to Charles LeDoux for his diligent work on this feature!


1.3 chkstow now honours the $STOW_DIR environment variable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   The stow script already honoured the $STOW_DIR environment variable.
   Now chkstow does too, for consistency.


1.4 Stow now has a non-zero exit code if option parsing failed
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   Thanks to Brice Waegeneire for reporting this.


2 License upgraded from GPL version 2 to version 3
==================================================

   Copyright and license notices were also added to the headers of
   various files in accordance with GNU guidelines.


3 Documentation fixes and enhancements
======================================

3.1 Remove dependency on unmaintained texi2html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   The dependency on the ancient and unmaintained texi2html for building
   the single-page HTML version of the manual has been removed, since it
   was difficult to get running on most distros other than openSUSE.

   Instead use the more modern "makeinfo --html --no-split" approach.
   Rules have been kept for posterity in the Makefile for the old
   approach and also an "in-between" approach based on texi2any; however
   these are not triggered by default.  Run

   make manual-single-html-all

   to compare the three versions.


3.2 Fixed naming of man page
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   The title of the generated man page was previously ending up as
   something like:

   IO::FILE=IO(0XA719C0)(1)

   Thanks to @Corin-EU on GitHub highlighting this and proposing a fix.


3.3 Convert README and INSTALL to Markdown
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   They are now named README.md and INSTALL.md, and render nicely when
   viewed via git hosting services which support Markdown.


3.4 Update documentation to reflect more modern use cases
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   The README.md, stow(8) man page, and info manual have been updated to
   de-emphasise the package management use, since these days almost
   everyone prefers to use modern package managers such as rpm / dpkg /
   Nix for (system-wide) package management.

   To compensate, more popular modern use cases for Stow have been added,
   such as management of dotfiles and software compiled in the user's
   $HOME directory.


3.5 Miscellaneous documentation fixes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   - Various typos were fixed.

   - The documentation for --verbose was updated to indicate that
     verbosity levels now go up to 5.

   - Erroneous glob examples in the --ignore documentation were fixed.

   - The abbreviation "regex" was removed from the info manual for
     consistency.

   - INSTALL.md now also documents how to build directly from git.


4 Fixes for bugs, tests, and other technical debt
=================================================

4.1 Add Docker files for convenient testing across multiple Perl versions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   This is the first release which has been tested across 5 different
   versions of Perl prior to release!  The versions are:

   perl-5.22.2 perl-5.20.3 perl-5.18.4 perl-5.16.3 perl-5.14.4

   Thanks to Charles LeDoux for this!


4.2 Set up continuous testing via Travis CI
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   This means that the test suite will be automatically run on any pull
   requests submitted to GitHub, as well as "make distcheck" and "./Build
   distcheck".


4.3 Add Coveralls integration with GitHub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   This means that test coverage analysis will be automatically be run on
   any pull requests submitted to GitHub.


4.4 Miscellaneous improvements to the test suite
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   These include proper testing of the distinct impact of ~/.stowrc and
   .stowrc in the directory from which Stow is invoked.


4.5 Fix for test suite on Cygwin
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   Thanks to Lucas Theisen for this fix!


4.6 aclocal.m4 was updated using aclocal 1.15.1.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


4.7 Miscellaneous fixes to the build and distribution process
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


4.8 Improve handling of directories with unusual names
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   Various fixes for corner cases where directories are named "0" or
   begin with a space character, or where STOW_DIR is empty.

   Thanks to Cuong Manh Le for highlighting some of the issues and
   proposing fixes!

--------- 8< --------- 8< --------- 8< --------- 8< --------- 8< ---------


Happy hacking,
Adam

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]