it turns out that the server implementation relies on the clients doing
the whole auth flow over the same connection, but `go` will only let you
reuse a given tcp connection if you've completely drained the response's
body (which `--verbose` ends up doing, despite copying everythign back
to a new reader).
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
example:
monerod --rpc-login foo:foo (...)
monero daemon -u foo -p foo get-version
new flags
-p, --password string password to supply for rpc auth
-u, --username string name of the user to use during rpc auth
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
well, `pkg/rpc` in theory already supported tls given that it relies on
an `http.Client` which could already be making use of such proxy, but at
least now we make it configurable to the CLI in a nice way
very command under `monero daemon|wallet` now takes:
Flags:
-a, --address string full address of the monero node to reach out to (default "http://localhost:18081")
-h, --help help for daemon
--request-timeout duration how long to wait until considering the request a failure (default 1m0s)
--tls-ca-cert string certificate authority to load
--tls-client-cert string tls client certificate to use when connecting
--tls-client-key string tls client key to use when connecting
-k, --tls-skip-verify skip verification of certificate chain and host name
-v, --verbose dump http requests and responses to stderr
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
some of the commands included fee/per-kb, others didn't - here we
standardize on always including that
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
- update get-height's description
- update some fields to prefer uint64 rather than `int`
all those fields would never take negative values and should be
able to grow quite a lot
- switch commands from display to humanize
`humanize` gives us some pretty handy human readable
conversions, so let's just go with it rather than rolling our
own
- add get-version command
- prettify get-transaction pool
example out (hash reduced in size):
AGE HASH FEE (µɱ) FEE (µɱ per-kB) SIZE in/out
1 minute ago 1a053e4058839b21c4 9 6.4 1.5 kB 1/2
1 minute ago fb61680a1584ca1ec3 9 6.4 1.5 kB 1/2
1 minute ago a58de0d2747cdd6a5d 12 6.4 2.0 kB 2/2
1 minute ago c54f4b33ed81335f78 308 160.6 2.0 kB 2/2
57 seconds ago ab210c55bd9c3efe09 12 6.4 2.0 kB 2/2
55 seconds ago 88df3311e19b1280b5 9 6.4 1.5 kB 1/2
51 seconds ago a3aa674ed3d4eb56c6 127 32.5 4.0 kB 6/2
51 seconds ago e896abe686d2f816fc 9 6.4 1.5 kB 1/2
31 seconds ago eb6ea6662ce754d025 9 6.4 1.5 kB 1/2
31 seconds ago 592204223e607cc5d9 9 6.4 1.5 kB 1/2
24 seconds ago ba8d52f90fd45dd32d 12 6.4 2.0 kB 2/2
24 seconds ago 792e68ded7805037c9 12 6.4 2.0 kB 2/2
- move response types to a single file
- rework pretty-printing of txn-based cmds
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
moving on, we'll have tagged commits that represent a point-in-time
release for the `cli` and the library, so, it's good to mention that one
can just fetch the binary for their dist if they'd like to consume the
cli (which, at least for me, has proven to be quite handy).
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
- making use of `goreleaser`, we can make building for all platforms
easy peasy, leveraging go's ability to create reproducible builds given
a set of flags that we can have under in a declarative fashion under
`goreleaser.yaml`
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
- update readme so that it's up to date when it comes to package
structure
- add a badge that points at godoc so that one can quickly recognize
where docs can be found
- add an example that can be referenced via godoc (using `_test.go`
example)
- update sync-info to include a little description
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
- using `cobra` for sake of better organization when it comes to command
hierarchy
- splitting `rpc` into `daemon` and `wallet` so we can start thinking of
monero-wallet-rpc support
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>
some of the methods will now start taking pointer-based values, so lets
bring a utility to help passing those.
Signed-off-by: Ciro S. Costa <utxobr@protonmail.com>