aboutsummaryrefslogtreecommitdiff
path: root/doc/RELEASE_NOTES-1.2.2.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/RELEASE_NOTES-1.2.2.md')
-rw-r--r--doc/RELEASE_NOTES-1.2.2.md72
1 files changed, 72 insertions, 0 deletions
diff --git a/doc/RELEASE_NOTES-1.2.2.md b/doc/RELEASE_NOTES-1.2.2.md
new file mode 100644
index 0000000..7e09fda
--- /dev/null
+++ b/doc/RELEASE_NOTES-1.2.2.md
@@ -0,0 +1,72 @@
+# shFlags 1.2.2 Release Notes
+
+https://github.com/kward/shflags
+
+## Preface
+
+This document covers any known issues and workarounds for the stated release of
+shFlags.
+
+## Release info
+
+This is a minor bug fix release.
+
+Please see the `CHANGES-1.2.md` file for a complete list of changes.
+
+### Notable changes
+
+Continuous integration testing setup with [Travis CI][travis-ci]. This helps
+keep the code in a working state by executing the unit tests on every submit.
+
+[travis-ci]: https://travis-ci.org/kward/shflags
+
+All code run through [ShellCheck](http://www.shellcheck.net/). This is an
+excellent shell linter, and brings consistency to the coding patterns used.
+
+The code was restructured to be more GitHub friendly. It should make the code
+more appealing to a wider audience.
+
+### Notable bug fixes
+
+Fixed issue #45. Empty help string causes `shflags_test_issue_28.sh` to fail.
+
+## General info
+
+### The unit tests
+
+shFlags is designed to work on as many environments as possible, but not all
+environments are created equal. As such, not all of the unit tests will succeed
+on every platform. The unit tests are therefore designed to fail, indicating to
+the tester that the supported functionality is not present, but an additional
+test is present to verify that shFlags properly caught the limitation and
+presented the user with an appropriate error message.
+
+shFlags tries to support both the standard and enhanced versions of `getopt`. As
+each responds differently, and not everything is supported on the standard
+version, some unit tests will be skipped (i.e. ASSERTS will not be thrown) when
+the standard version of `getopt` is detected. The reason being that there is no
+point testing for functionality that is positively known not to exist. A tally
+of skipped tests will be kept for later reference.
+
+### Standard vs Enhanced getopt
+
+Here is a matrix of the supported features of the various `getopt` variants.
+
+Feature | std | enh
+--------------------------------------- | --- | ---
+short option names | Y | Y
+long option names | N | Y
+spaces in string options | N | Y
+intermixing of flag and non-flag values | N | Y
+
+## Known Issues
+
+The `getopt` version provided by default with all versions of Mac OS X (up to
+and including 10.13.0) and Solaris (up to and including Solaris 10 and
+OpenSolaris) is the standard version.
+
+## Workarounds
+
+The Zsh shell requires the `shwordsplit` option to be set and the special
+`FLAGS_PARENT` variable must be defined. See `src/shflags_test_helpers` to see
+how the unit tests do this.