Binary files missing from crucible.py patch file for Perforce
When executing the crucible.py script to create a pre-commit patch file for review, specific file(s) are not included in the resulting patch file.
To diagnose this issue, you will need to enable debug mode for crucible.py:
In your debug output, you will see the following:
stderr= DEBUG:root:Omitting binary file
For Perforce, binaries are just one type of files that are excluded when generating patches using the crucible.py script. These file types currently are:
The omission of these files via the crucible.py script is by design.
According to the Perforce User's Guide:
Perforce first determines whether the file is a regular file or a symbolic link, and then examines the first part of the file to determine whether it's
binary. If any nontext characters are found, the file is assumed to be
binary; otherwise, the file is assumed to be
If you believe that your file was marked as binary mistakenly, you are able to change the file type by specifying the following option in Perforce: