Tuvimos un problema similar y también nos molestó durante bastante tiempo. Hoy, encontramos la causa raíz.
El mensaje de error es un poco engañoso, no es el "argumento" de la línea de comando demasiado largo, en realidad es el entorno del sistema operativo pasado junto con el comando. En este caso, Python os.environ. En nuestra base de código, hay un código de línea:
os.environ['PATH'] = ':'.join([os.environ['PATH'], self.clitoolsdir])
Es parte del __init__()
de una clase . Cada vez que se creaba un nuevo objeto, os.environ
se hizo más largo, eventualmente se convirtió en "demasiado largo".