-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
420 lines (398 loc) · 21.5 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
1.2beta1
+ new API: font.have_font(name) return True if named font is installed
* tests: invalid answer no longer marks test as passed, some windows can
be closed with ENTER key, test counter fixed and added to reports
* tests: partial Python 3 compatibility
* tools/gl_info.py: add pyglet version and platform info
* pyglet.media: fixed management of OpenAL buffers (thanks Walter Woods)
* Windows: fix loading system cursors
* Windows: implemented Win32Font.have_font() (anatoly techtonik)
* OS X: fix window creation under Mountain Lion (thanks Kuba Niegowski)
* OS X: Added dynamic library loading support for pyinstaller's handling of
dynamic libraries on OS X (thanks Nathan Stocks)
1.2alpha1
The major 1.2 release brings pyglet to Python 3. Pyglet now also runs on
64-bit operating systems Linux, Windows and OS X. The OS X layer has
switched to Cocoa.
Backwards-incompatible API changes:
* renamed Label parameter 'halign' to 'align', fix for issue:460
* remove unused module 'glext_missing' - everything should already be in
'glext_arb'
Other changes and fixes:
* updated OpenGL wrappers (except for agl* and wgl*)
* added set_mouse_position to window, fix for issue:467
* configurable texture filtering for issue:463
* correction to use textures min/mag filter for get_texture
* fix runaway event loops caused by least squares estimator
* compute correct expiration time for the event loop
* fix ordering of Groups and OrderedGroups
* fix loading of small images using GdkPixbuf2ImageDecoder for issue:493
* applied Andrew Straw's pyglet-xvfb.patch patch from issue:456
* fix for issue:517 tests/window/CONTEXT_SHARE.py glIsList exceptions
* numeric keypad constants in docs don't match key.py, fix for issue:523
* use new method for quering extensions if OpenGL version is >= 3
* add missing freetype ctypes declarations, patch from issue:529
* add flag to check if event-loop is running
* add variation on how to import PIL, fix issue:551
* handle race condition in texture cleanup, fix for issue:565
* fix examples/window_platform_event.py when no "names", issue:561
* fix for GIFs with alpha, Frankie.Robertson, issue:411
* added exception for ATI radeon xpress 200M not exporting glGenBuffers
* allow pyglet.resource.image to specify that the image be stand-alone and
not loaded into an atlas
* make test runner output easier to read and verify for the tester
* make failing to load libraries that exist but have fatal problems not
be _silently_ ignored on Linux and OS X, fix issue:579
* fix multiline/wrap_line confusing (Martin Di Paola), per issue:394
* apply patch fixing image.DDS_RGB_DXT1_LOAD (and similar) throwing
ImageException from petete.zur88, issue:580
* fix experimental/animation.py frame.delay reference (anatoly techtonik)
* docs: added chapter to programming guide for input module
* docs: fix example in animation docs
* docs: clarify graphics.draw() from Tim McNamara in issue:478
* docs: mention atlas in the programming guide
* docs: apply Txema Vicente's patch to generate docs with Sphinx
* Linux: fix different platform strings, issue:571
* Linux: fix 100% cpu load with scheduled events when using xlib
* Linux: pitch change functionality with pulseaudio driver; patch from Adam
Bark, issue:536
* Linux: fix tiling window manager resizable window initialisation,
issue:563
* OS X: add function key
* OS X: replaced pyglet/image/codecs/quartz.py with ctypes-only code
* OS X: added complete type declarations to darwin_hid so pypy will stop
complaining
* Windows: apply patch for x64 issues, fix issue:510
* Windows: (possible) fixes for context sharing problems
* Windows: don't create another context in Win32Context.attach() if the
sub-class (Win32ARBContext) already created one
1.1.1
* examples: Fixed graphics.py triangle windings
* pyglet.clock: Fixed resource leak in Clock.unschedule
* pyglet.clock: Fixed schedule_* functions initial schedule time
* pyglet.gl: Fixed create_context exception
* pyglet.graphics: Fixed memory error with interleaved arrays
* pyglet.media: Fixed driver enumeration during driver init failure
* pyglet.media: Fixed parsing of OpenAL extensions list
* pyglet.text: Fixed TextLayout.delete not deleting inline boxes
* pyglet.text: Fixed caret blinking when period is 0
* pyglet.text: Fixed caret motion at end of line
* pyglet.text: Replaced scissor with clipping planes in
ScrollableTextLayout, fixing rendering under transform.
* pyglet.text: Fixed reflow of text above overlong lines
* pyglet.window: Fixed initial fullscreen screen selection
1.1
* docs: Various minor documentation fixes
* docs: Fixed docstrings referring to pyglet.image.BufferManager as being
singleton
* pyglet: Fixed lazy loading bug failing to update module cache
* pyglet.clock: Fixed unschedule not taking effect until after current
tick is complete
* pyglet.font: Reintroduced Text.leading and Text.line_height properties
* pyglet.font: Fixed Text.halign
* pyglet.font: Fixed Text.color
* pyglet.graphics: Disabled VBO for Radeon X1600
* pyglet.graphics: Fixed resource leak of VBOs
* pyglet.graphics: Fixed GC of cyclic buffer and attribute objects
* pyglet.graphics: Improved performance for drivers that don't suffer
the VBO flush problem
* pyglet.image: Fixed ColorbufferImage.get_region
* pyglet.image: Fixed Animation.from_image_sequence with loop
* pyglet.image: Fixed BufferManager cache for resizing windows
* pyglet.image: Fixed Texture.set_mipmap_image
* pyglet.image: Fixed Animation.get_duration
* pyglet.sprite: Fixed unassignment of Sprite.group
* pyglet.text: Fixed ScrollableTextLayoutGroup.width
* pyglet.text: Fixed TextLayout usage after vertex list deletion
* OS X: Fixed loading of fonts with Unicode names
* OS X: Fixed handling of mice with more than three buttons
* Win32: Fixed redundant mouse motion events being generated
1.1beta2
* docs: Added sections on new text layout features
* examples: Added text_input.py example
* pyglet: Added debug_texture option
* pyglet: Fixed destructors calling non-existent methods during program
shutdown
* pyglet.clock: Fixed memory leak in all schedule functions
* pyglet.font: Fixed fonts being GC'd inefficiently in common case
* pyglet.font: Fixed Unicode font names with fontconfig
* pyglet.graphics: Fixed memory leak, improved GC performance
* pyglet.graphics: Fixed IndexedVertexDomain.draw
* pyglet.graphics: Fixed TextureGroup.__eq__
* pyglet.graphics: Fixed VBO data being drawn before upload complete on
non-nvidia drivers
* pyglet.image: Fixed glTexImage data being GC'd before finished
* pyglet.media: Fixed Player when next() called redundantly
* pyglet.media: Fixed Player.seek() when no sources queued
* pyglet.media: Reduced garbage noise after seeking in OpenAL
* pyglet.media: Fixed initial audio properties propogation when audio
player recreated
* pyglet.text: Fixed HTMLLabel.text property set
* pyglet.text: Added default position for AbstractDocument.get_style
* pyglet.text: Fixed IncrementalTextLayout vertical alignment after
modification
* pyglet.text: Fixed layout width for paragraphs with indent style
* pyglet.text: Renamed halign and valign properties to anchor_x and
anchor_y
* pyglet.text: Added TextLayout.content_valign property
* pyglet.text: Changed styles using points and pixels to consistent
"distance" units
* pyglet.text: Added halign to Layout constructor
* pyglet.sprite: Fixed animations with only one frame
* pyglet.window: Added Window.invalid flag
* Linux: Removed redundant declarations in xlib.py for faster loading
* Linux: Fixed Window.on_close event for GLX 1.2 and earlier
* Linux: Fixed international dead key processing
* Linux: Fixed window borders on Intel chips running Compiz
* Win32: Fixed event loop during window move and resize
* Win32: Fixed DirectSound crash when specifying very low volume
1.1beta1
* docs: Added "Debugging tools" section to programming guide
* docs: Clarified usage of ClockDisplay in module docstring
* examples: Fixed polygon winding in opengl.py
* pyglet: Added debug trace options
* pyglet: Renamed "debug_graphics_enable_vbo" option to "graphics_vbo"
* pyglet: Fixed import errors breaking the exception stack due to
class instance used as module
* pyglet.clock: Added ClockDisplay.unschedule
* pyglet.font: Fixed Text.width
* pyglet.image: get_transform() now operates around the anchor
* pyglet.image: Added fallback BMP loader
* pyglet.gl: Fixed GL/GLU strings being re-requested each frame
* pyglet.graphics: Fixed VertexList.migrate
* pyglet.graphics: Fixed memory leak with unused groups in a batch
* pyglet.graphics: Fixed IndexedVertexList.draw
* pyglet.media: Added have_avbin
* pyglet.media: MediaFormatException now subclasses MediaException
* pyglet.media: 24 bit audio files loaded with RIFF loader are now
rejected early
* pyglet.resource: Fixed resource.get_location
* pyglet.resource: Resource path locations are now indexed deeply
* pyglet.sprite: Added usage parameter
* pyglet.text: Fixed multiple width/multiline issues, changed text
class constructors to accomodate
* pyglet.text: Added DocumentLabel.get_style and set_style
* pyglet.text: Fixed layout states clobbering current color
* pyglet.text: Fixed error when document truncated past caret position
* pyglet.text: Move some style constants into HTML loader class for
easier overriding
* Linux: Fixed BMP loading for certain BMP files
* OS X: AVbin default location is now /usr/local/lib
* OS X: Libraries are now searched for in the application bundle before
standard system paths
* OS X: Now distributed with AVbin 3
* Win32: Fixed GDI+ error message
* Win32: Now distributed with AVbin 3
1.1alpha2
* New module: pyglet.info, for bug reports
* docs: Many docstrings added to public methods
* docs: Programming guide updated for pyglet 1.1
* docs: Fixed docstring errors in pyglet.resource
* examples: Most examples have been updated to demonstrate pyglet 1.1
* examples: Added animation.py and video.py
* pyglet: Fixed lazy importing for detection by py2exe, etc
* pyglet.app: Added exit() convenience function
* pyglet.clock: Fixed rescheduling bug on computers with lousy clocks
* pyglet.event: Fixed handlers deleted during dispatch
* pyglet.graphics: Fixed VBO disable option
* pyglet.image: Fixed animation loading on all platforms
* pyglet.image: Set a default delay of 100ms for GIF frames with a delay
of <= 10ms (mimicks Firefox and Safari behaviour)
* pyglet.media: Deprecated Player.texture for Player.get_texture
* pyglet.media: Fixed buffer underrun handling in ALSA and OpenAL
* pyglet.sprite: Fixed destruction of incomplete object
* pyglet.sprite: Added color property
* pyglet.text: Fixed layout of empty document
* pyglet.text: Fixed content width calculation causing glitches in
caret motion and scrolling
* pyglet.text: Added some public methods and properties to expose more
internal state
* pyglet.text: Added on_layout_change event
* pyglet.text: Fixed redundant incremental layout updates
* pyglet.text: Refactored HTML and structured text decoders
* pyglet.text: Fixed rendering of line breaks without word wrapping
* pyglet.resource: Caches now use weak references
* pyglet.window: Fixed Window.close() crashing when called more than once
* pyglet.window: Fixed motion event key mappings on Linux and Windows
* pyglet.window.key: Added MOD_ACCEL modifier
* Linux: Fixed font names for some TrueType fonts
* Linux: Fixed config attribute types
* OS X: Improved audio playback and event loop response
* OS X: Fixed mouse delta of first event after setting exclusive
* OS X: Fixed menu tracking and application quit event
* OS X: Fixed window size events during creation and setting fullscreen
* OS X: Fixed TGA support
* OS X: Fixed fullscreen for external monitors that don't report their
maximum refresh rate
* OS X: Fixed mouse cursor visibility after minimising window
* Win32: Improved event loop response
* Win32: Fixed garbage being played after end of sounds
* Win32: Context sharing now raises an exception instead of failing
silently
1.1alpha1
* New modules: app, graphics, image.atlas, resource, sprite, text
* pyglet: Most modules are now accessible after importing just "pyglet"
* pyglet.clock: Added get_sleep_time
* pyglet.clock: Added optional poll parameter to tick
* pyglet.clock: Added schedule_interval_soft
* pyglet.event: Added remove_handler and remove_handlers
* pyglet.event: Fixed @event decorator overriding methods instead of using
the event stack
* pyglet.font: Font name and size parameters are now optional
* pyglet.font: Fixed Text.z attribute being ignored
* pyglet.font: Tab characters are now treated as whitespace glyphs
* pyglet.font: DPI now defaults to 96 on all platforms
* pyglet.font: Font cache is now a weakref dictionary, so font textures
will be deleted when they are not being used
* pyglet.gl: OpenGL can now be used before a window is created
* pyglet.gl: Added current_context var, deprecated get_current_context
* pyglet.image: Added get_image_data, get_texture, get_mipmapped_texture,
get_texture_sequence, get_image_data, get_data
* pyglet.image: Deprecated properties corresponding to those new methods
* pyglet.image: Added anchor_x, anchor_y attributes
* pyglet.image: Added Animation and support for animated GIF
* pyglet.image: Added __iter__ for AbstractImageSequence
* pyglet.image: Added get_transform
* pyglet.image: Fixed GC problem causing some loaded textures to appear
empty on some machines
* pyglet.image: Added Texture.create
* pyglet.image: Added rectangle parameter to many methods as a convenient
way to create texture rectangles
* pyglet.media: Player now schedules its own updates on clock
* pyglet.media: Deprecated dispatch_events
* pyglet.media: Fixed silent audio driver get_time
* pyglet.media: Fixed OpenAL behaviour during buffer underruns
* pyglet.media: Added get_next_video_timestamp and get_next_video_frame
* pyglet.window: on_resize handlers now have a guarantee that their window
is the active OpenGL context
* pyglet.window: Deprecated WindowExitHandler
* pyglet.window: Added on_draw event
* Linux: Windows implement _NET_WM_SYNC_REQUEST protocol where supported
* Linux: X11 errors are now ignored instead of causing a crash
* Linux: Fixed errors in private Xlib ctypes wrapping
* Linux: Fixed text events being generated while CTRL or ALT pressed
* Linux: Added workaround for PCF fonts that do not publish metrics
* OS X: Improved glyph kerning
* OS X: Fixed QuickTime image codec not raising an exception when decode
error encountered
* OS X: Fixed rare QuickTime image load problem causing Bus Error
* Win32: Fixed DirectSound audio driver timestamps
* Win32: Fixed reduntant attempt to load mapi32.dll
1.0.2
* Egg for 2.5 is now compiled for Python 2.5, not 2.5b3.
1.0.1
* OS X: Fixed permissions on installed files.
1.0
* Added easy_install download URL
* docs: Clarification to ManagedSoundPlayer
* docs: Fixed typo of set_exclusive_mouse
* pyglet.gl: Fixed a missing import
* pyglet.event: Better error message when handler has wrong parameters
* pyglet.event: Fixed invokation of properties during introspection
* pyglet.font: Fixed non-integer font metrics on all platforms
* pyglet.font: Improved vertical centering
* pyglet.image: Fixed ColorBufferImage.texture property
* pyglet.media: Fixed queuing of multiple StaticSources
* pyglet.media: Fixed sequential playback of sources with different audio
formats
* pyglet.window: Added options['vsync'] override
* Linux: No longer requires ldconfig to locate libraries
* Linux: Fixed assumption about existance of certain WM atoms
* OS X: Fixed install path for system Python
* OS X: Fixed context switch after window is deleted
* Win32: Fixed text inter-glyph spacing
* Win32: Clarified that Windows Vista is not supported in this release
1.0beta3
* docs: Fixed the documentation of default parameter values
* examples: Added fixed_resolution example
* pyglet.event: Allow EVENT_HANDLED to be any true value
* pyglet.font: Ascent and descent are integer on all platforms now
* pyglet.media: Several fixes to procedural sounds
* pyglet.media: Fixed StaticSource usage with non-string source data
* pyglet.window: Providing width or height with fullscreen parameter to
constructor will now raise an exception
* OS X: Fixed interaction with non-pyglet window event loops
* OS X: Installer will use the system-installed and MacPorts versions of
Python if found
* OS X: Fixed library paths for systems with a case-sensitive file system
* OS X: Fixed mouse events in fullscreen windows
* OS X: Fixed reported window size of fullscreen windows
* Linux: Fixed error with >3 button mice
* Linux: Fixed default font use
* Win32: GDI+ is now used for font rendering, fixing antialiasing issues
* Win32: Font glyphs are now correctly aligned to the baseline
* Win32: Fixed queued media playback
1.0beta2
* examples: soundspace gives error if AVbin is not available
* examples: opengl.py made to demonstrate more OpenGL features
* tests: Logs to a file by default
* pyglet.image: Fixed image data pitch and row-ordering conversion
* Linux: Fixed 16-bit GLX 1.0 configuration
* Win32: avbin.dll is installed into the correct system directory
* Win32: Workaround for "GDI Generic" driver glTexSubImage2D bug
1.0beta1
* Removed shebangs from all library files
* docs: Numerous formatting fixes to documentation, including restoring
missing tables and linking in program examples
* examples: Added soundspace example
* examples: Sounds for astraea and noisy are no longer license-encumbered
* examples: "Fire" key in astraea moved to spacebar to avoid hotkey in
Lepoard
* examples: Fixed rewind/seek behaviour of media_player
* tests: Fixed import of tests.regression module regardless of PYTHONPATH
* pyglet: Added environment variables for default global options
* pyglet.clock: Fixed unschedule of clock items out of order
* pyglet.font: Fixed font.add_directory()
* pyglet.font: Fixed text wrapping in GlyphString at corner cases
* pyglet.media: Improved media streaming behaviour under loaded CPU
* pyglet.media: Implemented playback of video without sound
* pyglet.media: Removed redundant positional audio properties, and
redefined some to be compatible with both OpenAL and DirectSound
* pyglet.media: Fixed OpenAL 1.1 timing
* pyglet.media: Improved OpenAL underrun recovery
* pyglet.window: Removed extended Latin-1 key symbols
* pyglet.window: Added scroll lock key modifier
* pyglet.window: Fixed data type of mouse coordinates to int
* pyglet.window: Unified and fixed platform-specific event decorator
* OS X: Fixed fullscreen windows on non-primary monitor
* Linux: Fixed non-ASCII text input
* Linux: Added ALSA audio driver
* Linux: Small refactoring of window event dispatch
* Linux: Fixed lost key events under loaded CPU
* Linux: Fixed borderless window behaviour
* Linux: Fixed fullscreen window reactivation
* Win32: Added DirectSound audio driver
* Win32: Fixed interaction with language bar
* Win32: Fixed key events for non-ASCII keys
* Win32: Fixed motion event being fired on key release
* Win32: Fixed window close event
* Win32: Fixed handling of system error messages
* Win32: Improved playback of sound with software-based audio devices
* Win32: Fixed support for cygming special build of Python
1.0alpha2
* Complete change in interface and implementation of pyglet.media
* Window events are now only dispatched from the dispatch_events()
function, and in a consistent order across platforms.
* Abstract class WindowEventDispatcher removed, its functionality is
now in BaseWindow.
* Added DPI parameter to font.load()
* Renamed mouse.MOUSE_*_BUTTON to mouse.LEFT, mouse.MIDDLE and mouse.RIGHT
* Window.set_size() now raises an exception if the window is fullscreen
* Textures are now deleted when discarded, rather than requiring delete()
* Fixed the calculated width of font.Text instances.
* Renamed examples/event_test.py to examples/events.py
* Added media_player.py and Programming Guide examples.
* Added tools/gl_info.py and tools/al_info.py into the source dists.
* Added tests/regression/__init__.py into the source dists
* OS X: Fixed fullscreen windowing
* OS X: Fixed dylib loading when DYLD_FALLBACK_LIBRARY_PATH is defined
* OS X: Fixed various mouse-visibility, exclusivity and position problems
* OS X: Support the menu bar and application quit events
* Linux: Fixed exclusive mode problems when keyboard focus is lost
* Linux: Support for bitmap fonts.
* Linux: Fixed GLX 1.0, ATI and MESA implementations
* Linux: Improved vsync support across video drivers
* Linux: Fixed library loading to observe LD_LIBRARY_PATH
* Win32: Window is now "Unicode-aware"
1.0alpha1
* Initial release.