psychopy.org | Reference | Downloads | Github

GUI hangs on console prompt for login to Pavlovia

Using various features of the Builder and Runner to do with PsychoJS, the GUI application hangs. On the console used to launch PsychoPy, I see a prompt for Pavlovia login information:

Username for 'https://gitlab.pavlovia.org': 
Password for 'https://my_username@gitlab.pavlovia.org':

In some cases, correct login information unfreezes the application, and in others it does not.

Is there a workaround to this?
I can spend some time digging into the code to see what went wrong here, but would welcome any hints in the mean time, if anyone has any ideas.

Details of my system:

>cat /etc/centos-release 
CentOS Linux release 7.7.1908 (Core)
>python -V             
Python 3.6.8
>psychopy -v    
PsychoPy3, version 2020.1.2 (c)Jonathan Peirce 2018, GNU GPL license
>pip list | egrep psych
psychtoolbox    3.0.16

Details of the issue:

I run PsychoPy using:
>psychopy --builder
It’s important not to add “&” to the command-line, as that makes the console login prompt inaccessible.

Clicking the Builder > “View details of this project” button results in the application freezing and a seamingly endless loop of username/password prompts on the console, and the application needs to be restarted.
On the Runner, I see the message:

10.9716     WARNING     Couldn't connect to psychopy.org
Check internet settings (and proxy setting in PsychoPy Preferences.
156.9647     INFO     OAuthBrowser.onNewURL: https://gitlab.pavlovia.org/users/sign_in

I don’t know if this message is relevant.
Clicking the Runner > “Run PsychoJS task in local debug mode” button freezes and prompts for login at the console. This time filling in the login information runs the experiment locally successfully. However, this information is not saved, so clicking the same button again results in another application freeze and prompt.
Loading the same experiment in the Builder once again hangs the application with a console prompt, and correct login information unfreezes it.

This all makes me think that Pavlovia login information is not saved.
However, when I go to Builder > Pavlovia.org > User, my username is displayed there, so it appears to be saved somewhere. Clicking on my username makes no apparent difference.
Next, I try clicking the Builder > “Log in to Pavlovia.org” button, and it also suggests that I’m already logged in - my full name is displayed, and there is a “Logout” button.
Finally I go to Builder > Pavlovia.org > User > Log in to Pavlovia… fill in my login information, click the “Remember me” option, and successfully log in.
This makes no difference.

The problem here is with git - the console login prompt is from git remote.

I recall that git was not mentioned in the PsychoPy installation instructions. PsychoPy prompted me to install git when I first tried interfacing with Pavlovia. I also notice that CentOS 7 ships with a remarkably old version of git (1.8.3.1), and the GitPython library treats this version differently.

Anyway, I upgraded git to v2, and problem solved.

There’s not much point updating PsychoPy to support the older git, but the application could do a version check, and the documentation could mention the minimum git version requirement.