If you start any Python process on OS X 10.11 (10.11.0 or 10.11.1) El Capitan, and run the OS built-in tool 'codesign' to verify the process, you will receive an error saying "code object is not signed at all".

Here's an example:

Open Terminal.app. Type "python". This will start a normal Python REPL console. Open another terminal window. Run "ps | grep python" to find the process id of the Python REPL process. Let's say it's 555. Run command "codesign -v 555". codesign will report "555: code object is not signed at all"

However, if you run the following commands, it seems the python executable is properly signed:

$ which python /usr/bin/python $ codesign -dvv `which python` Executable=/usr/bin/python Identifier=com.apple.pythonw Format=Mach-O universal (i386 x86_64) CodeDirectory v=20100 size=226 flags=0x0(none) hashes=6+2 location=embedded Signature size=4105 Authority=Software Signing Authority=Apple Code Signing Certification Authority Authority=Apple Root CA Info.plist=not bound TeamIdentifier=not set Sealed Resources=none Internal requirements count=1 size=68

If you use codesign to verify any Perl or Ruby process, they are all fine. Also, in Yosemite, every Python process can be correctly verified by codesign.

What happened?