< bitcoin-git>
[bitcoin] TheBlueMatt opened pull request #10758: Fix some chainstate-init-order bugs. (master...2014-07-nonatomic-flush-fixes) https://github.com/bitcoin/bitcoin/pull/10758
< jtimon>
jamesob just finally learning how to use docker on my own now. yeah, I think it could simplify development by not requiring to install the dependencies in your local system. perhaps it could help simplifying further the process for deterministic builds? maybe others prefer it on another repo, but I think it wouldn't hurt on contrib
< jtimon>
in contrib
< jtimon>
but I think you still need a VM for the deterministic builds...not sure
< jamesob>
jtimon: is the need for deterministic builds obviated by the hash related to each docker image build? i.e. can we reference a single docker image in lieu of doing the vm builds?
< jtimon>
no, I don't think docker's determinism is enough for bitcoin's deterministic builds is what I'm saying, but I'm no expert on either of them, just used them by following tutorials and reading other people's code
< jamesob>
gotcha
< sipa>
jamesob: i think we want to push it the other direction really... where the build becomes deterministic even when not run in any controlled environment
< sipa>
(apart from compiler versions)
< jamesob>
sipa: yeah, makes sense... relying on a single trusted image is probably the counterpoint to the purpose of the build process :)
< sipa>
jamesob: exactly
< jtimon>
right, the point is everyone creating the same image on their own
< sipa>
jamesob: and it's already the case for the OSX build pretty much (as it builds the compiler etc as part of the build process)
< jamesob>
ah interesting
< jtimon>
my doubt was if docker could maybe remove the need for a VM
< sipa>
isn't docker effectively creating a VM?
< sipa>
(/me docket noob)
< jamesob>
I think there may be promise there... running a single container is less memory consumptive than, say, virtualbox afaik
< jamesob>
and certainly much faster for anyone who has the docker daemon already running
< sipa>
no need for virtualbox
< jtimon>
I mean, in the deterministic build tutorial for bitcoin, which I found easy to follow, you are required to create a debian vm
< jtimon>
perhaps that's just good habit, but it looked like a requirement
< sipa>
sure, because that's easiest to make sure the environment matches
< sipa>
but you can just use typical desktop linux environments as host
< jtimon>
well, that's where I wonder if docker could simplify things
< sipa>
i'm sure it can simlify things
< sipa>
but i'm questioning how it could replace the need for a VM... when (afaik) it internally runs things in a VM
< jtimon>
just use debian:jessie container or something
< jamesob>
jtimon right
< jamesob>
sipa docker is almost closer to a chroot than a VM IMO
< sipa>
jamesob: so is LXC
< sipa>
gitian right now has no need for a VM anywhere
< jamesob>
yep -- I think docker used to ride on top of LXC; think they may have ditched it recently
< jamesob>
gotcha
< sipa>
the instructions tell you to create a debian VM because that's an easy way to get a system in a simple to describe state
< sipa>
so if you can simplify that process with docker, feel free
< jamesob>
cool, I'll take a look
< sipa>
but at this point, i think can't avoid gitian
< sipa>
so you'd describe some docker system in which gitian can be run
< jtimon>
jamesob: yeah, if you modify the gitian guide to use docker instead of a VM and hopefully having to copy and paste less things I will be more than happy to try it locally
< bitcoin-git>
[bitcoin] TheBlueMatt opened pull request #10759: Fix multi_rpc test for hosts that dont default to utf8 (master...2017-07-fix-mult-rpc-test) https://github.com/bitcoin/bitcoin/pull/10759
< jonasschnelli>
For your info: promag (João Barbosa) does – AFAIK – work on reviewing stuff pretty much fulltime (he has just started, giving him some direction would be good in genereal I guess)
< bitcoin-git>
bitcoin/master bc7d103 Matt Corallo: Fix multi_rpc test for hosts that dont default to utf8...
< bitcoin-git>
bitcoin/master 1d4805c MarcoFalke: Merge #10759: Fix multi_rpc test for hosts that dont default to utf8...
< bitcoin-git>
[bitcoin] MarcoFalke closed pull request #10759: Fix multi_rpc test for hosts that dont default to utf8 (master...2017-07-fix-mult-rpc-test) https://github.com/bitcoin/bitcoin/pull/10759
< jonasschnelli>
Seems like a cirular dependency thing
< jonasschnelli>
*circular
< jonasschnelli>
HTTPReq_JSONRPC is implemented in httprpc.cpp which is part of bitcoind ....
< wumpus>
HTTPReq_JSONRPC is part of libbitcoin_server_a, which is valid to be used from wallet code
< wumpus>
I don't get the error either
< jonasschnelli>
Also have it on my Trusty 14.04 VM with gcc
< jonasschnelli>
maybe a bug with the function typedef
< jonasschnelli>
Question: what to do with the hybrid rpc calls (in terms of untangling the endpoints)...
< wumpus>
well the circular dependency between libbitcoin_server and libbitcoin_wallet, as you say
< jonasschnelli>
Example: I have set now signrawtx to the /v1/node side... but somehow you also want to be able to choose the wallet used for that call..
< wumpus>
I'd just ignore getinfo for the endpoints, we want to deprecate that anyway
< wumpus>
signrawtx maybe put it both on the node endpoint as the wallet endpoints?
< wumpus>
I don't know
< jonasschnelli>
Yes. Think so.
< jonasschnelli>
Maybe endpoint = "/v1/*" for now
< jonasschnelli>
The linker error: it's only test_bitcoin that has the linker error
< wumpus>
does test_bitcoin somehow link in a different order?
< jonasschnelli>
I don't know. Could it be some boost internal fixture template thing?
< jonasschnelli>
wumpus: the only thing thats may be different for test_bitcoin is that we pass in a --static (but should not matter IMO)
< bitcoin-git>
[bitcoin] ReneNyffenegger opened pull request #10764: Tests: address placement should be deterministic by default (master...test-addrman) https://github.com/bitcoin/bitcoin/pull/10764
< bitcoin-git>
[bitcoin] fanquake closed pull request #10764: Tests: address placement should be deterministic by default (master...test-addrman) https://github.com/bitcoin/bitcoin/pull/10764
< wumpus>
link order matters, when linking static libraries. The libraries that need symbols should come before the library it needs symbols from
< wumpus>
so the most general libraries (such as utilities etc) should end up last, the more specific ones first. This is complicated by circular dependencies, in which case it's pretty much a gamble whether it works.
< wumpus>
(it's linker dependent, so it makes sense that you see differences between OSes)
< jonasschnelli>
wumpus: oh, if I move $(LIBBITCOIN_WALLET) in front of $(LIBBITCOIN_SERVER) (in test_bitcoin) it works...
< bitcoin-git>
[bitcoin] ReneNyffenegger opened pull request #10765: Tests: address placement should be deterministic by default (master...test-addrman) https://github.com/bitcoin/bitcoin/pull/10765
< jonasschnelli>
wumpus: have you made any thought on #10251? Should I reduce it to the CWallet only cache (remove the GUI stuff)?
< gribble>
https://github.com/bitcoin/bitcoin/issues/10251 | Add balances cache / GUI: use a signal instead of a poll thread by jonasschnelli · Pull Request #10251 · bitcoin/bitcoin · GitHub
< bitcoin-git>
[bitcoin] ReneNyffenegger opened pull request #10768: Build System: Prevent warning about "maybe uninitialized variable" nStart in init.cpp (master...init-nStart) https://github.com/bitcoin/bitcoin/pull/10768
< spudowiar>
What's the best way to check if a CTransaction is the same, apart from any scriptSigs?
< spudowiar>
e.g. Compare a signed transaction to an unsigned transaction
< instagibbs>
spudowiar, strip scriptsig/witness data and compare
< instagibbs>
anyone know a good trick to figure out where bitcoind is spending it's time in? gdb attaching just gets me to the WaitForShutdown loop
< instagibbs>
looking at valgrind's callgrind but not sure if that's the right tool for what I'm looking for
< gmaxwell>
instagibbs: you're hung on shutdown and trying to find out where or?
< gmaxwell>
instagibbs: are you looking at all threads when you connect with gdb?
< sipa>
threall apply all bt
< instagibbs>
no, spikes in cpu usage fairly consistently on one machine
< gmaxwell>
thread apply all bt
< instagibbs>
sipa, thanks just found via googling
< midnightmagic>
hrm. I thought there was another shortcut for that command.. like bt all or something.
< spudowiar>
instagibbs: Is there a utility function to do that or must I write it myself? :)
< instagibbs>
don't think there's a utility function, although you could make one and upstream it for use in various places.
< spudowiar>
I'll leave it for now. But I want to add it later to check whether the hardware wallet returned the correct transaction
< jonasschnelli>
Hmm.. why does the Gui still changes the global payTxFee when fiddling with the fee slider? I though we have fixed this,.. or is this intentional?
< jonasschnelli>
Maybe correct: we just set it to 0 when smartFees (the slider -> estimations) are enabled.
< BlueMatt>
oh shit #10651 needs to go for 15... sipa what are your thoughts on loop/array/shell garbage?
< bitcoin-git>
[bitcoin] jonasschnelli opened pull request #10769: [Qt] replace fee slider with a Dropdown, extend conf. targets (master...2017/07/qt_fee_slider) https://github.com/bitcoin/bitcoin/pull/10769
< jonasschnelli>
Added 0.15 milestone to 10651
< bitcoin-git>
[bitcoin] TheBlueMatt opened pull request #10770: Drop upgrade-cancel callback registration for a generic "cancelable" (master...2017-07-upgrade-cancel-nits) https://github.com/bitcoin/bitcoin/pull/10770
< bitcoin-git>
[bitcoin] practicalswift opened pull request #10771: Remove unused variables in shell scripts (master...unused-shell-variables) https://github.com/bitcoin/bitcoin/pull/10771
< spudowiar>
Right, I'm going to have to change a lot of the RPC stuff to support hardware wallets