0.7.3
=====
- Translation Updates
- GPLv3 compatibility
- Official compiler used for builds is gcc/mingw 5.3 / 5.4
- Fixes in offset to measure numberings and pickup measures
- Command Settings updates
- Small updates to View setWorld functions regarding types
- Bindings for page movement (up, down, home, end)
- Fix for Appearence Dialog
- Qt4 no longer supported officially
- Adjustments for Qt4 after API fixes for Qt5
  (not removed except for helper dialog due to drop of webkit by Qt5.6)
- Other minor changes Midi/Shortcut
- Load Dialog Fix (shortcut settings)
- No longer differentiate before showing Load Dialog (settings)
- Save Dialog updated to behave same as Load Dialog (settings)
- Various fixes for shortcut settings
- Fix for cloning View
- Support Qt5 for Windows (build), adjusted build instructions
- Fix Windows Qt5 DLL installation
- Integrate Shortcut Settings finally into Settings View
- Support several types of shortcut settings
- Readme now contains several updates to reflect compatibility with
  older dependent packages like swig and cmake
- added note checker
- note checker and midi command support for shortcut settings
- fixed some compilation issues on other platforms
- fix issues with new sheet;
- add dynamic keyboard helper for shortcut settings
- Add version information to installer
- Qt4 build settings separated
- Fixed mouse move lagging
- AutoConnect issue fixed for Print Preview
- Pass binary midi data directly to QTextStream, fixes midi export again.
- Add support for C++11 build (and later, depending on recent compiler used)
- Unified Edit mode with Select mode. Default mode now is Edit mode.
- Fixed missing uiSelectMode in CAActionStorage.
- Fixed showing selection area, if a user had a shaky hand
- New more simple help system (HTML) documentation system based on sphinx
- Migrated several guides to sphinx (sorry, the german guide needs still to be done)
- Fix when inserting note on empty bar line when already having edited
  some notes on a different bar line
- Add check for alsa on Linux for rtmidi;
- Fixed old GUI bug: On Undo, On New document, Note checker not activated on Undo.
- On first Escape, the selection is cleared. On second Escape, we a context is deselected.
- Fixed console logging: No mode handled.
- Fixed edit text hiding when clicked on an existing music element.
- Fixed Text/Lyrics/Bookmarks saving when clicked outside of the text edit. Only Esc key explicitly cancels the editing.
- Fixed editing bookmarks.
- Fixed Text/Lyrics/Bookmarks lost when switching from Insert mode to Edit mode without confirming text edit content.
- Added panning the view forward when writing lyrics at the end of the screen.
- Added behaviour to text edit: Blank content deletes the text element.
- Lyrics, text and bookmarks: Text edit shows on mouse release to allows multiple selection.
- Fixed insert playable icon to be more meaningful.
- Fixed toolbars: When inserting clefs, time sigs, key sigs etc. the voice toolbar should not be visible.
- Fixed fake text edit, if adding a text illegaly to non-playable element.
- Fixed text edit popping back up, when switching from insert to edit mode.
- Show text edit when exactly one element is selected, otherwise, confirm any opened text edits and hide it.
- fix for pluginmanager when no plugins are available
- Streamline Translation with 5.6 (use official macros)
- Support for latest gcc 7 (fix compilation)
- Fix issue when opening recent files and saving showing "unknown file format"
- Fix: If a non-playable is on first notem a slur could not be made
- Fix issue on not working Key Signature based transposition downwards
- Fix issue on voice number not updated when using tab key to walk over voices
- Added support for walking through contexts using tab key
- Set new MusicXML extension (.xml -> .musicxml) and change examples too
- Fixes and improvements on LilyPondExport (text, tempo, mark)
- Add support for importing compressed musicxml (only with metainfo)
- Fix Menu Shortcuts with ALT missing
- Fix order of keys
- Set key signature to autodetect values when transposing
- Fix issue that accidentals not shown in the second voice over barline
- Fix issues with dotted barlines and bars
- Add support for debug output that is only shown with debug build
- Add go to (jump to) bar
- Fix replace mark icon by volta
- Fix issues with creating/installing translation files
- Fix some swig warnings and debug output
- Show midi warnings dialog on startup
- Make properties dialog resizable (inkl. "grab" button)
- Show bar length error, if it is too long.
- Do not place autobars if inserting in the middle of the score
- Ctrl-T can now be used as shortcut for transpose

0.7.2
=====
- Set SelectMode instead of NoDocumentMode when a new document.was created
- Added ruler to show the bar number on top of the score view
- Updated translations
- Fix some issues to get Canorus running with Qt5
- Introduced official support for Qt5
- Bar reference list added to CAStaff
- Fixed Repeat bar lines in lilypond export 
- Removed obsolete clipping from CAScoreView
- Add icon for upcoming shortcuts feature
- Added newDocument() fallback for environment without Python.
- Added "Canorus is compiled with Python support." to about dialog box.
- Requires Python 3.x; updated corresponding bindings
- Added basic MusicXML export. 
- CATempo: Removed obsolete dotted property
- Lilypond export: Added support for CATempo and CARitardando.
- Scoreview: Fixed crash when adding lines marks
- Added MIDI pitch offset property to voice
- Lilypond export: Fixed indentination
- Lilypond export: Export instrument names.
- Lilypond export: Set rehersal marks drawn in box. 
- Fixed horizontal scrolling regression introduced with new speed optimizations.
- Fixed MusicXML import regression introduced in R1282.
- Significant speed improvement for getting the current clef.
- Fixed crash in KDTree when adding notes.
- Significant speed improvement for finding elements in range for canvas.
- Moved drawable map from KDTree to ScoreView.
- Removed several obsolete KDTree functions.
- Removed several obsolete ScoreView functions
- Midi import gives staffs and voices a name
- Compatibility fix with recent Qt4
- Skipped 0.7.1 Release

0.7.1
=====
- Updated translations
- Deprecated version 1 usage of swig, we no longer maintain this.
- Added support for ignoring Lilypond comments when importing it
- Fixed problem that undo command doesn't correctly update the cloned sheet
- Fixed crash when undoing source commits for the first time
- Fixed Lilypond comments import when parsing newlines (cr/lf)
- Fixed crash when importing lilypond lyrics
- Fixed warnings throughout the code with newer gcc compiler versions
  (See separate file large-warn-fixes.txt for technical details)
- Added Break of Compilation when warning occurs
- Fixed Lilypond melismatic lyrics when used in combination with hyphens
- Set autobeamOff for printing when lyrics is applied to the voice
- Added Lilypond export for forced accidentals
- Added underscores as spaces in Lilypond export
- Fixed compilation errors using Swig2
- Fixed note marks time start calculation
- Fixed importing of slurs times inside the tuplet
- Fixed importing of canorus files containing tuplet+slur combination
- Fixed settings dialog page on startup, if playback device not available anymore
- Fixed crash in reposit method, check for valid slur during creation
- Implemented degree-based accidentals detection for the given diatonic midi key
- Fixed semitiones calculation of diminished intervals
- Fixed midi notes import real times and for tempo > 240bmp
- Fixed wrong calculation from midi pitch to diatonic pitch
- Added parameter for scrolling the score view on newly selected music elements
- Fixed wrong semitones interval calculation
- Added midi support for (GM) instruments
- Fixed midi time and length calculation for midi import
- Fixed brackets and quotes lilypond export
- Fixed importing the tempo mark on a slured element
- Added notes, events to midi import and allow control via scripting
- Added list of shortcuts (midi and UI) in a special file to be used for
  user defined shortcuts
- Started work on backend for editing shortcuts (loading/saving/parsing)
- Fixed exporting text on chords to lilypond
- Added preliminary documentation of canorus libraries
- Fixed problem that make it impossible to save the document (#16606)
- Added support for moving sheets using drag&drop and double click
- Fixed unsaved changes warning dialog when opening recent documents
- Fixed sheet properties toolbar when removing the last sheet.
- Fixed update of the sheet tab name when renaming the sheet
- Fixed properties dialog layout
- Fixed default note stem direction
- Fixed that no time signature/barlines are shown when there are none in the score
- Fixed licensing issues with examples (and remove example with undefined license)
- Renamed license file to COPYING
- Added volta bracket support through special text mark
- Added release build possibility (including compiler optimizations)
- Fixed problem on text display with cleanup and chord creation
- Enforce UTF-8 encoding for the canorus and lilypond formats
- Fixed midi time scaling and quantisation for all events
- Fixed crash when opening an empty XML file
- Fixed crash with using certain styles in GNOME environment
- Fixed midi import adjustment of notes being left over
- Added articulation, fingering, dynamic marks to lilypond export
- Fixed problem with tuplet export by returning the last note of a chort
  instead of the first
- Fixed freeze in the GUI during import
- Fixed Midi export and repeats
- Fixed repeat in multiple staffs
- Fixed arbitrary placed key signature changes
- Added Midi support of key signature changes
- Added more examples
- Created undo only for a whole chord at midi keyboard input
- Fixed tuplet and chords saving
- Expanded scripting engine for figured bass
- Added some user interface settings
- Allowed midi import with no document opened
- Fixed minor problems on lilypond export
- Added GUI, support, load/save for figured bass marks
- Updated documentation
- Added support for melisma and syllabic lyrics in MusicXML import
- Moved view to the right if right border is hit on insert of new elements
- Fixed crash when reinterpreting accidentals
- Added reinterpret accidentals in transpose view
- Added support for key signature in midi export/playback
- Fixed default mode for the toolbar when creating a new document.
- Improved midi device (names)
- Use base name of midi imported file as sheet name
- Added support for time signatures in midi import
- Added factoring of music elements to scripting library
- Fixed automatic bar placement to work with future time signatures
- Added default time signature (midi recorder)
- Improvement for midi export: music length and tempo
- Now using newer RtMidi-1.0.9 library.
- Preserved midi channels and fixed hangover notes (midi import)
- Added multiple voices and tempo to midi import
- Added progress bar for opening and importing documents
- Use PMidi on all platforms
- Added some self-made midi examples
- Added Midi Import based on PMidi
- Fixed handling of sheets for midi export
- Added shortcut for cycling through sheets
- "Print Preview" is used for the current sheet only (same as for printing)
- Fixed problems when adding lyrics
- Added debian (ubuntu) build support (amd64)
- Started adding support for all kind of actions in Canorus
- Improved layout of properties dialog
- Added project file for the smallish IDE geany
- Fixed tempo for playback when starting outside of the beginning
- Fixed breve syntax in lilypond export
- Fixed back-scroll for repeats
- Moved "Use animated scroll" to settings dialog
- Fixed, lock (optionally, default), store scroll (position) on playback 
- Fixed playback of multiple voices with different timelengths
- Fixed MusicXML import (midi, grace notes)
- Added ArgoUML sources of the score model
- Parse movement title of MusicXML scores
- Fixed MusicXML import crash on multiple staffs and clefs and on unset <attributes>
- Added Czesh translation
- Started adding the action editor (to be finished in 0.7.2)
- Added support for Tab/Shift-Tab keys in Insert mode for voices
- Fixed crash when manipilating a slured chord
- Fixed dots offset and tuplet settings when editing the first time
- Fixed transposition bug in UI
- Fixed a crash when closing the document
- Removed some special characters on example file names.
- Added support for fermata in lilypond export
- Fixed a pasting problem
- Fixed UTF-8 file names in archives
- Added examples to the installer

0.7
===
- Added support for printing and preview of score.
- Added integrated Midi recorder.
- Added resources storage inside the document.
- Added User's guide.
- Added transposition support.
- GUI improvements:
  - Anti-aliasing in score view.
  - Music fonts not installed anymore.
  - Show note name when inserting notes.
  - Integrated User's guide browser.
- Import/Export improvements:
  - Basic MusicXml import
  - Basic Midi import
  - LilyPond now exports partial measure, uptext, downtext and rehersal marks
  - New export filters to PDF and SVG based on LilyPond
- Plugin improvements:
  - setSelection() and selection added to scripting engine.
  - rebuildUi() and repaintUi() added to scripting engine.
  - Added separator action for menus.
- Model improvements:
  - Added color property to music element.
  - Added facilities for calculating intervals from/to music pitches and key
    signatures.
  - Redesigned key signature, diatonic key and diatonic pitch.
  - Redesigned playable length and absolute length.
- Shipped Python 2.5 on Microsoft Windows.
- Support for Qt4.4.
- Official support for Mac OS X.

0.6
===
- Version 0.6 was skipped for various reasons

0.5
===
- Implemented infrastructure for getting MIDI-IN events.
- Lots of internal API changes:
  - Generalized Import and Export classes. New fileformats can now be implemented simply
    by inheriting those classes.
  - Import and Export are now done in their own threads.
  - Rewritten Voice class for insertion, deletion and manipulation for music elements.
    The score should now always stay consistent when removing a shared element from a
    single voice.
  - Scripting engine now uses internal CA-class name names instead of class names only.
    This solves the naming clashing problem in various scripting languages that don't
    use namespaces (eg. PHP) and enum<->class names clashes.
- Added marks:
  - Arbitrary text
  - BookMark
  - Tempo (bpm)
  - Ritardando, Accellerando
  - Fermata (normal, short, long, very long)
  - Dynamic (f, mf, p, sfz, etc.)
  - Crescendo, Decrescendo
  - Pedal (sustain)
  - Instrument change (effects midi as well)
  - Rehersal marks (A, B, C, D etc. on barlines)
  - Repeat marks (coda, varcoda, segno, volta)
  - Fingering (finger numbers, strings thumb, organ's left/right heel/toe)
- Added articulation marks:
  - Accent, Marcato, Staccatissimo, Espressivo, Staccato, Tenuto, Portato
  - Up bow, Down bow, Flageolet, Open, Stopped
  - Turn, ReverseTurn, Trill, Prall, Mordent, PrallPrall, PrallMordent, UpPrall,
    DownPrall, UpMordent, DownMordent, PrallDown, PrallUp, LinePrall
- Implemented export to Midi.
- New file format CAN - compressed CanorusML format with resources. This is now the
  default file format for Canorus.
  ISSUE: Please use CanorusML file format when using the document on cross platforms.
- Using new RtMidi-1.0.7 library.
- New translations (Canorus speaks 12 languages):
  - Danish
  - Norwegian-NB
  - Traditional Chinese
  - German
  - Hungarian
  - French
- Lots of other cleanups and bugfixes.

0.4
===
- Settings dialog.
- Customizable colors for Score editor.
- Element advanced properties dialog with abilities to change order of elements.
- Document recovery, if Canorus crashes.
- Copy/Paste.
- Undo/Redo.
- Splash screen.
- MIDI instrument per voice support.
- Key signature major/minor support and function marking integration.
- All predefined clefs supported by LilyPond with custom offsets.
- Scripting engine is now always synchronized with the current API.
- Python engine uses objective Swig interface.
- New CanorusML support in scripting library for directly opening/saving Canorus files.
- New playback support in scripting library.
- Supported translations besides English: Slovenian, Dutch, Swedish, Hebrew, German.
- Keyboard bindings for note insertion, playback and selection.
- Qt4.3 compatibility.
- Lots of smaller additions and even more fixes.

0.3.1
=====
- SVG icons are now shown on Windows.
- Fixed hyphen and melisma bug.
- Fixed playback of chords.
- Fixed LilyPond import and export of key signatures.
- Fixed LilyPond import of notes with flats.
- Fixed LilyPond crash when importing rests before notes.
- Uninstaller on Windows now also removes Canorus directory and menu entry
- Fixed some CMake rules for correct QSvg and QXml module inclusion and
linkage.

0.3
===
- Added support for Ties, Slurs and Phrasing slurs.
- Added support for Lyrics.
- Multiple selection.
- Added support for Function markings manipulation.
- Rewritten Playback to support repeat barlines.
- LilyPond imoprt and export of Lyrics and other fixes.
- SVG icons used instead of PNG.
- Improved ScoreViewPort rendering.
- Fixed lots of crashes and other annoying bugs.

0.2.5
=====
- New Doxygen documentation.
- Initial work on MacOSX port.
- Improved function marking rendering
- Scripting engine now offers integration with Canorus menu, import/export
  dialogs and keyboard and mouse events.
- New completely XML CanorusML format.
- LilyPond document export support.
- LilyPond voice import/export support.
- Rewritten GUI. Now supports multiple main windows. Added lots of icons.
- Translations support. Current translations: English, Slovenian.
- Majority of the code rewritten so we have a more robust foundation now for
  future development.
- Lots of warnings, crashes, bugfixes and memory leaks fixed in MIDI, GUI and
  Scripting engine.

0.1.0
=====
- Third technical preview release
- Python scripting support
- Official windows support (MacOS-X was confirmed to compile too)
- MIDI setup dialog
- Canorus's settings are now stored (mainly for Midi Setup)
- Plugins subsystem
- Rest insertion
- Added FunctionMarking support
- Converted .otf fonts to .ttf
- Fixed some crashes
- Windows compilation support using MINGW compiler
- debian/rules added to create .deb packages for Debian-based
Linux
- nsis setup added to create Nullsoft Windows installer

0.0.5
=====
- Second technical preview release
- Scripting support (currently only ruby supported) via swig
- Support of musical element (like rests, notes with flags, time signature)
- New plugin architecture (still work in progress). A plugin can be
  requested via Canorus ML; it currently requires ruby-qt4 to be installed.

0.0.2
=====
- First officially released version
- Prototype with several working features

0.0.1
=====
- Skipped this version, should have been released as early prototype

