Skip to content
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

Integrate new wallet address manager package #138

Merged
merged 0 commits into from
Oct 29, 2014

Conversation

davecgh
Copy link
Member

@davecgh davecgh commented Oct 13, 2014

This pull request converts the wallet to use the new secure hierarchical deterministic wallet address manager package.

The following is an overview of modified functionality:

  • The wallet must now be created before starting the executable
  • A new flag --create has been added to create the new wallet using wizard style question and answer prompts
  • Starting the process without an existing wallet will instruct now display a message to run it with --create
  • Providing the --create flag with an existing wallet will simply show an error and return
  • When an existing legacy keystore exists, the --create flag will prompt you for the old private passphrase and automatic convert all old addresses to the new wallet being created

@@ -54,6 +56,7 @@ var (

type config struct {
ShowVersion bool `short:"V" long:"version" description:"Display version information and exit"`
Create bool `long:"create" description:"Create initial wallet"`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't think "initial" is the word we want here. That almost makes it sound like we support having many wallets open at a time.

Perhaps the description should also mention how this option prevents normal operation by exiting once the wallet is created.

@jrick
Copy link
Member

jrick commented Oct 14, 2014

We also need to update the README.md to remove references to Armory and (ideally) describe that btcwallet is now a HD wallet / BIP0032 compatible.

@jrick
Copy link
Member

jrick commented Oct 15, 2014

Couple other things:

  1. I think we want to make the --create text line wrapped to 80 columns.
  2. With the old keystore there has always been at least one address (the root address), however with waddrmgr, an account can have zero keys. We need to fix rescan to not do any work when there are no addresses that need to be rescanned.


} else if !fileExists(mgrPath) {
err := fmt.Errorf("The wallet does not exist. Run with the " +
"--create option to initialize and create it.")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed on IRC, we can indicate that '--create' also imports legacy keystore. Maybe update it to:

The wallet does not exist.  Run with the --create option to initialize, create it and automatically import any existing legacy wallet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants