I’m getting below error message from my experiment when I try to update it. Before 2 weeks ago, I could update with no problem but now I get below error.
Could you please help me?
Traceback (most recent call last):
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\app\builder\builder.py", line 1221, in onPavloviaSync
self.fileExport(htmlPath=htmlPath)
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\app\builder\builder.py", line 719, in fileExport
target="PsychoJS")
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\scripts\psyexpCompile.py", line 73, in generateScript
compileScript(infile=exp, version=None, outfile=filename)
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\scripts\psyexpCompile.py", line 242, in compileScript
_makeTarget(thisExp, outfile, targetOutput)
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\scripts\psyexpCompile.py", line 214, in _makeTarget
script = thisExp.writeScript(outfile, target=targetOutput, modular=True)
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\experiment\_experiment.py", line 213, in writeScript
self_copy.flow.writeFlowSchedulerJS(script)
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\experiment\flow.py", line 290, in writeFlowSchedulerJS
resourceFiles = set([resource['rel'].replace("\\", "/") for resource in self.exp.getResourceFiles()])
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\experiment\_experiment.py", line 841, in getResourceFiles
thisFile = getPaths(thisParam.val)
File "C:\Program Files\PsychoPy3\lib\site-packages\psychopy\experiment\_experiment.py", line 767, in getPaths
if os.path.isfile(thisFile['abs']):
File "C:\Program Files\PsychoPy3\lib\genericpath.py", line 30, in isfile
st = os.stat(path)
ValueError: stat: path too long for Windows
As “name clash”, do you mean a filename or variable name problem?
Because according to these references I’ve understand such kind of problem. If so, I’ve never changed the name of any file. On the other hand I have to check all new codes for a variable name problem.
After your first reply, I’ve checked whole new codes. The problem is strange, at least for me (who has not many experience at coding). There was a long if - elif loop (1 if plus 44 elif). I’ve divided code to 9 different codes (each one is 1 if plus 4 elif) and the error message has gone. Does it make sense or also it is strange for you?
That many elifs sounds strange, though I guess I get close to that with free recall keyboard code. Since that translates to JS as nested brackets then it may be that there’s a maximum bracket depth.
To Update here, also just encountered this whilst working on someone’s project - in this case the code component had >100 lists each containing >175 elements.
To anyone following this thread - If you encounter this error and have hard coded a large number of variables in this way - see if you can instead set the variables in a .csv file - put that as the conditions file in a loop and load them in that way (such as here)