If there are still people relying on the Carbon implementation, because they need to, we should not remove support for it. Especially because 1.2 would be the first official release to support Cocoa. However if it is mostly because the Cocoa implementation does not work properly for everybody, we need to focus on fixing that.
Currently I think it does not hurt to keep the Carbon support around. Maybe we can add a deprecation warning to it? Then people who cannot make the transition to Cocoa hopefully raise issues we can fix. Rob Op maandag 26 januari 2015 18:00:11 UTC+1 schreef Phillip Nguyen: > > > Trying to figure out why people are having problems with the Mac OS X > version of pyglet is a mess. This is partly because there have been no > official releases in such a long time. There are at least *three* > different versions of pyglet that run on the Mac: > > 1. The last officially released version is based on the deprecated Carbon > libraries. There are no 64-bit Carbon libraries. > 2. For a short period of time, there was a Cocoa version based on PyObjC. > 3. The most recent version, and what is currently in the repository (for > the last 2 or 3 years) does not depend on PyObjC. > > Making things even more confusing is that #2 and #3 both still include the > Carbon implementation (and it is technically the default), so there’s often > still ambiguity as to which is being used. > > The errors you’re getting below suggest that you’re using #2 based on > PyObjC. The ImportError: No module named Foundation is talking about a > PyObjC module. Likewise, the exception that you got explicitly tells you > that you need to install PyObjC. This is because you’re using ActivePython > which, unlike the system default python, does not have PyObjC already > installed. This kind of problem is one of the major reasons that the Cocoa > version no longer depends on PyObjC. > > You should try the version in the repository, although there is still no > guarantee that it will run without problems. > > —phillip > > On Jan 26, 2015, at 10:32 AM, Bruce Smith <[email protected] <javascript:>> > wrote: > > > I am still using Carbon, since when I last tried not to, various > obstacles prevented it in each way I tried. (Details below if you're > interested.) This doesn't mean you can't kill it in 1.3, but it means I > would just stick to 1.2 from then on, at least until those obstacles go > away. There might be other users in that situation too, I don't know. (They > might not know either, since although deprecated, it doesn't actually print > any warning that a deprecated feature is being used.) > > > > So if it's easy to keep the Carbon support code there, but stop testing > it (and document that fact), that might be more useful to more people. (And > then bug reports would tell you whether it's still actually being used.) > And if you want, you could make it print a deprecation warning (perhaps > with an option to turn that warning off, though I think that's not high > priority since people who need it can edit the code). > > > > This is not a big deal to me whatever you do, as long as this support > still works in released 1.2, as you plan. > > > > BTW, here are the details of why I use Carbon: > > > > I often run pyglet code in 32-bit mode (using arch -i386 python, with > ActivePython 2.7.2.5 in Mac OS X 10.7.5), since I use some other python > libraries that require it (or at least did require it the last time I > updated them; I forget which libraries those are). This is using Carbon; if > I force it to use Cocoa by pyglet.options['darwin_cocoa'] = True, it fails > with ImportError: No module named Foundation". If I use 64-bit python it > fails with "Exception: pyglet requires PyObjC when run in 64-bit Python; > import objc failed", which means I didn't install an Objective C bridge > module. (I recall I tried to install it and failed, or it failed to work > properly, but I don't recall the details of that.) > > > > - Bruce Smith > > > > > > On Mon, Jan 26, 2015 at 3:58 AM, Tristam MacDonald <[email protected] > <javascript:>> wrote: > > We can kill Carbon support. It has never been supported on 64-bit, and > it's deprecated regardless. > > > > On Mon, Jan 26, 2015 at 03:11, Rob <[email protected] <javascript:>> > wrote: > > Hi all, > > > > I am not a Mac user, so I do not know much about the platform > requirements. Pyglet 1.2 includes cocoa support for OSX, do we still need > to keep the old carbon support? Or can we remove it in 1.3? > > > > Rob > > > > -- > > You received this message because you are subscribed to the Google > Groups "pyglet-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at http://groups.google.com/group/pyglet-users. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > > You received this message because you are subscribed to the Google > Groups "pyglet-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at http://groups.google.com/group/pyglet-users. > > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > You received this message because you are subscribed to the Google > Groups "pyglet-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at http://groups.google.com/group/pyglet-users. > > For more options, visit https://groups.google.com/d/optout. > > -- You received this message because you are subscribed to the Google Groups "pyglet-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/pyglet-users. For more options, visit https://groups.google.com/d/optout.
