< bitcoin-git>
[bitcoin] bytting opened pull request #15083: wallet: Fix a bug where memcmp takes a pointer address as second argument (master...20190103-fix-memcmp) https://github.com/bitcoin/bitcoin/pull/15083
< bitcoin-git>
[bitcoin] benthecarman opened pull request #15084: gui: don't disable the sync overlay when wallet is disabled (master...sync_overlay_without_wallet) https://github.com/bitcoin/bitcoin/pull/15084
< bitcoin-git>
[bitcoin] benthecarman opened pull request #15085: gui: Fix for Incorrect application name when passing -regtest (master...regest_window_name) https://github.com/bitcoin/bitcoin/pull/15085
< bitcoin-git>
[bitcoin] benthecarman opened pull request #15086: rpc: Fixing logical error in ListTransactions (master...fix_logical_error_in_ListTransactions) https://github.com/bitcoin/bitcoin/pull/15086
< promag>
reason: changes behavior and its for backport
< promag>
oh thanks!
< fanquake>
np. I think I'll miss the meeting anyways.
< fanquake>
If we run out of topics, I'd suggest discussing minimum Qt. Seems to be some consensus around 5.6 for 0.18.0, and I think that would be a good target.
< bitcoin-git>
bitcoin/master 79f0a3f Hennadii Stepanov: Get more info about GUI-related issue on Linux
< bitcoin-git>
bitcoin/master 1d73636 Wladimir J. van der Laan: Merge #15038: docs: Get more info about GUI-related issue on Linux...
< bitcoin-git>
[bitcoin] laanwj closed pull request #15038: docs: Get more info about GUI-related issue on Linux (master...20181226-issue-template-gui-linux) https://github.com/bitcoin/bitcoin/pull/15038
< wumpus>
promag: you want a fresh travis build? I can retrigger travis if you want
< promag>
but does it rebase with master?
< wumpus>
it should
< promag>
ok then!
< moneyball>
for today's meeting, there is one topic proposed ahead of time, which was discussed a bit after proposal, but achow101 may want to address further today: topic proposed by achow101: having users create their wallets instead of automatically creating a default wallet
< sipa>
I will probably miss the meeting
< jonasschnelli>
hi
< gleb>
hi
< achow101>
hi
< moneyball>
hi
< wumpus>
hi
< wumpus>
#startmeeting
< lightningbot>
Meeting started Thu Jan 3 19:01:48 2019 UTC. The chair is wumpus. Information about MeetBot at http://wiki.debian.org/MeetBot.
< instagibbs>
happy 10 years wumpus, who i assume is satoshi
< wumpus>
yes \o/
< instagibbs>
hi
< wumpus>
lol instagibbs
< wumpus>
#topic high priority for review
< wumpus>
#11082 #14491 #14941
< gribble>
https://github.com/bitcoin/bitcoin/issues/11082 | Add new bitcoin_rw.conf file that is used for settings modified by this software itself by luke-jr · Pull Request #11082 · bitcoin/bitcoin · GitHub
< wumpus>
#topic having users create their wallets instead of automatically creating a default wallet (achow101)
< achow101>
this was discussed briefly when I first mentioned it
< jonasschnelli>
I like the concept
< achow101>
the end goal is to make wallets that were "born encrypted"
< luke-jr>
I suspect it may be confusing to some users
< wumpus>
I think both should be possible
< jonasschnelli>
I don't think it confuses users... we could still trigger the "create" wallet process at first launch in the GUI
< wumpus>
ideally, if you want the default wallet, that's fine, if you want to create something customized and start with nothing, that should be possible
< jonasschnelli>
but that sounds after a lot of configuration options.. do you mean a -nodefaultwallet options?
< wumpus>
I think having to set an encryption key at first used has been argued against in the past though
< achow101>
My idea is to get rid of the default wallet entirely. I don't think there really should be a default wallet
< meshcollider>
Can't a default wallet setup box or something pop up like the datadir one on first launch
< achow101>
and having the default wallet with createwallet can be confusing. users may mistakenly send things to the default wallet when they meant to use some other wallet
< wumpus>
meshcollider: exactly; that could be skippable
< jonasschnelli>
I agree... wallets should probably created intentionally since its an important data file
< gmaxwell>
jonasschnelli: doing something automatically on first _launch_ would largely defeat the point.
< gmaxwell>
jonasschnelli: the behavior I've been recommending is triggering it when the user attempts to get an address.
< jonasschnelli>
gmaxwell: only in the GUI (wizzard) ....
< wumpus>
I think changing this is too late for 0.18
< gmaxwell>
jonasschnelli: yes, that still defeats the point.
< jonasschnelli>
though I'm not convince... only if we "confuse" users with removing the default wallet
< achow101>
gmaxwell: so I investigated the create wallet on use stuff before and I think it would be rather fragile or require a lot more refactoring
< jonasschnelli>
But yeah,.. I agree with you gmaxwell
< gmaxwell>
achow101: But do you not agree that it's the right behavior?
< promag>
gmaxwell: also for rpc clients?
< achow101>
gmaxwell: yes. but I think that having the user explicitly create the wallet is a suitable replacement too
< gmaxwell>
promag: I have less strong opinions on that, I could go either way. The RPC can't prompt you to answer more questions (like encryption), while the gui can.
< wumpus>
but for RPC the client could use createwallet explicitly to create the first wallet
< ryanofsky>
Will add my +1 for Greg's idea. I think creating a default wallet when needed is more user friendly.
< gmaxwell>
achow101: what exactly does that mean? do you mean getnewaddress should be missing from the UI otherwise, or it should silently fail?
< promag>
gmaxwell: I'd love to remove the implicit wallet endpoint
< jonasschnelli>
When the wallet is auto-creating when it's needed, there is (probably) no place for additional options
< achow101>
gmaxwell: i mean that getnewaddress would give you an error saying "do createwallet first"
< gmaxwell>
achow101: because if the GUI would offer the options but pop up a message, then that could simply start wallet creation: so I don't see where the additional refactoring comes in there for the gui.
< wumpus>
this is similar to say, SQL servers, they don't usually create a default database either but assume the client will create one
< wumpus>
for RPC that makes perfect sense, for the GUI, I don't know
< promag>
achow101: not only that imo, all wallet methods
< achow101>
gmaxwell: in the gui, i imagine it would be like the disablewallet ui but a button that says "click here to make a wallet"
< gmaxwell>
promag: if the endpoint is gone, then users will just get a command not found. We can do that, but kinda lugly.
< jonasschnelli>
I think the GUI with no wallet will require (decent) refactoring to show the receive tab in order to let the user click on "new address"
< gmaxwell>
achow101: If it's made conspicious enough, thats fine with me I suppose.
< gmaxwell>
We just need to be careful to not make the software unusable for new users.
< wumpus>
gmaxwell: that is an implementation detail depending on how it's handled, it could just as well return a message to create a wallet first
< achow101>
the point is that it's going to be totally obvious that you need to make a new wallet. there shouldn't be any magic in the background
< gmaxwell>
like they shouldn't have to dig through menus to make expected options appear or anything like that.
< jonasschnelli>
Why not do it like other wallets,... if the GUI detects no wallet, allow to load or create a wallet
< wumpus>
jonasschnelli: exactly
< wumpus>
that makes perfect sense for the GUI
< gmaxwell>
jonasschnelli: when?
< wumpus>
at start, when there's no wallet.dat
< luke-jr>
maybe after the first-launch screen it should open some new wallet wizard with a Skip button
< jonasschnelli>
When the GUI loads and no wallet has been detected (but was compiled with wallet support)
< jonasschnelli>
Ask: new / open
< wumpus>
and no -disablewallet or -nowallet or such was specified
< jonasschnelli>
yes
< gmaxwell>
The point of not creating the wallet on start is so that the wallet will not be created unencrypted, and also so that you don't end up with a lot of unusued wallet files laying around.
< wumpus>
gmaxwell: right
< wumpus>
that's one advantage of never creating wallet.dat without prompting
< gmaxwell>
And you don't prompt for an encrypted key at initial start because users will set something random forget it, then months later send funds to it.
< achow101>
gmaxwell: that would be part of the ui prompt
< jonasschnelli>
That is a critical point
< achow101>
gmaxwell: something like what electrum does on its first start
< gmaxwell>
(Electrum insututed a complicated UI flow that forces users to write down a recovery code to address that issue)
< promag>
gmaxwell: actually I'm working on "File -> Reopen Wallet -> ..." which requires saving a history.. if this is empty it could prompt the wizard
< jonasschnelli>
Electrum is too much handholding IMO
< gmaxwell>
Electrum's behavior was driven by massive amounts of funds loss that happened when prompting users for encryption keys months before using the wallet.
< wumpus>
it'd be possible to skip wallet creation completely
< jonasschnelli>
That would speak for the create-on-first-new-address
< gmaxwell>
jonasschnelli: or just having a clear create button.
< achow101>
as I said earlier, I think the ideal solution would be to just have a button in the main ui that says "click here to make a wallet"
< gmaxwell>
Or having error messages on use that tell you to create.
< wumpus>
yes that was suggested, show the GUI in zero-wallet mode and have a 'create wallet' mode
< gmaxwell>
Though if you are going to have an error message, it could just start the create dialog.
< wumpus>
button
< luke-jr>
use the webcam to make the user prove they wrote down the passphrase /s
< gmaxwell>
That sounds okay to me, the implementation just needs to be conspicious.
< jonasschnelli>
Ideally the GUI is completely usable (explore) without a wallet... and the wallet is created on first address
< promag>
regarding the -wallet arg, should it stay "load or create"?
< wumpus>
luke-jr: doesn't everyone have a sticker over those xD
< gmaxwell>
luke-jr: electrum disables copy/paste and then makes you reenter on another screen. less computer vision required. :P
< gmaxwell>
promag: probably load or create, maybe introduce a -walletfile that doesn't create?
< gmaxwell>
and consider depricating the create version later?
< luke-jr>
gmaxwell: I've always found that super annoying for network passwords (but haven't given it a lot of thought for wallet passphrases, or seeds) since it prevents password management
< achow101>
promag: imo it should just be a load option. no create
< phantomcircuit>
gmaxwell, i have so many completely empty wallet files backed up it's silly
< achow101>
promag: maybe even error when the wallet file can't be found to load
< promag>
achow101: maybe lazy creation - on actual usage?
< wumpus>
I think we're starting to go in circles
< jonasschnelli>
jup
< wumpus>
any other topics?
< promag>
anyway, too late for 0.18, and too many breaking changes
< wumpus>
yes, let's aim to have the creat-with-password RPC in 0.18, but don't change any defaults
< jonasschnelli>
ack
< promag>
I'd like some feedback here #14941, so far only ryanofsky reviewed
< achow101>
jl2012: it means they are neither acking nor nacking the pr. they don't really support it, but aren't completely opposed to it. kind of like apathy
< BlueMatt>
jl2012: oh, I think wumpus meant -0
< jl2012>
ok, thanks!
< wumpus>
"approximately zero", as in, I don't care about it
< wumpus>
but it looks a lot of people have utACKed it so doesn't matter
< wumpus>
could merge it, though the last post does make me doubt again?
< wumpus>
I mean, if the BIP is changed, it doesn't need to be merged, right?