1.2rc1
    + 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)
    * Large fonts are displayed correctly now, fix for issue:684
    * Linux: reworked fontconfig use, fix for issue:506

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.
