expfactory / expfactory-battery

version 1.0 expfactory battery template used with psiturk, django, and expfactory.github.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

expfactory fails after installing psiturk

oricon opened this issue · comments

I installed and set-up psiturk (using pip install psiturk, pip installed with conda) and now expfactory won't open. Even after I pip uninstall psiturk I get the below error when calling expfactory. Further, even if I uninstall and reinstall expfactory, the error remains. The only solution I've found is to complete remove and reinstall anaconda python. Is this a anaconda issue or an expfactory/psiturk issue.

psyc308-01:~ congalab$ expfactory
Traceback (most recent call last):
File "/opt/anaconda/anaconda2/bin/expfactory", line 11, in
load_entry_point('expfactory==2.5.46', 'console_scripts', 'expfactory')()
File "/opt/anaconda/anaconda2/lib/python2.7/site-packages/expfactory/scripts.py", line 141, in main
from expfactory.interface import start
File "/opt/anaconda/anaconda2/lib/python2.7/site-packages/expfactory/interface.py", line 44, in
app = EFServer(name)
File "/opt/anaconda/anaconda2/lib/python2.7/site-packages/expfactory/interface.py", line 23, in init
custom_battery_download(tmpdir=self.tmpdir)
File "/opt/anaconda/anaconda2/lib/python2.7/site-packages/expfactory/vm.py", line 37, in custom_battery_download
download_repo(repo,"%s/%s/" %(tmpdir,repo))
File "/opt/anaconda/anaconda2/lib/python2.7/site-packages/expfactory/vm.py", line 23, in download_repo
return Repo.clone_from("https://github.com/expfactory/expfactory-%s" %(repo_type), destination)
AttributeError: type object 'Repo' has no attribute 'clone_from'

hey @oricon ! This looks like a version error with the github module in Python, which likely was updated / changed when you updated psiturk. Could you verify the version? The one that I have that should work is 2.1.1. Here is how you check:

 ipython
 from git import Repo
 Repo. [TAB][TAB] to see if there is a function clone_from

To check your version:

  import git
  git.__version__

To fix the version:

 pip install gitpython==2.1.1

And it's my fault for not specifying the version in requirements.txt, and also my fault for having you need to think about dependencies, period! u I wasn't super experienced with containers when I designed the client, and a much better approach would have all dependencies tightly packaged to avoid these issues.

no problem! I'm going to close the issue, please ping if you have any more trouble.