-
Notifications
You must be signed in to change notification settings - Fork 72
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
Drop --rpc-url
and --network-passphrase
.
#1616
Conversation
e6cc8d7
to
ace5632
Compare
@leighmcculloch only soroban e2e tests are failing. I believe this requires changing https://github.com/stellar/system-test, right? What's the process? First I update stellar/system-test then merge this, or is it the other way around? |
ace5632
to
e7f007e
Compare
We don't have a process. We haven't broken it much. 🫢 |
* `--rpc-url <RPC_URL>` — RPC server endpoint | ||
* `--network-passphrase <NETWORK_PASSPHRASE>` — Network passphrase to sign the transaction sent to the rpc server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something I'm wondering about is folks might be using these in scripts, or with env vars, so that they can interact with specific RPC in a way that doesn't rely on stateful changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fair point. I wonder if it's worth all the complexity on our codebase due to how command flattening happens with clap though. 🤔
Any suggestions? Should we abandon this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should be able to do the same (interact with a specific RPC) with combination of existing commands. So we won't break the flow, but it would simplify things for (most) people. The only case it's more complex if people specifically want to override RPC for one command:
Now
stellar <command> --rpc-url <url>
Suggested
stellar <command> --rpc-url $(stellar network add --from mainnet --rpc-url <url> --name `uuidgen`)
or
#!/usr/bin/env bash
export STELLAR_NETWORK=$(stellar network add --from mainnet --rpc-url <url> --name `uuidgen`)
stellar <command_1>
stellar <command_2>
^ this looks way more complicated than 1st option obviously, but how often do people need to override rpc url? Getting rid of rpc-url and passphrase also allows us to make --network optional where it needs to be way more easily -> offers better UX (right now sometimes we need to pass --network even when it's not required for command that's happening offline. For example, generating keys)
Suggested method also requires stellar network add
to
- print an alias of a new network to stdout
- support new
--from
flag (that copies network from existing)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not related to the PR, but should we add
network info <name>
command to list network passhprase and RPC? Currently, the flow is to do rm mainnet && add mainnet --rpc-url <my-url> --passphrase
and it'd be easier to see the passphrase of mainnet in the CLI
022dd07
to
386b2df
Compare
9664342
to
3cbb8d4
Compare
What
Close #1610
Why
To simplify our codebase and improve the CLI usability by having only one way of setting the network.
Known limitations
N/A