[Pythonmac-SIG] PyObjC and macOS 10.12 (Sierra)

Andrew Jaffe a.h.jaffe at gmail.com
Sun Sep 11 06:12:18 EDT 2016


Dear Ronald,

Thanks, as usual, for all this.

I have upgraded to the GM version of 10.12 on the beta track. I use the 
python.org framework builds of python.

When I do "pip list --outdated", I get a long list:

  altgraph (0.10.2) - Latest: 0.12 [sdist]
  macholib (1.5.1) - Latest: 1.7 [sdist]
  modulegraph (0.10.4) - Latest: 0.12.1 [sdist]
  py2app (0.7.3) - Latest: 0.10 [sdist]
  pyobjc-core (2.5.1) - Latest: 3.1.1 [sdist]
  pyobjc-framework-Accounts (2.5.1) - Latest: 3.1.1 [sdist]
    <a bunch more pyobjc-framework-* (2.5.1) - Latest: 3.1.1 [sdist]>
  pyOpenSSL (0.13.1) - Latest: 16.1.0 [wheel]
  xattr (0.6.4) - Latest: 0.8.0 [sdist]

If I do the usual "pip --upgrade" for these, it fails, seemingly because 
of permissions (Apologies, but I don't have access to the messages 
anymore): it is clearly trying to delete these versions which seem to 
live in /System/Library/Frameworks/Python.framework/Versions/2.7/. This 
fails, of course, due to permissions (and system integrity protection).

You can, in fact, do the upgrade with the "--ignore-installed" flag in 
pip (although there's still a problem with pyobjc-framework-Message).

So: are these errors expected? Is it something in my particular setup? 
Or the beta program? Is "--ignore-installed" the correct solution?

Thanks,

Andrew

p.s. none of these issues arise with Python3/pip3, of course.

On 22/07/2016 14:46, Ronald Oussoren wrote:
> Hi,
>
> I’m slowly working my way through the SDK headers for macOS 10.12 during idle time at EuroPython2016, from the frameworks with small diffs to those with larger diffs.
>
> There are at the moment about 26 frameworks I haven’t looked at at all, and another 10 where I know I have to do some more work. The rest should have up to date metadata on my machine, but haven’t been tested on macOS 10.12 yet (and that won’t change until I get around to actually installing a VM running 10.12).
>
> All of this was done using the headers in the Xcode 8 beta 2, I haven’t looked at the incremental changes to the SDK in beta 3 yet (and likely won’t until I have made a pass through all frameworks).  That said, the diffs from beta 2 to later beta’s and the final release should be fairly small (he wrote hopefully).
>
> What needs to be done to get proper support for 10.12:
>
> * Finish updating the metadata.  I suspect that this is a couple of days work, I have worked may way through the diffs of a fairly large number of frameworks, but haven’t looked at the more complicated ones yet (such as Foundation and AppKit). Also, a fairly large subset of the frameworks I have looked at didn’t have any significant updates compared to 10.11 (but some of them still had large textual diffs due to restructuring of header files).
>
> * Install a 10.12 VM and run tests there. This will likely result in more work, there’s already a pull request about NSSecureCoder warnings on 10.12 that needs looking into and there’s bound to be more issues.
>
> * Do the build and test dance on older OSX releases.
>    The annoying bit for that: there’s a know issue with building on OSX 10.7, see issue #100. I haven’t been able to look into that yet
>    because I don’t have an VM with 10.7 on my laptop and haven’t been able to install 10.7 there yet. I probably have such a VM on
>    an external disk somewhere, but I’m not sure about that.
>
> When all that is done I can do a release that includes 10.12 support, with some luck around the time of the 10.12 release itself. I’ll definitely push the metadata updates to bitbucket once I’ve finished looking through the 10.12 SDK diffs.
>
> In the longer run I want to provide wheels for PyObjC, but that requires more work. In particular, I only want to do that after automating more of the release work because I’ve noticed that I’m already postponing doing new releases due to the amount of work and don’t want to make things worse in that regard.
>
> BTW. I’ll likely won’t work on metadata updates during the EP2016 sprints, my current plan is to keep the tradition of working on PEP 447 alive and try to actually get it accepted this year.
>
> Ronald
>
> PS. “A couple of days work” probably means that it will take me several calendar weeks to actually finish the work because I have limited time to work on this and don’t want to spent all that time on this rather tedious work.
>
> [#100]: https://bitbucket.org/ronaldoussoren/pyobjc/issues/100/cannot-find-interface-declaration-for
> ------------------------------------------------------------------------------
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports.http://sdm.link/zohodev2dev
> _______________________________________________
> Pyobjc-dev mailing list
> Pyobjc-dev at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pyobjc-dev
>




More information about the Pythonmac-SIG mailing list