psychopy.org | Reference | Downloads | Github

Psychopy 3.0.0b12 freezes whenever I try to push audio files to pavlovia


#1

Hello everyone,

When I am creating an online experiment and try to push files to pavlovia, the programme freezes everytime. It used to work in Psychopy 3.0.0.b11, but since I have updated it, it does not work anymore. I would be grateful if someone could help me with this.


#2

Hi Sabrina,

I’ve been encountering the same issue since the b12 build. I just tried pushing the demo stroop experiment and it crashed. The dialog box that pops up stays on “Pushing files to Pavlovia”. I switched over to the Output in the PsychoPy coder and the error reads:

Traceback (most recent call last):[/code]
  File "C:\Program Files (x86)\Psychopy3\lib\site-packages\psychopy\app\pavlovia_ui\project.py", line 161, in submitChanges
    self.parent.project = self.project
AttributeError: 'NoneType' object has no attribute 'project'

To get around this, I have been submitting my projects to gitlab via the command line (e.g. cmd.exe on Windows). If you go to your Gitlab account and create a new project, it will display the commands that you can use to submit new files or changes to the project. The gist is that first you make sure you have your account parameters set up for git:

git config --global user.name "User Name"
git config --global user.email "your_email@your_provider.com"

And then you should create your project folder locally, generate the HTML/JS with Psychopy, and then run these commands using the Windows command line:

cd existing_folder_on_your_computer
git init
git remote add origin https://gitlab.pavlovia.org/your_account_name/your_project_name.git
git add .
git commit -m "Initial commit"
git push -u origin master

There are also instructions there for adding to an existing project. If you have trouble you can look up the git commands and their parameters – I’m still getting used to them.


#3

Hi Kevin,

thanks a lot for your help! I’ve taken your advice and I managed to push the files to pavlovia. But, when I wanted to start the online experiment, it says “404 Not Found” on the website. So do you probably have an idea what the problem is here? Would be really grateful if you could help me again.

Sabrina


#4

It’s hard to know what went wrong just from that error. To diagnose your specific issue, it might help to look in the developer console of your browser after the page is loaded. In Chrome and Firefox, press F12 to bring up the developer console – in Firefox you’ll need to click on the “Console” tab to see the output. From here you might be able to see what file Pavlovia attempted but failed to load.

In general, I found that I used to get these sorts of errors due to project name/folder name issues. To try to make sure I don’t have any issue with this, I make sure the folder name on my computer is the same as the project name on gitlab and pavlovia, and the JS files generated should also have the same name. For example, if I decided my project should be named “stroop_test”, I would have:

  • A folder named stroop_test on my computer
  • stroop_test/stroop_test.psyexp, with the project name stroop_test (do this within Psychopy)

You can then generate the HTML from within Psychopy, which should give you:

  • stroop_test/html/stroop_test.js
  • stroop_test/html/stroop_testNoModule.js
  • stroop_test/html/index.html
  • stroop_test/html/resources/ (If your experiment has other resources to load)

I also make sure that the project name is not the same as a project that had previously been on my Pavlovia account. Perhaps a developer could chime in to indicate which of these is important and which is not. To ensure all that happens, the simplest thing is to save your .psyexp in a folder with the same name, and ensure the project name in the .psyexp file is the same as the file. Then, when you generate the HTML, your JS files should be properly named and your HTML file should load correctly.