GithubHelp home page GithubHelp logo

ethers-io / ethers-ens Goto Github PK

View Code? Open in Web Editor NEW
49.0 49.0 15.0 124 KB

Deprecated; please see `@ethersproject/cli` instead

Home Page: https://github.com/ethers-io/ethers.js/tree/ethers-v5-beta/packages/cli

JavaScript 72.82% TypeScript 27.18%
cli ens ethereum

ethers-ens's People

Contributors

ricmoo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ethers-ens's Issues

special characters not supported?

Looks like this tool doesn't allow for german Umlauts (öüä) in ENS names, eventhough they are supported by ENS. Is there a workaround?

Support backspace in password entry

The readline library doesn't seem to like backspaces, making it bothersome if you mistype a password.

I will look into this, which may simply require a flag passed to readline, or possibly an upstream patch to readline.

Import Bids

Hi there,
I've exported my bids from https://registrar.ens.domains, but when I try to import them with:

ethers-ens import-bid /full/path/ens-bids-backup_2018-01-26T02_22_50.705Z.json

I get an error:

Network: mainnet
{ [Error: invalid hexlify value] name: undefined, input: undefined }

Any idea why this is happening?

ignore overrides all commands placed later

For a single name I had placed in this sequence of commands:

  1. watch
  2. ignore
  3. start-auction
  4. bid

The ignore command had overridden the following commands. Which means the name did not show up in scan-log as *revealBid()".
Not sure if that's by design, but I'd prefer later commands such as start-auction or bid to override the ignore... Only an ignore that was placed as the latest command should override all other commands.

EIP1577 support

Looks like the spec has evolved since EIP1577 has been implemented. Are you interested in having it updated?

Release ENS names

Any plans to add functionality for releasing names (releaseDeed)?

Unsupported key-derivation function using Parity wallet

I tried to bid using a Parity JSON wallet file, but got an error:

UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: unsupported key-derivation function

The JSON file is structured like this:

{
   "id" : "...",
   "name" : "...",
   "address" : "...",
   "crypto" : {
      "cipherparams" : {
         "iv" : "..."
      },
      "ciphertext" : "...",
      "mac" : "...",
      "kdf" : "pbkdf2",
      "kdfparams" : {
         "dklen" : 32,
         "c" : 10240,
         "prf" : "hmac-sha256",
         "salt" : "..."
      },
      "cipher" : "aes-128-ctr"
   },
   "meta" : "{}",
   "version" : 3
}

allow user to change the gas price

I'd be great if I could change the gas price (e.g. when using --cheap) via some cli commands. Seems like things are working these days with 1Gwei or even less (with some patience)...

Move most safety checks into the library

Currently the bin/ethers-ens performs a large number of safety checks, for example:

  • Make sure a bid exists on the blockchain before attempting to reveal
  • Make sure a bid does not exist on the blockchain before bidding
  • Make sure an auction is owned before allowing finalize
  • Make sure the start date is past before allowing starting an auction
  • Make sure the command, in general, makes sense for the current state

These checks should be moved into the library (index.js) so all callers benefit from them.

This will also need to have more machine-readable errors passed back (via the Promise), and have those machine-readable errors converted back into human-readable.

Gwei Price 99 - Auto Gwei?

Since the last night update, Gwei is set to 99 by default, this is way to much, specially when the gas price was only 1 Gwei at that time.
I've just paid $9.37 for a reveal bid execution - https://www.dropbox.com/s/oc9jr9n7gvzps4y/ss_144.jpg?dl=0
It would be nice to grab the gas price before every transaction. this would create a small delay in execution but we'd always pay the lowest price.

I'm aware that we can use --gas-price or --cheap in order to set a lower gas price, but way too often I forget to set it and, as explained above, it can be costly.
Having the gas price set by default to the lowest price would prevent situations like this one.

startAuctionsAndBid - Feature?

It seems that registrar.ens.domains uses startAuctionsAndBid function instead of start-auction and bid.
Implementing the startAuctionsAndBid would save eth and time, do you plan to implement this?

ens-log.txt not created if missing

When you first install and try to run ethers-ens watch xyz.eth, it raises an error because it cannot find ens-log.txt.

$ ethers-ens watch xyz.eth
Network: mainnet
fs.js:584
  return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
                 ^

Error: ENOENT: no such file or directory, open 'ens-log.txt'
    at Object.fs.openSync (fs.js:584:18)

Workaround:
$ touch ens-log.txt

reveal-bid instruction not showing correct bid amounts

(minor inconsistency)

I made two bids for the same name with differing bid amounts. First 0.01, second 0.031.

When the time came to reveal I got two "revealBid(" instructions, but both of them with the amount of my second bid, which was higher: 0.031.

image

Error: replacement transaction underpriced

I now have a situation where I can't seem to get ethers-ens to use the correct nonce. It seems to have started after I entered the password unsuccessfully (why can't I use backspace on the password field?). I now keep getting the error: "Error: replacement transaction underpriced" for every new transaction when using --cheap.

If I remove the --cheap flag, it overwrites the last pending transaction. But the same problem occurs again for the next transaction. It's like ethers-ens is always using one nonce value too small.
If I always wait for the one pending transaction to finish, I can make a new one. But I can no longer create more than one pending transaction at once without this error popping up.

I'm using --rpc http://localhost:8545

It would be nice to have that flag "--nonce" you had mentioned. Or somehow make the code more robust in the automatic choice of nonce... Using --rpc http://localhost:8545 it should be able to determine the correct nonce, right?

Testing

A must, sooner than later, is regression tests, especially for the library.

Feature Request: Should be able to reveal bids placed from MEW or the DAPP

Have a few bids from MyEtherWallet that I'm trying to reveal. It looks like if the bid was not made using the command line tool, it can't be revealed either. Perhaps I'm just messing up the --salt field, or maybe it's looking through the log file or somewhere else.

I tried a number of workarounds, like adding a placeBid entry in the ens-log.txt. This kind of worked, as the scan-log would then show the name and give warnings for names that haven't been revealed. But I still can't seem to reveal from the command line tool.

I keep getting thrown an error like this:

(node:6464) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): {name}.eth: bid not found


Nice work by the way on this tool. It's definitely saving me a lot of headache from when I was placing bids through the dApp and then MEW.

Generic set-text KEY VALUE command

The (not yet pushed) code supports setting e-mail and url of a domain.

This issue is mostly to track that once that is released, a generic method should be added to allow arbitrary keys to be set.

Subnode Creation

Hi there,
How can we create a new set-subnode like sub.myname.eth?
Is there any particular command sequence that we should follow?
Thank you!

unable to reveal bid after deadline

If you forget to reveal a bid during the 48-hour reveal phase, and then try to reveal it, ethers-ens prints an error:

  Error: name already owned

However, it is still worthwhile to reveal the bid, as 0.5% of the bid can be claimed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.