ags (0.6.37)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed missing GMainContext acquire in ags_gui_thread.c
	* fixed NULL pointer accessing by moving code
	* fixed buffer-overflow because of swapped indices in ags_recycling.c

ags (0.6.36)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed introduced bug in ags_ffplayer.c because of missing mapping recalls

ags (0.6.35)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed SIGINT while accessing recycling_container being NULL in ags_channel_init_recall()

ags (0.6.34)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed wrong acquisition of AgsAudioSignal in ags_recall_recycling.c

ags (0.6.33)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed restore of AgsFFPlayer
	* implemented AgsStartReadFile task
	* modified startup of thread and file launch as reading from files

ags (0.6.32)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed missing offset of loop audio data with lower frame count

ags (0.6.31)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed loop audio data with lower frame count than buffer size
	* fixed memory corruption with freed list in ags_notation_cut_selection()
	* fixed toggling toolbar editing tool after restoring from XML file
	* work-around deleting GList notes of AgsNotation

ags (0.6.30)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed AgsFFPlayer loading Soundfont2

ags (0.6.29)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed dead-lock while selecting notes within note edit
	* fixed integer-overflow in ags_delay_audio_run_notation_alloc_output(), ags_delay_audio_run_notation_alloc_input() and ags_delay_audio_run_notation_count()
	* fixed wrong-lock order in ags_play_notation_audio_run.c
	* fixed buffer-overflow in ags_audio_signal_create_audio_signal_with_frame_count()

ags (0.6.28)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed non-atomic access to atomic flags of AgsThread in ags_start_devout.c
	* reverted ags_gui_thread_run() functionality
	* fixed initial value of LADSPA plugin as reading from file

ags (0.6.27)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* work-around in ags_notation_remove_note_at_position() to fix memory corruption

ags (0.6.26)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed NULL pointer during key editing in editor
	* fixed race conditions in pattern and note edit
	* fixed missing reset link in ags_notation_add_note()
	* fixed access to invalidated pointer in ags_notation_remove_note_at_position()

ags (0.6.25)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed ags_thread_find_type() and ::run of all thread implementations to be safer
	* fixed dead-lock while pasting notes that caused application to crash

ags (0.6.24)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed dead-lock while open XML files
	* fixed misconfigured port

ags (0.6.23)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed REVERSE_TAB to escape focus of AgsDial by forward control keys
	* fixed _File mnemonic in menubar

ags (0.6.22)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed relative path to gsequencer while applying properties

ags (0.6.21)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed restoring and allocation of AgsLineMember dimensions
	* fixed SIGINT while reading XML files including AgsRecallLadspa

ags (0.6.20)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed unrolled functions to have correct stop
	* fixed selection in ags_pattern_edit_callbacks.c and ags_note_edit_callbacks.c because it used wrong context
	* fixed ags_recall_real_cancel() because children field might have changed

ags (0.6.19)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed accessing NULL pointer in ags_synth.c
	* fixed accessing NULL pointer in ags_ipatch.c
	* fixed accessing NULL pointer in ags_ffplayer_callbacks.c
	* fixed missing lock of mutex in ags_playable.c

ags (0.6.18)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed volatile thread tree accessors
	* refactored by removing AgsAudioLoop fields and replacing with ags_thread_find_type()
	* work-around for resetting link and causing crash

ags (0.6.17)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* enrolled built-in functions

ags (0.6.16)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed refactored code of ags_channel.c because of bugs

ags (0.6.15)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed crash while unlink channel and then do playback because recycling wasn't updated properly
	* fixed dead-lock while muting pad
	* enhaced AgsMachineEditor to be thread-safe
	* modified ags_audio_loop.c and ags_gui_thread.c to process in parallel

ags (0.6.14)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed NULL pointer in ags_line.c as accessing mutex manager
	* fixed NULL pointer in ags_drum_output_line.c as accessing machine while setting channel

ags (0.6.13)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* added even more mutices to guarantee thread-safety

ags (0.6.12)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* added more mutices to guarantee thread-safety

ags (0.6.11)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed race condition caused as stopping the engine ended in a dead-lock

ags (0.6.10)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed startup dead-lock
	* implemented ags_main_loop_get_tree_lock()

ags (0.6.9)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed missing notation due to refactoring of 0.6.8

ags (0.6.8)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed super-threaded scope audio and channel to be thread-safe
	* refactored ags_audio_set_audio_channels() and ags_audio_set_pads()
	* improved ags_channel_set_recycling() to instantiate AgsRecallID
	* enhanced super-threaded scope recycling but is probably not yet ready
	* enhanced ags_recycling.c to use mutices in view of super-threaded computing
	* enhanced ags_audio.c and ags_channel.c the use of mutices

ags (0.6.7)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed crash related to XML IO of AgsFileLink
	* implemented ags-envelope recall but it's not tested, yet

ags (0.6.6)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed modified default thread model in ags_config.c what caused certain crashes without ECC
	* extended AgsFileLink with field audio_channel see next
	* improved link editor file chooser to let you select audio channel

ags (0.6.5)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed ags_pad_play() to contain cancel code instead of playing again on toggle
	* modified default thread model in ags_config.c what caused certain crashes without ECC
	* implemented loading GTKRC from $(HOME)/.gsequencer/ags.rc

ags (0.6.4)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed audible feedback of note edit to play actual length of note
	* fixed not connected line member
	* fixed missing value_changed event in ags_dial.c
	* removed built-in styles

ags (0.6.3)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed to shrink of notes by keyboard to enable initial size
	* improved user's manual docbook XML documentation
	* implemented AtkAction interface in ags_dial.c and key-bindings

ags (0.6.2)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed buffer attack in ags_buffer_audio_signal_run_inter()
	* fixed NULL link within link editor to be shown correctly
	* fixed playback of linked input
	* implemented file link in link editor
	* implemented audible feedback of AgsPatternBox, AgsCellPattern, AgsPatternEdit and AgsNoteEdit

ags (0.6.1)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed crash while clicking AgsPatternBox pad
	* fixed toggling all selected pads of AgsPatternBox pattern
	* enhanced prelight of focused AgsPatternBox pad

ags (0.6.0)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* Implemented basic accessibility thus refactored AgsDrum and AgsMatrix. Further enhanced AgsPatternEdit and AgsNoteEdit.

ags (0.5.12)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed ags_channel_set_link() and ags_channel_set_recycling()
	* fixed unlink while ags_audio_set_pads() and ags_audio_set_audio_channels()

ags (0.5.11)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed time calculation using absolute position for AgsExportWindow and AgsNavigation
	* fixed fundamental timing issue which caused the engine to be delayed

ags (0.5.10)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed grained control range
	* fixed more precise time calculation
	* fixed AgsDial wrong arithmetic expression
	* fixed time calculation
	* fixed crash while open unsupported files
	* implemented AgsAsyncQueue interface in ags_task_thread.c to avoid race-conditions
	* fixed AgsDrumInputPad playback

ags (0.5.9)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed cliped LADSPA data

ags (0.5.8)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed auto-scroll
	* fixed time calculation
	* fixed copy & paste
	* fixed ruler
	* fixed crash during extensive scrolling
	* fixed export duration and difference to playback time

ags (0.5.7)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed crash during unavailable audio file
	* fixed buffer size preference for thread frequencies

ags (0.5.6)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed memory leaks related to GValue in recalls
	* fixed memory leaks in ags_display_tact_launch() as well for ags_toggle_led_launch() and in some GUI callbacks of them
	* fixed memory leak AgsReturnableThread to clean disconnect handler
	* fixed thread frequencies and delays
	* implemented code alter macro AGS_USE_TIMER

ags (0.5.5)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* enhanced thread-safety
	* fixed ags.conf per file base
	* reducing thread-cycles per second in order to target performance problems
	* fixed allocation of ags-buffer

ags (0.5.4)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* implemented ags.conf per file base
	* cleaned-up recalls allocation

ags (0.5.3)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed export duration
	* fixed improved AgsDial
	* fixed dead-lock for to many calls to AgsChannelThread

ags (0.5.2)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed memory leaks accessing AgsConfig
	* fixed dead-lock while stop playback
	* improved drawing of animations

ags (0.5.1)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed ags.xsl removed wrong division, note use segmentation to adjust appropriate playback rate
	* fixed file open dialog callback
	* fxied calculate time by segmentation
	* fixed pattern mode hint for notation
	* fixed reading bpm setting from ags.xsl generated files

ags (0.5.0)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* implemnted first super-threaded context for AgsAudio and AgsChannel
	* fixed replace deprecated GtkFileSelector for opening files

ags (0.4.2.92)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed crash while hot-link matrix and synth with multi-output
	* implemnted segmentation

ags (0.4.2.91)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed multiple occurence of recalls
	* fixed potential infinite loop while reset recall ids
	* migrated away from hide references to recall id status
	* fixed proper unlink as adjusting channels
	* fixed allocation of ags-buffer
	* fixed selective creation of recalls in ags_recall_recycling.c
	* fixed remap of recycling recalls for available destination in ags_recall_channel_run.c
	* minor bug-fixes
	* note speed may differ for now

ags (0.4.2.90)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed led in sequencers
	* fixed missing mutex in matrix tact callback
	* fixed cut to nowhere
	* fixed ags.xsl notation translate
	* fixed redraw of piano
	* fixed redraw of matrix
	* fixed deny output pads to be resize for mixer

ags (0.4.2.89)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed bug in ags_recall_channel_run.c that caused destination not being mapped

ags (0.4.2.88)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* improved auto-scroll to be loop aware

ags (0.4.2.87)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed auto-scroll

ags (0.4.2.86)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed version string from autoconf
	* fixed chrash during removing not existing machine selector
	* added experimental auto-scroll capabilities

ags (0.4.2.85)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed allocation of piano
	* fixed grained mutices for accessing notation
	* fixed cursor in edit widgets

ags (0.4.2.84)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed dialog owned by machines to destroy
	* fixed make machine selection dialog modal

ags (0.4.2.83)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed playback within AgsDrumInputPad
	* fixed thread-safety of editor with AgsMutexManager
	* hided playback button of AgsDrumInputPad open dialog
	* fixed spin button in AgsDrumInputPad open dialog

ags (0.4.2.82)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed default device as reading XML files
	* fixed floor to round in XSL for reading MIDI notes
	* fixed unlink AgsAudio on remove
	* fixed termination of sequencer in ags_machine_play_callback()
	* fixed crash during channel resize if not shown in editor, hide widgets instead of remove
	* fixed destroying of machines removing editor widget
	* fixed paste notes
	* added flag to AgsDevout to fix unavailable soundcard

ags (0.4.2.81)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* removed useless controls add/remove in machine property editor
	* fixed navigation duration
	* fixed seeking
	* fixed crash according not properbly cleaning up after playing

ags (0.4.2.80)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed renaming
	* fixed audio channel bug in notation recall

ags (0.4.2.79)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* renamed binary and project
	* added missing copyright notice

ags (0.4.2-78)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* implemented distinct between sequencer and notation loop
	* fixed unnecessary return if notation reaches notation-loop-end
	* fixed selection for pattern and notation editor
	* refactored fix auto-scroll
	* added exclude sequencer for export dialog

ags (0.4.2-77)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed possible NULL pointer in ags_play_notation.c
	* fixed editor crash and missing notebook
	* implemented AGS_AUDIO_REVERSE_MAPPING flag, it indicates channel mapping should be interpreted in reverse order
	* implemented invert tool for notation editor

ags (0.4.2-76)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed boundary for matrix clipboard
	* fixed paste to mono or different audio allocation
	* fixed piano shift to correct direction
	* fixed reset vscrollbar in editor widgets
	* refactored ags_editor.c
	* fixed already selected machines in editor not to add again
	* fixed audio channel resize for mono machines, disabled it in machine properties dialog
	* enhanced LADSPA browser refresh

ags (0.4.2-75)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed deactivate led in AgsDrum and AgsMatrix
	* fixed multi-output
	* fixed adjusting audio channels for tabs of editor
	* implemented shift piano thereby fixed piano allocation

ags (0.4.2-74)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* fixed AgsPatternEdit focus, selection, coloring of selected notes and a crash related to wrong function call
	* added exclusion for sequencers by using "exclude sequencers" checkbutton in navigation
	* added copy & paste pattern context menu items to drum and matrix
	* fixed AgsMatrix input
	* fixed NULL pointer error in ags_count_beats_audio_run.c

ags (0.4.2-73)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* back-ported AgsPatternEdit
	* implemented basic editing key strokes like Ctrl-c, Ctrl-v and Ctrl-x for AgsPatternEdit

ags (0.4.2-72)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* implemented basic editing key strokes like Ctrl-c, Ctrl-v and Ctrl-x
	* implemented seeking for paste if position tool is selected
	* updated clipboard version to 0.4.2

ags (0.4.2-71)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* commented-out two unimplemented menu entries in editor's machine selector. Add and remove tab you may do so by using resize tab of machine properties dialog.
	* implemented select-all in editor
	* fixed multi-channel editing mode
	* fixed refresh of GUI after cut or paste
	* fixed crash related to XML IO

ags (0.4.2-70)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* minor bug-fixes

ags (0.4.2-69)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* added XSL file to transform output of `midi2xml` using `xsltproc`

ags (0.4.2-68)

	[ Joël Krähemann (Maintainer of Advanced Gtk+ Sequencer) ]
	* added `midi2xml` the MIDI file to XML parser
