For reviewers: https://github.com/bitcoin/bitcoin/tree/bae178f3ca787d7d8896b1f880997423bb2af738/contrib/devtools#git-subtree-checksh
ref. #8811
16a1f7f Merge #3: Pull upstream
3f03bfd Merge pull request #27 from laanwj/2016_09_const_refs
5668ca3 Return const references from getKeys, getValues, get_str
cedda14 Merge pull request #28 from MarcoFalke/patch-1
9f0b997 [travis] Work around osx libtool issue
git-subtree-dir: src/univalue
git-subtree-split: 16a1f7f6e9ed932bec7c7855003affea1e165fb5
$ contrib/devtools/git-subtree-check.sh src/univalue
src/univalue in HEAD was last updated to upstream commit 16a1f7f6e9ed932bec7c7855003affea1e165fb5 (tree fe714bb1bdfbd52842107b54c590cfe5d4c58b3c)
src/univalue in HEAD currently refers to tree fe714bb1bdfbd52842107b54c590cfe5d4c58b3c
GOOD
ACK 2ca7faa
24 | @@ -26,6 +25,7 @@ addons: 25 | - pkg-config 26 | 27 | before_script: 28 | + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew uninstall libtool; brew install libtool; fi
What you are trying to workaround? Where can I read more about this?
See the upstream repo :)
The upstream issue (https://github.com/jgarzik/univalue/pull/28) is of a somewhat discutable quality. Another reference to the outside source. I just want to know what is the source of the problem that is solved by uninstall/install round...
The install will install a newer/different version of libtool which doesn't have an issue that prevented compiling the univalue project on macosx. I'd expect it to be a temporary workaround. Has this been reported meta-upstream to Travis?
@paveljanik The issue with homebrew was considered "mostly fixed" (https://github.com/Homebrew/legacy-homebrew/issues/43874#issuecomment-238809893) by some of the workarounds. If the maintainers of that project don't consider it that imporatnt, I think it is fine to just apply a trivial and low risk workaround to fix a travis issue.
Also note that the content of this .travis.yml is of no relevance in the bitcoin repo.
utack
If you end up here with the following error in test_bitcoin:
Running 210 test cases...
unknown location(0): fatal error in "base58_EncodeBase58": memory access violation at address: 0x00000016: no mapping at fault address
/home/orion/projects/bitcoin/bitcoin/src/test/base32_tests.cpp(21): last checkpoint
You need to clean your tree and build from scratch. Apparently changes to univalue are not detected by the build system, so files that depend on univalue.h will be rebuilt but not the library itself. This causes ABI conflicts.