Python module pysvn: Works under 10.6, crash under 10.8



  • I’m sorry that I seem to find such crazy bugs ;)

    I’m trying to use the Python module "pysvn" (http://pysvn.tigris.org) for SVN access. I have downloaded this installer image:

    http://pysvn.tigris.org/files/documents/1233/49178/py27_apple_com_pysvn_svn1617-1.7.6-1457-intel.dmg

    On Mac OS 10.6, I had to do some fiddling for RoboFont to find the module (I made a softlink to RoboFont.app/Contents/Frameworks/Python.framework/Versions/2.7 in System/Library/Frameworks/Python.framework/Versions/2.7 and made a site-packages folder for 2.7 in the usual location, where I put the pysvn folder. A bit complicated, but it works after that.

    On Mac OS 10.8, I just installed pysvn into /Library/Python/2.7/site-packages, and it works fine from the command line, but it immediately crashes RoboFont when I just do import pysvn in the scripting window.

    I also tried to compile pysvn from source, but that doesn’t change anything – works in Terminal, crashes RoboFont.

    Any ideas?



  • Hi Frederik,

    maybe I wasn’t clear, I didn’t change the content of RoboFont.app in 10.6 or 10.8, but I just made a link to the robofont-internal python 2.7 on 10.6:

    ln -s RoboFont.app/Contents/Frameworks/Python.framework/Versions/2.7 /System/Library/Frameworks/Python.framework/Versions/
    

    Maybe that wasn't even necessary.

    There is no output in the scripting window when the crash occurs. In the console, there's this message:

    01.03.13 10:24:29,828 com.apple.launchd.peruser.502[161]: ([0x0-0x6d76d7].com.typemytype.robofont[26306]) Job appears to have crashed: Segmentation fault: 11
    

    And I've attached the crash log.


  • admin

    RoboFont adds the current python site-packages to the embedded python path. This allows users to use their own modules and tools inside RoboFont. This only works if the packages is compiled with the same python version as the embedded python (2.7).

    You can check if RoboFont finds the correct path:

    from lib.scripting.scriptTools import localSitePackagesPath
    print localSitePackagesPath
    

    Is there a traceback you can catch? somewhere in the scripting window or in the console.app?
    can you send the crash report?

    I would not recommend you to change the content of the RoboFont.app packages cause it will break code signing, which is been checked on 10.8.


Log in to reply