In the case of a dry run, there's no need to prompt for a password what so ever. This could be solved a few ways.
If the dry run switch is given, don't get read only hex config. This makes the most sense to me as it keeps that logic localized to the publish command, which is the only place that knows about the concept of a dry-run.
Pass the dry run switch or some equiv to rebar3_hex_config:get_hex_config/3, this really means rebar3_hex_config:get_hex_config/4.
In the case of a dry run, there's no need to prompt for a password what so ever. This could be solved a few ways.
If the dry run switch is given, don't get read only hex config. This makes the most sense to me as it keeps that logic localized to the publish command, which is the only place that knows about the concept of a dry-run.
Pass the dry run switch or some equiv to rebar3_hex_config:get_hex_config/3, this really means rebar3_hex_config:get_hex_config/4.