AeonLucid / POGOProtos

A central repository for all proto files of PokémonGO.
MIT License
726 stars 279 forks source link

compile_pretty causing an OS error of filename being too long #175

Closed gadzair closed 8 years ago

gadzair commented 8 years ago

POGOProtos foo$ python compile_pretty.py csharp Traceback (most recent call last): File "compile_pretty.py", line 449, in call(command, shell=False) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 522, in call return Popen(_popenargs, *_kwargs).wait() File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 710, in init errread, errwrite) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1335, in _execute_child raise child_exception OSError: [Errno 63] File name too long

AeonLucid commented 8 years ago

@ehoepfner

ghost commented 8 years ago

@gadzair It is fixed now. If it is still giving you an error, then your protoc is probably too old and cannot compile version 3 .proto files.

gadzair commented 8 years ago

@ehoepfner

Nope it still doesn't work. I am able to compile .proto files and the following works just fine: python compile_single.py -l csharp

python compile_pretty.py csharp still fails with the same error using your PR here: https://github.com/AeonLucid/POGOProtos/pull/176

nabeelamjad commented 8 years ago

If you change https://github.com/ehoepfner/POGOProtos/blob/d4ba07a658f6b45a37c0e335256d26b39e321c3a/compile_pretty.py#L450 to call(command, shell=True) it appears to work fine.

ghost commented 8 years ago

I suspect that the compile command is somehow to long with all the files as arguments.

@nabeelamjad Yes, you are right. But with shell=True it fails on Windows with "The command line is too long.". That's why I changed it to False originally.

So I put in a check if the OS is Windows or not and then set the shell argument appropriately.

Stepan222 commented 8 years ago

Long too path error? “Long path tool” is very helpful for this problem. You can solve this problem like copy, delete, long path files by using this tool. I used to have similar problems too, but after using “long path tool” everything was solved."