-
Notifications
You must be signed in to change notification settings - Fork 33
Description
someone copy-pasted concore.py, changed ./in to /in and called it concoredocker.py. that's it. same class, same read/write/initval, same everything, 300 lines of it (checked git blame, not me, thankfully)
the problem is it's already broken in ways concore.py isn't. the params path is built with string concat (inpath + "1") but read/write use os.path.join(inpath, str(num), name). those resolve to different directories (/in1/ vs /in/1/). params silently load from the wrong place.
also terminate_zmq in the docker version has no cleanup guard, doesn't clear zmq_ports, no atexit registration. sockets just leak on container stop. concore.py has all of that, docker version doesn't because nobody synced it.
fix would be, pull shared logic into a base module, both files import from it and only define what's actually different (paths, windows PID stuff, signal handlers). not glamorous but this won't fix itself and the divergence is already causing real bugs.