blob: 06cca0d66f40b41a30dc93e5c74301a86a445f8e [file] [log] [blame]
kate.ward929261f2010-03-28 23:12:17 +00001------------------------------
2shFlags.sh 1.0.4 Release Notes
3------------------------------
4
5Preface
6=======
7Copyright 2008-2009 Kate Ward. All Rights Reserved.
8Released under the LGPL (GNU Lesser General Public License)
9Author: kate.ward@forestent.com (Kate Ward)
10
11This document covers any known issues and workarounds for the stated release of
12shFlags.
13
14Release info
15============
16
17This is a minor bug fix release.
18
19Please see the CHANGES-1.0.txt file for a complete list of changes.
20
21Major changes
22-------------
23
24Obsolete items
25--------------
26
27Bug fixes
28---------
29
30Issue #10 - Changed the internal usage of the ``expn`` command to fix issues
31under FreeBSD.
32
33General info
34============
35
36The unit tests
37--------------
38
39shFlags is designed to work on as many environments as possible, but not all
40environments are created equal. As such, not all of the unit tests will succeed
41on every platform. The unit tests are therefore designed to fail, indicating to
42the tester that the supported functionality is not present, but an additional
43test is present to verify that shFlags properly caught the limitation and
44presented the user with an appropriate error message.
45
46shFlags tries to support both the standard and enhanced versions of ``getopt``.
47As each responds differently, and not everything is supported on the standard
48version, some unit tests will be skipped (i.e. ASSERTS will not be thrown) when
49the standard version of ``getopt`` is detected. The reason being that there is
50no point testing for functionality that is positively known not to exist. A
51tally of skipped tests will be kept for later reference.
52
53Standard vs Enhanced getopt
54---------------------------
55
56Here is a matrix of the supported features of the various **getopt** variants.
57
58+=========================================+=====+=====+
59| Feature | std | enh |
60+-----------------------------------------+-----+-----+
61| short option names | Y | Y |
62| long option names | N | Y |
63| spaces in string options | N | Y |
64| intermixing of flag and non-flag values | N | Y |
65+=========================================+=====+=====+
66
67Known Issues
68------------
69
70The **getopt** version provided by default with all versions of Mac OS X (up to
71and including 10.5.6) and Solaris (up to and including Solaris 10 and
72OpenSolaris) is the standard version.
73
74Workarounds
75-----------
76
77The Zsh shell requires the ``shwordsplit`` option to be set and the special
78``FLAGS_PARENT`` variable must be defined. See ``src/shflags_test_helpers`` to
79see how the unit tests do this.
80
81.. vim:fileencoding=latin1:ft=rst:spell:tw=80