I'd like to get the 1.2 release of pyglet out, hopefully coinciding
with a new release of avbin and definitely a companion release to the
latest cocos2d.
To help this, I'd appreciate it if people could volunteer to run the
test suite in the hg default branch on a platform:
- Windows 32-bit*
- Linux 32-bit (and 64-bit?**)
- OS X 32-bit and 64-bit under Lion (I can do so under Snow Leopard)
This will hopefully help us identify problem areas.
* if anyone is willing to put in the effort to introduce 64-bit
Windows support that'd be awesome!
** I honestly can't recall whether 64-bit is supported on Linux
Richard
The 32- or 64-bit'ness refers solely to the Python binary used. So on
Windows you're fine.
On OS X 32-bit mode may be forced (assuming you have a default fat build) using:
export VERSIONER_PYTHON_PREFER_32_BIT=yes
export ARCHFLAGS='-arch i386'
... though in some of my virtualenvs I've gone so far as to "lipo
-thin i386 ..." to force Python to be 32-bit just for that virtualenv.
Not sure how such things are achieved on Linux.
Richard
Test log: http://pastebin.com/iseSwY5W
graphics.RETAINED_INDEXED backtrace at http://pastebin.com/3U011N06,
if that helps.
Petr
> --
> You received this message because you are subscribed to the Google Groups
> "pyglet-users" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/pyglet-users/-/oT7B3MQN6mkJ.
> To post to this group, send email to pyglet...@googlegroups.com.
> To unsubscribe from this group, send email to
> pyglet-users...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/pyglet-users?hl=en.
>
Thanks! Sadly "crappy Intel integrated graphics" have been known to
cause us unmeasurable compatibility pain in the past ;-)
Is your Python binary 32- or 64-bit? If 64 then would it be possible
to try a 32-bit build?
> Sound didn't work at all.
What sound system(s) are running? Could you possibly try some variants
by setting the PYGLET_AUDIO environment variable? See "pydoc pyglet"
for how the options work. I believe on Linux we can use pulse and
openal.
> The Compose key doesn't work in the text tests.
> Test log: http://pastebin.com/iseSwY5W
There's quite a few failures in there that look like they wouldn't
take very long for someone on a Linux system to fix. Then there's the
other ones, some of which are probably related to your graphics
hardware.
Richard
It's 64-bit. For 32-bit.. I'm not sure I believe I'd have to compile
Python, and all libraries it uses, from source. Or just use a 32-bit
system – that would probably be easier.
So it's possible, but is it really what you'll want Pyglet's Linux users to do?
>> Sound didn't work at all.
>
> What sound system(s) are running? Could you possibly try some variants
> by setting the PYGLET_AUDIO environment variable? See "pydoc pyglet"
> for how the options work. I believe on Linux we can use pulse and
> openal.
I'll try when I have time again :)
>> The Compose key doesn't work in the text tests.
>
>
>> Test log: http://pastebin.com/iseSwY5W
>
> There's quite a few failures in there that look like they wouldn't
> take very long for someone on a Linux system to fix. Then there's the
> other ones, some of which are probably related to your graphics
> hardware.
I'll try that when I have yet more time...
> Richard
>
> --
> You received this message because you are subscribed to the Google Groups "pyglet-users" group.
I'm running 64-bit linux mint 11 and pyglet seems to run without any
problems although I haven't run the test suite yet, I'll do that later
today. Pulse works mostly fine although seems to be the buggiest driver,
I have a fix awaiting review on googlecode if anyone would mind patching
and checking it doesn't break anything on there systems. OpenAL seems to
work well too and probably runs through pulseaudio if you have that too.
Adam.
Phillip's branch was merged back in March.
Richard
Which patch in particular is that?
Richard
Oh, I think I found it:
Issue 536: Pitch change functionality with pulseaudio driver.
It seems reasonable so I've applied it.
There's a couple of other Linux-related patches in the tracker - would
you mind having a look at them please?
Richard
I'll run it for OS X Lion tonight (about 8 hours from now).
Does this mean you merged the ctypes changes into the default branch?
~ Nathan
On Thu, Oct 27, 2011 at 12:45 PM, Nathan <nathan...@gmail.com> wrote:I'll run it for OS X Lion tonight (about 8 hours from now).
Does this mean you merged the ctypes changes into the default branch?
~ NathanAre you planning to do 32-bit (Carbon) or 64-bit (Cocoa)?
I have a bugfix for 32-bit which is required if you run it without any version of PyObjC present at all. (Apple's Python has PyObjC preinstalled, but ActivePython doesn't, at least in Lion and Python 2.7.)I'll commit this later tonight or tomorrow (followed by some other bugfixes I've been procrastinating on committing), but in case you happen to run into that problem sooner, the diff for the fix is:% hg diffdiff -r ea330ef69fbc pyglet/__init__.py--- a/pyglet/__init__.py Thu Oct 27 15:26:09 2011 +1100+++ b/pyglet/__init__.py Thu Oct 27 19:52:24 2011 -0700@@ -193,10 +193,15 @@is_64bits = sys.maxint > 2**32import platformosx_version = platform.mac_ver()[0]- from objc import __version__ as pyobjc_versionif is_64bits:if osx_version < '10.6':raise Exception('pyglet is not compatible with 64-bit Python for versions of Mac OS X prior to 10.6.')+ try:+ # note: we don't import objc until now, since it's not needed+ # (and not always present) under 32-bit Python.+ from objc import __version__ as pyobjc_version+ except ImportError:+ raise Exception('pyglet requires PyObjC when run in 64-bit Python; import objc failed')if pyobjc_version < '2.2':raise Exception('pyglet is not compatible with 64-bit Python for versions of PyObjC prior to 2.2')options['darwin_cocoa'] = True(If you want to commit this fix yourself, go ahead if that's more convenient.)
As for 64-bit Python, I found no way to run pyglet in it myself, under Lion. The details are complicated. My issue may have been specific to ActivePython and/or Python 2.7, and was certainly specific to Lion. The issue (IIRC) was that I needed PyObjcC 2.3 but that version of ActivePython (2.7.2.5) only has it up to 2.2 for Lion. (As of a month or two ago.)
Thanks, I actually had a local patch for this sitting un-committed.
I've just pushed it :-)
Richard
On Thu, Oct 27, 2011 at 9:05 PM, Bruce Smith <ore...@gmail.com> wrote:On Thu, Oct 27, 2011 at 12:45 PM, Nathan <nathan...@gmail.com> wrote:I'll run it for OS X Lion tonight (about 8 hours from now).
Does this mean you merged the ctypes changes into the default branch?
~ NathanAre you planning to do 32-bit (Carbon) or 64-bit (Cocoa)?
64-bit
As for 64-bit Python, I found no way to run pyglet in it myself, under Lion. The details are complicated. My issue may have been specific to ActivePython and/or Python 2.7, and was certainly specific to Lion. The issue (IIRC) was that I needed PyObjcC 2.3 but that version of ActivePython (2.7.2.5) only has it up to 2.2 for Lion. (As of a month or two ago.)
That's odd. I'm just using the system python under Lion, and it works. Albeit not perfectly.
~ Nathan
Hmm, that's a question for Philip - he merged the branch:
http://code.google.com/p/pyglet/source/detail?r=caf8b30706b757a4e70809f404408b51ba5b3513
> Second, during ANY resize event, garbage would be displayed. In the case of
> resize-by-mouse garbage would continue to be displayed until the mouse
> button was released. Results when resizing was inconsistent. Sometimes the
> scene seemed sane after a resize, often it didn't. Lots of garbage and
> garbled artifacts.
I also saw this. I suspect that the older-style test code is to blame.
For example, WINDOW_RESIZABLE has:
self.w = w = window.Window(self.width, self.height, resizable=True)
glClearColor(1, 1, 1, 1)
while not w.has_exit:
w.dispatch_events()
window_util.draw_client_border(w)
w.flip()
w.close()
It looks like the OS X code (cocoa and carbon) is blocking in
w.dispatch_events() while the mouse is held down on the resize handle.
When the mouse is released the window contents are redrawn as
expected.
I'm not sure whether this is reasonable or even controllable. I'd
appreciate it if someone could indicate the behaviour of
WINDOW_RESIZABLE on other platforms.
To account for the blocking and allow redraw while events are being
handled, I modified the code to:
self.w = w = window.Window(self.width, self.height, resizable=True)
def on_draw():
glClearColor(1, 1, 1, 1)
window_util.draw_client_border(w)
w.flip()
w.push_handlers(on_draw)
on_draw()
while not w.has_exit:
w.dispatch_events()
w.close()
all flickering / corruption goes away. I'm just not sure this is appropriate.
Thanks for the log! I'm not sure how much of the objc-based code I'm
going to be able to address, but we'll see :-)
Richard
.... NOTE that this problem did NOT occur in the checkouts of Philip's version -- so if his changes were merged, this would seem to be a regression. .....
Hi all,
I'd like to get the 1.2 release of pyglet out, hopefully coinciding
with a new release of avbin and definitely a companion release to the
latest cocos2d.
To help this, I'd appreciate it if people could volunteer to run the
test suite in the hg default branch on a platform:
- Windows 32-bit*
- Linux 32-bit (and 64-bit?**)
- OS X 32-bit and 64-bit under Lion (I can do so under Snow Leopard)
This will hopefully help us identify problem areas.
Is there any chance the ctypes-only clone will be integrated before a
pyglet 1.2 release, or for that matter "any time soon"? FWIW, I tried
the clone, and it was acting a bit "weird" for me.
No, they're not usual unit tests. You need to "pypy tests/test.py"
Richard
In fact on OS X we require a pure ctypes pyglet because there's C
modules missing from pypy's repertoire. Unfortunately even with an
amazing effort the pure ctypes pyglet (a branch developed externally
to the core repository) is incomplete.
Richard
Thanks for the reminder. I've added a short mention to the README.
I've left the supported platforms/versions alone until we've got a
better understanding of what they are :-)
Richard