diff --git a/README.md b/README.md index 5747a2a..b2e1889 100644 --- a/README.md +++ b/README.md @@ -195,8 +195,8 @@ scripts can be in any other interpreted language.__ First you'll need a copy of this framework available in your project sources. Archives are available at: -- https://github.com/mbland/go-script-bash/archive/v1.0.0.tar.gz -- https://github.com/mbland/go-script-bash/archive/v1.0.0.zip +- https://github.com/mbland/go-script-bash/archive/v1.1.0.tar.gz +- https://github.com/mbland/go-script-bash/archive/v1.1.0.zip You can also add this repository to your project as a [`Git submodule`](https://git-scm.com/book/en/v2/Git-Tools-Submodules): diff --git a/RELEASE.md b/RELEASE.md index d87b7a7..4e30fc9 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,4 +1,6 @@ -# go-script-bash v1.0.0 +# go-script-bash v1.1.0 + +This release adds some major new features, two new builtin commands, and multiple bug fixes and internal improvements. ## The `./go` script: a unified development environment interface @@ -11,3 +13,302 @@ The `./go` script idea came from Pete Hodgson's blog posts [In Praise of the ./g **Note:** The `./go` script concept is completely unrelated to the [Go programming language](https://golang.org), though the Go language's `go` command encapsulates many common project functions in a similar fashion. This software is made available as [Open Source software](https://opensource.org/osd-annotated) under the [ISC License](https://www.isc.org/downloads/software-support-policy/isc-license/). If you'd care to contribute to this project, be it code fixes, documentation updates, or new features, please read the `CONTRIBUTING.md` file. + +## What's new in this release + +### Modules + +You can import optional Bash library code from the core framework, third-party plugins, or your own project's scripts directory by sourcing the `_GO_USE_MODULES` script. See the **Modules** section of the README or run `./go help modules` and `./go modules --help` for more information. + +### Logging + +The core library `log` module provides functions for standard logging facilities. For more information, see the **Logging** section from the README and run `./go modules --help log`. + +### Bats test assertions and helpers + +The assertions and helpers from the test suite have been extracted into the `lib/bats/assertions` and `lib/bats/helpers` libraries. See the **Bats test assertions and helpers** section from the README and read the comments from each file for more information. + +### `kcov-ubuntu` module for test coverage on Linux + +The `kcov-ubuntu` module provides the `run_kcov` function that uses [kcov](https://github.com/SimonKagstrom/kcov) to collect test coverage on Ubuntu Linux. See the **`kcov-ubuntu` module for test coverage on Linux** section of the README and run `./go modules --help kcov-ubuntu` for more information. + +### Exported `_GO_*` variables and the `vars` builtin command + +A number of global variables starting with the prefix `_GO_*` are exported as environment variables and are available to command scripts in all languages. See the **Command script API** section from the README and run `./go help vars` for more information. + +## Changes since v1.0.0 + +
+9411a89 Mike Blanddiff --git a/go-core.bash b/go-core.bash index 0782bbe..f0c5149 100755 --- a/go-core.bash +++ b/go-core.bash @@ -39,7 +39,7 @@ fi # This and other variables are exported, so that command scripts written in # languages other than Bash (and hence run in new processes) can access them. # See `./go vars` and `./go help vars`. -declare -r -x _GO_CORE_VERSION='v1.0.0' +declare -r -x _GO_CORE_VERSION='v1.1.0' # The URL of the framework's original source repository declare -r -x _GO_CORE_URL='https://github.com/mbland/go-script-bash'+ Merge pull request #23 from mbland/version + +e8ef35b Mike Bland + core: Introduce _GO_CORE_VERSION + +17a69d2 Mike Bland + Add documentation improvements for v1.1.0 release + +ecd2d81 Mike Bland + use: Unset correct variable + +006c38b Mike Bland + Merge pull request #22 from mbland/remove-stale-files + +e17c181 Mike Bland + Remove old test `./go` scripts + +f9675e5 Mike Bland + Merge pull request #21 from mbland/plugins + +33c54b6 Mike Bland + plugins: Revert changes from #20 + +ce20155 Mike Bland + Merge pull request #20 from mbland/vars + +6b376eb Mike Bland + vars: Make test array quotifying more robust + +241d2c7 Mike Bland + Revamp `_GO_*` var exports, add `vars` builtin + +7c1123b Mike Bland + Move all _GO_* vars to core and document them + +17beb1e Mike Bland + Merge pull request #19 from mbland/assert-lines-equal + +70d546f Mike Bland + assertions: Add assert_lines_equal + +32d47fc Mike Bland + changes: Don't add `^` to end ref + +580f08d Mike Bland + core: Tweak COLUMNS test slightly + +47b6e63 Mike Bland + Merge pull request #18 from mbland/columns + +5292839 Mike Bland + core: Fix test for OS X on Travis without /dev/tty + +c7ee892 Mike Bland + core: Reproduce and fix `tput cols` error from #17 + +664a51f Mike Bland + Merge pull request #17 from mbland/columns + +5bdbd2c Mike Bland + core: Update how COLUMNS is set + +5fc49a5 Mike Bland + log: Skip setup-project test case on MSYS2 + +0e91281 Mike Bland + Merge pull request #16 from mbland/log-setup + +ecb6b83 Mike Bland + log: Fix @go.critical_section_end return bug + +b7f7699 Mike Bland + log: Add @go.setup_project function + +ed05f2b Mike Bland + Merge pull request #15 from mbland/log-command + +da20203 Mike Bland + log: Add log_command tests for @go command cases + +db79ba1 Mike Bland + log: Add @go.log_command, critical section flag + +43fae60 Mike Bland + Merge pull request #14 from mbland/add-or-update-log-level + +949fb32 Mike Bland + log: Implement @go.add_or_update_log_level + +dd712c6 Mike Bland + Merge pull request #13 from mbland/log + +0a7bc5e Mike Bland + lib/log: Add logging module + +31a1d30 Mike Bland + complete: Fix typo in internal library comment + +3cc22b0 Mike Bland + Merge pull request #12 from mbland/assertions + +0d94845 Mike Bland + Revert previous two commits + +f4a0f85 Mike Bland + assertions: Reset return trap when trap exits + +7ca3d05 Mike Bland + assertions: Introduce bats_assertion_return_trap + +40d6218 Mike Bland + assertions: Make public return_from_bats_assertion + +87bb07c Mike Bland + assertions: Reproduce and fix latent functrace bug + +52bc541 Mike Bland + Merge pull request #11 from mbland/complete + +112e046 Mike Bland + env/bash: Put single quotes around unset argument + +e7f02fe Mike Bland + complete: Eliminate compgen from internal library + +096f0f3 Mike Bland + bats/assertions: Change double quotes to single + +d8e4231 Mike Bland + complete: Replace most compgen calls with echo + +4d61457 Mike Bland + complete: Switch all tests to use ./go complete + +54e8e9a Mike Bland + Merge pull request #10 from mbland/tput-fix-test-docs + +e779deb Mike Bland + test: Expand comments, refactor slightly + +b9792bf Mike Bland + kcov-ubuntu: Update run_kcov function comment + +4c66893 Mike Bland + core: Undo tput error redirect + +676dd18 Mike Bland + Merge pull request #9 from mbland/bats-libs + +69fb63b Mike Bland + bats/assertions: Reorder functions, add docs + +d692bb9 Mike Bland + bats/assertions: Add optional fail() reason, docs + +ac8ed3f Mike Bland + tests: Extract public bats/assertions module + +2707493 Mike Bland + tests: Consolidate environment.bash + +c77932e Mike Bland + kcov: Convert to public kcov-ubuntu module + +1a47920 Mike Bland + cmd-desc: Remove create_test_command_script calls + +3deee25 Mike Bland + run-cmd: Update _GO_* var tests to run subcommands + +4168b58 Mike Bland + Extract public bats/helpers module + +87ce40a Mike Bland + Merge pull request #8 from mbland/cmd-name-argv + +202b17c Mike Bland + core: Export _GO_CMD_{NAME,ARGV}, add Bash test + +d674191 Mike Bland + Merge pull request #7 from mbland/cmd-desc + +9bd1524 Mike Bland + core: Default to 80 columns on all tput errors + +47d9476 Mike Bland + TEMP: Print value of $TERM to debug Travis issue + +271c726 Mike Bland + core: Check $TERM before setting columns with tput + +c1ba9c8 Mike Bland + cmd_desc: Show full command names in descriptions + +c2098c4 Mike Bland + Merge pull request #6 from mbland/core-updates + +2777ca8 Mike Bland + core: Export variables for non-Bash script access + +1158bc7 Mike Bland + core: Escape % when only one @go.printf argument + +995daf0 Mike Bland + script_helper: Default to bash, allow other langs + +6444f51 Mike Bland + Merge pull request #5 from mbland/modules-builtin + +0a4886a Mike Bland + README: ./go modules help => ./go modules --help + +78c447a Mike Bland + test, modules: Quote $_GO_USE_MODULES, add docs + +9bb7a45 Mike Bland + Add modules builtin command + +766a354 Mike Bland + command_descriptions: Trim trailing whitespace + +e764723 Mike Bland + command_descriptions: Return error if read fails + +7cd5dd5 Mike Bland + kcov: Add note explaining 2>/dev/null redirection + +80b7abe Mike Bland + test: Use time builtin + +4c8f931 Mike Bland + complete: Add public module, completion removal + +97fd0df Mike Bland + test/script_helper: Add TEST_GO_PLUGINS_DIR + +2d88f57 Mike Bland + format: Add public module, pad and zip functions + +8c23dcd Mike Bland + Merge pull request #3 from mbland/lightning-talk + +4f1e6c6 Mike Bland + README: Update location of lib/internal/env + +515730d Mike Bland + README: Add link to Surge 2016 lightning talk + +2cbfdda Mike Bland + Merge pull request #2 from mbland/use-modules + +a5973af Mike Bland + use: Fix test for bash < 4.4 + +55d09f9 Mike Bland + test: Replace direct source with _GO_USE_MODULES + +ed78d9f Mike Bland + core: Add _GO_USE_MODULES for optional modules + +2d5cb96 Mike Bland + Merge pull request #1 from mbland/refactor + +345dd55 Mike Bland + Lowercase __go_orig_dir, unset temp globals + +e6c29fd Mike Bland + Move all lib/ files to lib/internal/ + +1634d85 Mike Bland + core: Refactor, update comments +