31/12/2007 qgit-1.5.8
- fix broken 'stg pop' interface
- preserve file extensions in external diff
- fix an assert for combined merges of a renamed file
- fix bogus 'kill' error msg under a race condition
- fix a rare segfault when resetting the repo while loading
- sort revisions correctly in range select dialog
- add --no-color option to several calls to git
- fix highlighted patch content when tab is open after filtering
- fix a rare hang when reading big file contents
- export selected patches to actions

8/9/2007 qgit-1.5.7
- fix CVE-2007-4631
- fix an issue with --left-right option
- fix file history graph to show applied patches as such
- fix file annotation when selected revision is an StGit unapplied patch
- fix broken custom action with arguments
- fix patch viewer when patch contains a '\0' char
- speed up filter by field
- fix selecting revision when double click on annotate
- fix data corruption when applying a patch to StGIT repo

25/5/2007 qgit-1.5.6
- hide pan separator when turning off split view
- fix an issue when releasing "Pin view" check box in file viewer
- fix a memory leak when we fail to start 'git rev-list'
- fix argument list overflow in repositories with a lot of tags
- fix issues with restoring current line after patch filter
- add support for hiding removed/added lines in patch viewer
- fix saving of a binary file from directory tree view
- add support for toggling description header
- fix issues with filenames with spaces
- add some more mimetype icons for tree view files
- fix a bad annotation issue with symlinks
- fix hanging wait cursor if annotation fails to start
- fix an annotation issue with file deletion/re-creation
- fix a bogus assert when reading an unknown file status
- fix an issue with not supported locales
- include remote branches in branch info in revision description
- fix bold names of working dir changed files
- add an application icon

25/2/2007 qgit-1.5.5
- fix a spurious double popup menu in rare cases
- add support to show user info in Edit->Settings->Commit
- file names cache optimization: reduce load time by 35% and memory by 30%
- fix opening a repo from a read-only filesystem
- filter out StGIT bases in our tag list
- use light orange for remote branches (Pavel Roskin)
- add 'Remote branches' context sub menu
- fix disappearing merge files list when browsing revs
- delay cache loading a little bit and fix a bug
- fix a parsing error in case of combined merges
- support new git text encoding policy in log messages
- fix a subtle bug that could lead to miss an update event
- fix bug in revisions loading sequence numbers
- fix parsing in case of revision headers with extended information
- fix stripping of comments in commit dialog message

28/12/2006 qgit-1.5.4
- improve load speed of 40% using a temporary file to read from 'git rev-list'
- fix many typos found by aspell, mostly in the comments (Pavel Roskin)
- increase to seven the number of recent repos menu entries
- fix a possible NULL dereferencing spotted by Klockwork K7.5
- fix a warning on 64-bit systems (Pavel Roskin)
- show also load speed as MB/s in status bar
- read file names cache after repository has been loaded. Good speedup 'feeling'
- allow to tag the same revision more then once
- mark with light green tag only current branch
- remove current HEAD from startup tag list. Spotted by Toralf Foerster
- use faster 'git show-ref' instead of 'git peek-remote'. Requires git v1.4.4
- complete rewrite references reading and handling: speedup and cleaner code
- be more user friendly when creating a new action
- quit if unable to parse command line arguments
- fix display issue when commit title length is less then 4
- increase file history list browsing speed
- resolve links also for an abbreviated sha in revision description pane
- fix tree view not correctly updated in rare cases
- fix an issue in file history with revisions that delete a file
- hide tag marker for HEAD also when is under refs/remotes
- compile with -frepo flag to remove duplicated template instances

11/11/2006 qgit-1.5.3
- use a smaller tab close button and a smaller icon (Pavel Roskin)
- fix a crash in case of repo change while in filtered view
- fix a crash due to evil static pointers
- clear all the panes if search from the toolbar doesn't find anything
- silence a Qt warning when closing a tab
- let the user to set the typewriter (fixed width) font used
  with patch and file content viewers
- fix broken StGit 'pop' command interface
- do not use "--keep" option of git-am as default
- fix issues with tag marks when changing graph size
- fix filenames cache data saving in case of bare repositories
- rewrite and simplify graph drawing code (Josef Weidendorfer)
- fix issues with file names with spaces
- adjust columns width when changing window size
- fetch file history from all trees instead of only current
- early exit update cycle when a new request arrives
- correctly order tags in start-up input range dialog
- fix patch numbering order in format patch

30/9/2006 qgit-1.5.2
- fix a memory leak in case annotation is closed while processing
- fix a rare segfault due to a race in annotation code
- fix commit when the change in working dir is a file deletion
- fix file list is not cleared when changing to revision with no files
- load file history without --topo-order option
- fix bold file content after removing range filter
- fix range filter miscalculation
- fixed two bugs in range filter code
- fix file view font to match main view one
- fix date/time column title issues
- fix a very rare hang on exit
- refactor exceptions handling code

11/9/2006 qgit-1.5.1
- fix broken refresh function

9/9/2006 qgit-1.5
- use GNU Source-highlight external tool with file viewer
- show file rename/copy info on patch and file list views
- show the currently checked-out head in bold font
- show stat info at the beginning of patch view also for merges
- added support for multi tab patch viewers aka 'view patch in a new tab'
- added support for multi tab file viewers aka 'view file in a new tab'
- improve size compression of revision's files saved data
- disable 'close tab' button if current tab is the main view
- replace "git-" commands with "git ". Most git commands are now built-in
- other small fixes and some performance tweaks

15/7/2006 qgit-1.4
- added powerful and flexible custom action support
- use markers for refs instead of background color in short log line
- added "Copy link sha1" context menu entry in revision description
- CTRL+right click on a revision to toggle 'diff to selected sha' mode
- added support for applying patches to working directory only
- better diagnostic when a command fails to start
- show branches that revision belongs to
- show near tags information in revision description
- show children list in revision description
- added a tool button to highlight filter matches instead of filtering

4/6/2006 qgit-1.3
- added another powerful key binding to switch pages: <Alt+wheel>
- add refresh button to main toolbar
- disable back and forward buttons when not in a git archive
- patch viewer should not parse HTML
- strip debug info when installing qgit
- move 'Settings...' at the end of Edit menu
- fix code range filtering in case of multi independent branches
- always select at first revision after opening a repository

21/5/2006 qgit-1.3rc1
- convert UI to use tabs instead of independent windows
- use key bindings to quickly change view
- use 's' key to quickly hide/unhide secondary panes in current view
- use a standard 'find text' (CTRL+F) dialog across views
- add support for filter a given substring or regexp through patches content
- highlight matched filter patterns in diff viewer
- add up/down one revision key binding
- double clicking on file list now shows the patch
- improve file content loading time
- add support for hide/unhide annotation in file viewer
- fix 'format patch series' broken in multi revision case
- fix search for StGIT patches only under current stg branch directory
- fix don't be confused by out-of-date parent IDs of unapplied patches (Pavel Roskin)
- fix show ref names in pop-up menu also for applied StGIT patches
- fix unable to push and pop patches if "check working dir" is enabled
- add support for finding Qt on SuSE-9.2 for x86_64 (Pavel Roskin)

29/4/2006 qgit-1.2
- do not update to main view when browsing file history: double click is now required
- show "working dir" pseudo rev also when there is no change
- add support for 'working dir' pseudo-tree in tree view
- add key bindings for scrolling patch and revision logs views
- add support for adjustable font size in revision list view
- add "revision diff" entry in context menu
- support lane mouse selection also for not free lanes
- help view should not be a top level window
- restore selection when removing code filtering
- fix a bad crash in diff viewer window
- fix a inconsistency in spinbox in annotation view
- fix an off by one bug that creates invalid pixmaps
- fix highlighting of selected revision if a reference name is used
- small GUI tweaks

17/4/2006 qgit-1.2rc2
- show stat info in patch viewer. Use new --patch-with-stat git-diff-tree option
- revisions storing update. Change revisions container and defer parsing
- use a circular buffer instead of a double buffer to load data
- defer graph lanes calculation. Drawing was already deferred
- remove useless option "File window always on top"
- pop-up a warning if external diff viewer fails to start
- add a pop-up menu in file list window
- avoid to show patches not in current StGIT branch
- fix StGIT commit to remove temporary files when finished
- small GUI tweaks

8/4/2006 qgit-1.2rc1
- add support for code range filtering
- much improved graph for partial repos views. Use new --boundary git-rev-list option
- pressing ESC in startup dialog make application to quit
- add support for quick open of latest visited repositories
- add support for launching an external diff viewer
- speed-up git commands execution using usleep() in external program launcher
- highlight filter matches in revision logs
- add git version compatibility check
- fix duplicated unapplied patches in StGIT when qgit is called with --all option
- fix run from subdirectory regression

19/3/2006 qgit-1.1.1
- add support for file annotations in multi-branch repos
- speed-up browsing with tree view open
- tree view: set in bold the names of modified files
- use a map instead of a list to speed-up path filtering
- add support for listing tags in a submenu in mainview context pop-up
- show StGIT patch names on the status bar (Pavel Roskin)
- use dark green pluses for applied StGIT patches (Pavel Roskin)
- more then double annotation speed
- add support for jumping to branches from pop-up menu
- remove setting 'Load file names in background'
- save cache file under ./git directory
- fix duplicate tags in the pop-up menu (Pavel Roskin)

18/2/2006 qgit-1.1
- updated and much improved user interface in main and file windows (Pavel Roskin)
- add support for filtering on log messages, not only on log headers
- add support for applying patch names with quoted text inside
- convert main and file viewer to toolbuttons and use a proper toolbar (Pavel Roskin)
- various fix and improvements to build system (Pavel Roskin)
- fix crash when filter/unfilter if "working dir" rev is selected
- fix "diff to selected" for "working directory" revision case
- keep "diff to selected" target highlighted when filtering
- various small fixes

5/2/2006 qgit-1.1rc3
- new build environment based on auto-tools instead of scons (by Pavel Roskin)
- SunOS make cannot chain implicit rules - avoid them (by Pavel Roskin)
- make sure wrong version of Qt is not used (by Pavel Roskin)
- support patch files with spaces in name
- fixes for using srcdir in src/Makefile.am (by Pavel Roskin)
- future-proof configure.ac (by Pavel Roskin)
- use git-diff-tree -c (combined) option to retrieve merge's file list
- fix disabled 'show file viewer' action when no file selected from tree
- use --remove-empty option to retrieve file history
- fix jump to parent/childs lanes pop-up menu
- allow to copy an annotation header sub part in file viewer
- fix handling of command line arguments with single quotes
- widget sizes tweaks and small fixes

21/1/2006 qgit-1.1rc2
- fix filter by log and by author
- initialize myBrush directly to fix g++ 3.3.5 compatibility (by Pavel Roskin)
- add a script to generate src/help.h automatically (by Pavel Roskin)
- do not close file viewer when selecting a directory (spotted by Pavel Roskin)
- convert README to asciidoc format (by Pavel Roskin)
- remove obsolete git-format-patch options
- add .gitignore files (by Pavel Roskin)
- add support for auto-select first tagged line of current revision
- removed obsolete option 'diff viewer always on top'
- fix some buttons sizes (by Pavel Roskin)
- fix undo when selection has been chosen with lanes 'jump to' pop-up
- fix jump to parent/childs lanes pop-up menu when parent has not been loaded
- add support for dragging file names
- fix merge interesting files list
- fix pop-up context menu in StGit archives (spotted by Pavel Roskin)
- fix update of file content after un-pinning (spotted by Matthias Urlichs)
- tree view optimization
- various stability fixes

8/1/2006 qgit-1.1rc1
- show only interesting files in merges
- add support for file content copy with annotation headers removed
- update file list window to support diffing against a selected revision (open diffs
  viewer and then do CTRL + right click)
- show working directory status in history viewer
- show all the branches of a revision in status bar
- added exception manager. See 'exception_manager.txt' in base directory.
- rewrite data loading to use a double buffer technique. About 20% speed up
- fix broken link navigation in commit description window
- fix filter by SHA substring
- fix a bug in tree viewer when changing revision with no files selected
- fix do not open file viewer when double click on tree directories

30/12/2005 qgit-1.0
- check 'sign off' setting flag for patch apply too
- fix a crash when getting annotation under stress test [by Pavel Roskin]
- fix crash in fileviewer under stress test
- use 'Head' to label current branch, use 'Branch' otherwise
- fix crash when quickly refreshing repo (F5) with tree viewer open
- fix a race: cancel pending annotation before to update the state.
- reuse of invalid lastItem in MainImpl::appendHistCommit [by Pavel Roskin]
- fix a missing/corrupted data bug in git reading functions (very bad!)
- fix missed tree selection in same cases
- fix regression: file viewer broken with deleted files
- fix crash when closing qgit while starting up
- fix a crash when closing file viewer before file content is loaded
- fix regression: codecs settings broken
- ensure current rev is visible when opening diff viewer
- defer author date transformation to increase loading speed
- various small fixes and GUI tweaks

24/12/2005 qgit-1.0rc2
- fix tree browsing corner case
- qgit: allow overriding CCFLAGS [by Pavel Roskin]
- use git-am instead of git-applymbox to import patches
- enforce const return types when possible
- disable filter tree action while filtering
- fix missing resume after refresh in file history loading
- remove static variables from read functions
- added 'Check working dir' menu entry
- adjust widgets size with font
- qgit: patchesStillToFind not initialized [by Pavel Roskin]
- set 'View diff' and 'View file' as toggle actions
- qgit: enable compiler warnings [by Pavel Roskin]
- add range select dialog options
- fix drag and drop between StGIT patches

18/12/2005 qgit-1.0rc1
- reselect current revision after a refresh or a tree filter/un-filter
- speed up startup refs reading deferring tag messages fetching
- print offending command line when running commands synchronously
- added fancy annotation progress bar
- use git variable i18n.commitencoding to store charset codec name
- converted to use git-peek-remote to read refs: slower but cleaner
- added python and perl file icons in tree view
- fix a long standing bug that filters out error reporting when a
  process writes to stderr
- fix tree filtering when tree selected item is not visible
- fix error getting file sha
- add wait cursor while opening tree directory
- fix issue with mouse right-click that could freeze the UI in some cases
- always load names cache file if present
- fix graph in (rare) case of initial rev to be a fork
- fix enable/disable 'view diff' and 'view file' menus policy
- fix multi-tag commits display in status bar
- remove PGP signature from tag message
- fix file viewer sometimes opens on a wrong file when file is tree selected

26/11/2005 qgit-0.97.3
- qgit now works from subdirectories.
- added 'save file as' feature. To save on disk selected tree files.
- added support for tag messages. When tagging a revision it is
  possible to add a message, this will be shown in status bar, together
  with tag name, when a tagged revision is selected.
- added support for tag delete.
- rewritten file/annotate viewer to be more stable when user changes
  request while updating. Now should be possible to safely browse
  through logs and archive tree without waiting for update to finish.
- do not assume git bins directory is in $PATH. Use 'git --exec-path'.
- fix possibly wrong description for revs with no commit messages nor subjects
- fix annotate viewer to update correctly with 'jump to rev' function
- fix diff viewer to always center on selected file
- fix regression, bad annotation of deleted files
- various GUI tweaks and small fixes.

13/11/2005 qgit-0.97.2
- add user selectable text codec
- fix annotation for 'No newline at end of file' case
- fix annotation for small files
- remove annotation Id column from main view
- correctly handle '<' and '>' in patch description
- fixed a segfault caused by tree view
- fix wrong annotation author in case of merges

6/11/2005 qgit-0.97.1
- reduce flickering in tree view
- show root directory in tree viewer when no file is selected
- tree view reload optimization
- fixed a segfault when closing diff viewer
- hide annotation id column from main view

5/11/2005 qgit-0.97
- added tree view on archive files/directories, double clicking on a file opens
  file annotation window.
- took advantage of git-rev-list "--dense" option to retrieve file history.
- added a file history graph in annotation viewer.
- took advantage of --dense option to compress revision list to show only selected
  files/directories in tree view. Tree view supports multi-selection.
- rewritten external processes launching to be more stable and fast.
- rewritten event handling to be much more clean and easy to follow. This also
  fixes some subtle bugs.

15/10/2005 qgit-0.96
- color scheme is no more hardcoded but inherited from platform
- rewritten diff viewer as a bottom dockable window: geometry is persistent.
- StGIT add to top (refresh): it is now possible to change patch message
- StGIT commit: restore original files in working dir if commit fails
- added tag list in pop-up menu (right click on main view)
- use CTRL + right click to select a revision to diff against instead of just
  right click to be compatible with pop-up menu while diff window is open
- updated startup dialog to include some check box for common settings
- make qgit work with time-based arguments
- speed-up of file names on demand loading. Load file names in background is
  still the suggested policy.
- speed-up of annotation, also make annotation work with no loaded file names.
  To have maximum performance, load file names in background is still the suggested policy.
- added status bar on annotation viewer with information on what's going on in
  background.
- time column moved to the right and now display commit author date by default,
  relative time is still available through settings.
- fix broken jump to children/parent function
- finally fixed QSettings compile warning
- added some more tooltips and menu entries to help first time user
- various small fixes and GUI tweaks.

24/9/2005 qgit-0.95
- more scalable pixmap memory handling.
  Graph pixmaps are created only for visible items and freed
  when log lines became not visible so that the amount of memory
  used is constant and independent from archive size. This is also a
  performance improvement because of the 'lazy setup' policy.
- changed GUI update policy to group all the updates in one big chunk at
  fixed intervals. This is faster then an incremental update.
- more scalable file names handling.
  File paths are split in base and file name, both are then independently
  indexed. This gives huge memory savings and also better scalability because the
  'different file names' set grows much more slowly then new commits. Using two index
  tables gives good memory saving when you have lot of files in the same (deep) directory.
- Rewritten git-rev-list parsing to avoid as much as possible to move data around.

10/9/2005 qgit-0.94
- added integration with StGIT:
   1)Visualization of applied and unapplied patches in main view.
   2)Interface to push/pop patches by a mouse right click on selected items
     Push supports also multi-selection
   3)Interface to new/refresh patches
   4)Interface to patch import/fold
- big performance improvements. qgit has been tuned for performance and responsiveness
- updated annotate to show only interesting commits, i.e. no empty merges
- added refresh command by F5 or file->refresh to quick reload archive
- added a setting to disable background load of file names and load only on demand. Can be
  useful in case of big archives and low memory. Warning, browsing of commits and
  annotation function are greatly slowed down
- updated to recent git big rename
- various small bug fixes and GUI tweaks

21/8/2005 qgit-0.93
- added drag and drop of selected revs between qgit instances: using
  git-format-patch in dragging archive and git-applymbox in dropping
  archive to transfer the revisions patches.
  Instances can be open with menu->file->'open in a new window' or simply from the shell.
- added GUI interface to git-applymbox to import patches
- added refs highlight, now any reference found recursively under .git/refs/
  is highlighted according to its type: current branch(HEAD), branch, tag, other.
- added graft support using --parents flag in git-rev-list
- added custom options setting for commit dialog (interface to git-commit-script)
- added --signoff option to patch format
- reworked error reporting infrastructure, now much more powerful
  and informative in case of git command execution failure
- various small bug fixes and GUI tweaks

16/8/2005 qgit-0.92
- fix a bad crash when running qgit --all on archives with
  branches.
- added 'Make Tag' menu entry
- a compile fix for Debian users, reported by Martin Langhoff
- various small tweaks to GUI

14/8/2005 qgit-0.91
- fix a build problem on some platform, spotted and
  fixed by Bernhard Schiffner.
- added line and col number in commit viewer

13/8/2005 qgit-0.9
- added commit dialog to commit or simply update cache (sync)
  of selected files
- fix a nasty bug in git-diff-tree interface that sometimes
  led to missing revision files
- added F3 accelerator in file viewer for find button
- fix proper closing of file and diff window when quitting
- fix a corner case in annotate: A revision not reachable
  is not an BUG but a corner case of a branch forked before
  our initial revision
- fix annotation broke by a recent change
- fix spurious LF in diff viewer
- added revisions range select dialog when calling qgit
  without arguments or when changing archive
- replace SHA's with short logs in commit messages links

7/8/2005 qgit-0.82
- replaced jump-over-bumps with horizontal lines
- set graph bullets a bit smaller
- no more word wrapping in diff and file viewers
- fixed display of e-mail addresses in commit messages

6/8/2005 qgit-0.81
- add move back/forward in selection history
- add "hyperlinks" SHA1's in commit messages
- fix cursor position in log description window when changing log
- use GIT_DIR when available
- accommodate new git-diff-tree format
- added save/restore of diff and file window's geometry

22/7/2005 qgit-0.8
- added menus and reorganized GUI
- status bar shows tag and heads names when selected
- status bar shows stats info when finished loading
- added tooltips
- added pop-up on right click on an empty lane to jump
  to childs and parent
- added 'make patches' function similar to git-format-patch-script. Selecting
  n (with n >= 2) revs and pressing mk-patch button will create a (n-1) patches
  series with the corresponding diffs. It's not necessary that the revisions
  are consecutive
- to accommodate standard multi line selection (needed for
  'make patches'), select diff target it is now chosen with
  right click instead of CTRL + click
- added diff cache view: if working directory is different from
  HEAD a highlighted line is shown at the top of the list
- updated diff and file viewers to show diff cache information
- updated annotations to show diff cache information
- added settings page
- added help page (F1 shortcut)
- added make install and make uninstall to install in $HOME/bin
- in case of merges the groups of files corresponding to each merge parent
  are now separated by two empty lines.
- fixed first annotation author to show an empty
  field (as suggested by Ingo Molnar) only in case of not new file
- changed format of annotation with a point instead of a space after
  id to help find function: '34 Author Name' -> '34.Author Name'

10/7/2005 qgit-0.71
- fix build error on some platforms

9/7/2005 qgit-0.7
- rewrite of graph drawing
- start-up loading: switch to use git-rev-list --topo-order
- final fixes to annotation
- cache of file lists to speed-up annotation
- added yellow background on heads
- fixed command line parsing

25/6/2005 qgit-0.61
- improve annotation algorithm to detect
  annotations behind merges
- qgit arguments parsing: switch to use git-rev-parse
- added find function in file viewer
- double click in annotate shows revision
- set Monospace font in file and diff viewer
- added filter on path in main view
- pretty format annotation header
- fixed annotate alignment
- detect also cogito type tags, i.e. tags
  shown with cg-tag-ls

18/6/2005 qgit-0.6
- added files annotate
- added color highlighting to selected diff target
- added color to files: green new file, red removed one
- fixed locale visualizations
- fixed correct git-rev-list range handling
- fixed center on deleted files in diff viewer
- fixed disappearing files when reloading (nasty)
- clean up of diff target logic
- big whitespaces and code style cleanup
- added README

12/6/2005 qgit-0.5
- added CTRL + MOUSE to select diff target
- added diff target selection
- added yellow background on tags
- added alternate background

10/6/2005 qgit-0.4
- command line arguments to git-rev-list:
  try qgit v2.6.12-rc6 ^v2.6.12-rc4
  or  qgit HEAD ^v2.6.12-rc6
- improved signals connection among history,
  diffs and file list, better navigation
- various fixes and clean-ups

2/6/2005
- rewritten initThread to load all the data in one go,
  the speed up is impressive
- Added file history
- various fixes and clean-ups

1/6/2005
- updated to new git-diff-tree format
- various code clean-up
