When pushing with git a username dialog may pop up having an http origin URL. The username dialog looks like a password dialog which pops up afterwards. The characters are hidden by password symbols. Reproducible: Always
I'm not sure how to reproduce this. Do you have your git name configured in ~/.gitconfig? If not, then this may be the reason I'm not seeing this issue. Can you maybe show a screenshot of the dialog?
I'm not the original poster, but I have had the same concern for a while. Let me clarify the issue. When the kdevelop/ksshaskpass doesn't know the git username yet, it shows a ksshaskpass dialog for username first, then another for password. Once we configure the project to remember username, it just shows one for password. The two dialogs look almost identical but ask for totally different things. When the user is expecting just the password dialog, almost certainly s/he would just type her password. This causes three issues. 1. On the screen, she would type her password without masking. Oops. 2. Furthermore, kdevelop remembers the credential! Next time it will show a dialog that asks for password on "http://your_password_here:github.com/bluh/" without masking. Ooooops. 3. Finally, there is no easy way to make kdevelop forget this setting. Oooooooooops. https://forum.kde.org/viewtopic.php?f=218&t=129031 My suggestion is to show just one dialog in all cases (or zero dialog once the project remembers both username and password). Make it very clear which input box is username, which is password. Also, there should be a way to easily make kdevelop forget the 'username'.
can you show a screenshot please? or tell me how to reproduce this?
Here's the repro step. 0. If you have a global git config to automate authentication (eg per-host private key file), turn it off. These steps are about cases you need to manually input username/password. Also, I assume you have ksshaskpass. 1. Using git command, newly clone a git repo (either github or gitlab or whatever) *that needs authentication*. For example, just clone a private github reop. 2. Import the project to kdevelop, then git pull from kdevelop. 3. The first dialog asks for username, but it surely looks like asking for a password. Type some character and Enter. 4. The second dialog asks for password. Really identical. Also, it shows the "username" you typed above as part of URL without masking. Also attached screenshots. You will be surprised how identical their looks are.
Created attachment 97601 [details] username dialog
Created attachment 97602 [details] password dialog
I wonder if you need any more info from me?
@Hideaki: No, thanks. You did a great job. Unfortunately I believe this has nothing to do with KDevelop. It's a ksshaskpass bug, no? Also see: https://bugzilla.redhat.com/show_bug.cgi?id=1043311 ("ksshaskpass asks for username with password dialog, allowing mistaken pass to become part of URL").
Got it. I didn't know how kdevelop invokes ksshaskpass, so I imagined there might be some knob to change that behavior. But, sounds like it provides no control to kdevelop. I will poke the ksshaskpass people then...
It has nothing to do with us, it's a git feature, invoked when doing e.g. `git push`. Thanks.