-
Notifications
You must be signed in to change notification settings - Fork 426
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.0 bug fixes #20
Comments
Corresponding to each of the above:
|
Update on the Alpine/Busybox business: Per #16, the failures I saw were due to |
Just opened #23 to address the |
Part of #20. Addresses sstephenson/bats#171. Bats is now capable of executing test cases that conform to the "unoffical Bats strict mode" described by: - http://redsymbol.net/articles/unofficial-bash-strict-mode/ While the test fixture is straightforward, it took trial and error to realize a few things. First, `set -u` changed in Bash 4.1-alpha. Chapter and verse from https://tiswww.case.edu/php/chet/bash/CHANGES: This document details the changes between this version, bash-4.1-alpha, and the previous version, bash-4.0-release. n. Fixed the behavior of `set -u' to conform to the latest Posix interpretation: every expansion of an unset variable except $@ and $* will cause the shell to exit. This almost certainly accounts for the fact that referencing `"${FOO[@]}"` when `FOO=()` is defined is OK under the latest Bash 4.4.12(1)-release, but breaks under the Bash 3.2.57(1)-release that ships with macOS. The fix was to do an array length check before each such operation. It probably also accounts for the fact that under Bash 3.2.57, no error output is generated at all for certain unset variable accesses. The workaround there is to run the test using the latest version of Bash. The biggest surprise was realizing that no error output is visible when the unset variable access happens inside a DEBUG trap handler. All versions of Bash seem susceptible to this. As a result of these debugging subtleties, the test case contains a thorough error message to suggest how to proceed when the fixture fails.
#26 addresses the |
#23 addresses the So the last one is empty output lines missing from |
I sorta agree. And depending on the solution would be most likely to introduce a breaking change... I'd like to see about tagging some releases with the bugs that have already been released and see if we're good to tag it 1.0! |
@jasonkarns @btamayo How and when do y'all want to proceed? Should we ship what we've got? Do we want to get #9 in first? I'll have a little bandwidth this weekend to help keep 'er movin'. |
@mbland @jasonkarns Sorry, work has kept me very busy, but bandwidth has opened up again. Phew. I'm glad the project's buzzing! Just quickly scanned through this last issue and I think that backwards-compat for this release is top priority, and anything that will likely break that should be pushed. That way when people migrate from the fork point to this repo (0.4 to 1.0), it will be a seamless (theoretically) transition with no breaking behaviors. If we lean towards this idea for 1.0, we can more easily zap bugs introduced between sstephenson/bats@0.4 and bats-core/bats-core@1.0 (including gathering reports and test cases). It makes the transition easier for users as well and makes the demarcation more clear. Also it gives us a handy way to test out distributing the new package and announcing changes/deprecations for the next major version! So yep, happy to ship what we got. :) |
Per my comment in #16, we're set to release v1.0.0 soon without the empty lines in |
(transferring bugs list from sstephenson/bats#196)
Empty output lines are missing from
${lines[@]}
.IFS broken after first run sstephenson/bats#89
saving $IFS in run() not altered for code using it - fix #89 sstephenson/bats#90
Revert "saving $IFS in run() not altered for code using it" sstephenson/bats#92
saving $IFS in run() not altered for code using it - fix #89 sstephenson/bats#90 has already been merged to master
Use POSIX compliant options with head for better compatibility (e.g. Busybox support).
Avoid undocumented usage of the head utility. sstephenson/bats#163
closed by Transfer bats#163 - Avoid undocumented usage of the head utility. #17
Incorrect TAP format for skipped tests.
format of TAP output for skipped tests is incorrect sstephenson/bats#141
This commit corrects the problem of incorrect TAP format for skipped tests. sstephenson/bats#142
will be closed by Transfer bats#142 - This commit corrects the problem of incorrect TAP format for skipped tests #19
set -o nounset
breaksbats-exec-test
.Support for "unofficial strict mode"? sstephenson/bats#171
bats-preprocess
breaks when translating a@test
line that uses tabs for white space, instead of plain spaces.@test: command not found if tab is used after test name sstephenson/bats#98
Fixed issue #98 sstephenson/bats#122
Bats failing on OS X 10.11.2.
let: count+=: Syntax Error on OS X 10.11.2 sstephenson/bats#140
The text was updated successfully, but these errors were encountered: