blob: e489cf5d1a2feb0aa8edd469ad5ab0072f7e672d [file] [log] [blame]
kate.wardf51c6162008-06-17 16:38:35 +00001------------------------------
2shFlags.sh 1.0.0 Release Notes
3------------------------------
4
5Preface
6-------
7Copyright 2008 Kate Ward. All Rights Reserved.
8Released under the LGPL (GNU Lesser General Public License)
9
10Author: Kate Ward (kate.ward@forestent.com)
11
12This document covers any known issues and workarounds for the stated release of
13shFlags.
14
15General info
16------------
17
18This is the first official release of shFlags. The project is modeled after the
kate.ward90fd99d2008-06-18 20:51:29 +000019gflags code released by Google on http://code.google.com/p/google-gflags/. Many
20thanks for the code they have provided.
kate.wardf51c6162008-06-17 16:38:35 +000021
22As this is the first release, there are bound to be issues. Feel free
23
24Disclamer
25---------
26
27The unit tests
28--------------
29
kate.ward90fd99d2008-06-18 20:51:29 +000030shFlags is designed to work on as many environments as possible, but not all
kate.wardf51c6162008-06-17 16:38:35 +000031environments are created equal. As such, not all of the unit tests will succeed
32on every platform. The unit tests are therefore designed to fail, indicating to
33the tester that the supported functionality is not present, but an additional
kate.ward90fd99d2008-06-18 20:51:29 +000034test is present to verify that shFlags properly caught the limitation and
kate.wardf51c6162008-06-17 16:38:35 +000035presented the user with an appropriate error message.
36
kate.ward90fd99d2008-06-18 20:51:29 +000037shFlags tries to support both the standard and enhanced versions of ``getopt``.
38As each responds differently, and not everything is supported on the standard
kate.wardf51c6162008-06-17 16:38:35 +000039version, some unit tests will be skipped (i.e. ASSERTS will not be thrown) when
kate.ward90fd99d2008-06-18 20:51:29 +000040the standard version of ``getopt`` is detected. The reason being that there is
41no point testing for functionality that is positively known not to exist. A
42tally of skipped tests will be kept for later reference.
kate.wardf51c6162008-06-17 16:38:35 +000043
44Standard vs Enhanced getopt
45---------------------------
46
47Here is a matrix of the supported features of the various getopt variants.
48
kate.wardf8ea8632008-06-18 19:06:40 +000049+-------------------------+---+---+
50|Feature |std|enh|
51+=========================+===+===+
52|short option names | Y | Y |
53|long option names | N | Y |
54|spaces in string options | N | Y |
55+-------------------------+---+---+
kate.wardf51c6162008-06-17 16:38:35 +000056
57Known Issues
58------------
59
60The getopt version provided by default with all versions of Solaris (up to and
kate.wardf8ea8632008-06-18 19:06:40 +000061including Solaris 10) is the standard version. As such, only short flags are
62supported.
kate.wardf51c6162008-06-17 16:38:35 +000063
64The getopt version provided by default with all versions of Mac OS X (up to and
kate.wardf8ea8632008-06-18 19:06:40 +000065including 10.5) is the standard version. As such, only short flags are
66supported.
kate.wardf51c6162008-06-17 16:38:35 +000067
68Workarounds
69-----------
70
71The zsh shell requires the 'shwordsplit' option to be set, and the special
72FLAGS_PARENT variable must be defined.