Skip to content

Latest commit

 

History

History
589 lines (402 loc) · 16.1 KB

CHANGELOG.md

File metadata and controls

589 lines (402 loc) · 16.1 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Changed

  • Translation: update Italian translation (@albanobattistella)

0.9.0 - 2024-01-13

Changed

  • Update from GNOME 44 to 45 (@sabriunal)
  • Flatpak manifest now runs the tests (@sabriunal)
  • Use appstreamcli instead of the deprecated appstream-util to validate appdata (@sabriunal)
  • Update appdata: add translation tag, vcs-browser and translate URLs (@sabriunal)
  • Translation: mark the developer name and release descriptions as untranslatable (@sabriunal)
  • Translation: update Turkish translation (@sabriunal)

Removed

  • Remove support for the SVK CVS (@MightyCreak)

Fixed

  • Fix compatibility with Python 3.12: remove use of distutils (@MightyCreak)
  • Fix new errors raised by Flake8 (@MightyCreak)
  • Fix the error with the CICD due to the use of appstreamcli (@MightyCreak)

0.8.2 - 2023-04-16

Added

  • Add link to the Matrix room in the README (@MightyCreak)
  • Dutch translation (@Vistaus)

Changed

  • Replace _ by - in the action names to be compatible with GTK action names (@MightyCreak)
  • The About dialog is now transient for the main window (@oscfdezdz)
  • Remove deprecated STOCK constants and use more modern, symbolic icons (@oscfdezdz)

Fixed

  • Some signals weren't properly renamed from the previous GTK3 migration (@MightyCreak)
  • The syntax menu wasn't working anymore (@MightyCreak)
  • Properly handles SIGINT (i.e. Ctrl+C) now (@MightyCreak)
  • Add back save_state() to remember window's width and height (@MightyCreak)

0.8.1 - 2023-04-07

Changed

  • Remove log function calls from the stack trace when calling logDebug or logError (@MightyCreak)
  • Log functions used to log only on stderr, now logDebug logs on stdout and logError logs on stderr (@MightyCreak)
  • Change Git default branch from master to main (@MightyCreak)

Fixed

  • Shortcuts were not working since the move to Gtk.Application (issue #188) (@MightyCreak)

0.8.0 - 2023-04-03

Added

  • Language: initial support for Rust language (@alopatindev)
  • Translation: added Turkish translation (@libreajans)
  • Translation: added Georgian translation (@NorwayFun)

Changed

  • Translation: updated Swedish translation (@eson57)
  • Dialog: prompt only once if several files needs to be reloaded (@yuriiz)
  • Use GTK3's Gtk.Application/Gtk.ApplicationWindow (@yuriiz)
  • Split DiffuseApplication and DiffuseWindow classes in their own files (@MightyCreak)
  • Use new Meson (from 0.50 to 0.55) and fixed deprecation warnings (@MightyCreak)
  • Update from GNOME 42 to GNOME 44 (@MightyCreak)
  • Use GitHub Pages to generate the new website (@MightyCreak)
  • Mac: fix the shortcut for first/previous/next/last differences, now uses ⌘ instead of Ctrl (@krlmlr)

Fixed

  • "Go to line..." dialog didn't show up (@MightyCreak)
  • Tech debt: use transient_for instead of the deprecated parent when creating a Gtk.Widget (@MightyCreak)
  • Documentation: prefer pip3 over pip to ensure it works everywhere (@krlmlr)
  • Flatpak: add missing --filesystem=xdg-run/gvfsd privilege (@MightyCreak)

0.7.7 - 2022-10-23

Changed

  • Translation: updated Spanish translation (@oscfdezdz)
  • Translation: updated POT file
  • Translation: fixed issue with commented string that still needs translation

0.7.6 - 2022-10-23

Added

  • Port to Mac OS (@hugoholgersson)

Changed

  • Documentation: added dev setup for MacOS
  • Documentation: updated the dependencies
  • CI/CD: GitHub actions warnings

Fixed

  • Fixed MyPy errors

0.7.5 - 2022-04-15

Added

  • Documentation: added release process instructions
  • Translation: added French translation

Fixed

  • Fixed #156: Preferences cannot be saved in latest release
  • Cleanups: use constructors instead of new() whenever possible in GTK classes

0.7.4 - 2022-04-03

Added

  • Added a --remove-obsolete option for the update-translation.py script
  • Added links to VCSs in README.md
  • New keyword in config file: "option"
  • Added instructions to install and run from a custom directory

Changed

  • Updated the translation files
  • Renamed POTFILES.in to POTFILES
  • Renamed io.github.mightycreak.Diffuse.metadata.xml.in to io.github.mightycreak.Diffuse.appdata.xml.in
  • Leaner README.md
  • Moved the documentation to docs/
  • Renamed application name from "Diffuse Merge Tool" to "Diffuse"
  • Linters can be run sooner (before installation)
  • Better messages when an error occurs while parsing the config file
  • Start converting the code to static types
  • Add more information about the dependencies in the documentation
  • Upgrade Flatpak GNOME's runtime to 42

Fixed

  • Removed the lasting lint errors (i.e. in main.py)
  • Fix Flatpak runtime version in documentation

0.7.3 - 2021-11-22

Added

  • Added linters (flake8 and mypy) and fixed some errors
  • Added lint jobs for both in the CI
  • Added a flatpak job in the CI
  • Created a requirements.dev.txt just for the developers

Changed

  • main.py slimmed down by about 5000 lines
  • The new widgets.py is a bit fat though (~4000 lines)

Fixed

  • The intense code cleaning seems to have fixed a bug with the -c argument (#120)

0.7.2 - 2021-11-18

Added

  • New options: log_print_output and log_print_stack, to print the log messages on the output and code stack
  • New log function: utils.logErrorAndDialog, to both log and show a dialog message

Changed

  • Modularized the VCSs (reducing main.py by around 1300 lines)
  • Bump GNOME runtime version from 3.38 to 41

Fixed

  • Fixed 'APP_NAME' error when opening non existing file
  • Fixed the Portuguese Brazilian (pt_BR) translation

0.7.1 - 2021-11-17

Fixed

  • Fixed #103: the flatpak app can now call binaries on the host, such as git, svn, etc. (PR #105)

0.7.0 - 2021-11-16

Added

  • Added MetaInfo file
  • New SVG icon (thanks @creepertron95, @jimmac and @freddii)
  • Started modularizing the code

Changed

  • Changed AppID to io.github.mightycreak.Diffuse (as explained in Flatpak documentation)
  • Renamed translations/ to po/
  • Now uses POTFILES.in to list the files to translate
  • Translation strings are no longer sorted alphabetically, this will help when there will be several files in POTFILES.in
  • Updated the documentation and script in the po/ directory
  • Add .desktop translations in .po files

Fixed

  • Fixed some GTK deprecation warnings

0.6.0 - 2020-11-29

Added

  • New Flatpak package, published on Flathub: com.github.mightycreak.Diffuse

Changed

  • Replace old install.py with the more standard Meson
  • Remove u string prefixes since Python 3 is in UTF-8 by default
  • Replaced some interpolation operators (%) for the f string prefix
  • Use the window scale factor for the icons generation

0.5.0 - 2020-07-18

Added

  • added Pedro Albuquerque's Portuguese translation
  • added Åke Engelbrektson's Swedish translation
  • added Guillaume Hoffmann's Darcs support improvements
  • added support for Git submodules
  • added Akom Chotiphantawanon's Thai translation
  • added a preference and command line option to specify the version control system search order
  • added .editorconfig file
  • added .gitignore file
  • added message when removing files during uninstallation
  • added Python script to update all the translation files at once

Changed

  • convert to Python 3
  • convert to GTK 3
  • updated Python highlighting for Python 3 grammar
  • updated copyrights years and authors
  • improve Spanish translation
  • convert translation README to MarkDown
  • updated all the translation files

Fixed

  • fixed wrong icons directory for gtk-update-icon-cache
  • fixed missing directories when uninstalling
  • fixed bug introduced by r420 with RCS VCS
  • fixed broken drag'n'drop since migration to Python3/GTK3
  • fixed error when using '-m' in an SVN repo

0.4.8 - 2014-07-18

Added

  • updated use of gtk.SpinButton and gtk.Entry to avoid quirks seen on some platforms
  • updated C/C++ syntax highlighting to recognise C11/C++11 keywords
  • improved image quality of icons
  • added Chi Ming and Wei-Lun Chao's Traditional Chinese translation

Fixed

  • fixed a bug that prevented Diffuse from reviewing large git merge conflicts
  • fixed a bug that prevented drag-and-drop of file paths with non-ASCII characters

0.4.7 - 2013-05-13

Added

  • added Jindřich Šesták's Czech translation
  • improved character editing to allow easy indenting and moving the cursor by whole words
  • added Miś Uszatek's Polish translation
  • improved auto-detection of utf_16 and utf_32
  • added "New N-Way File Merge..." menu item
  • added syntax highlighting for Erlang and OpenCL files

0.4.6 - 2011-11-02

Added

  • added support for Subversion 1.7
  • added "Open Commit..." menu item
  • "-c" option now works for all supported version control systems
  • Git support distinguishes between staged and unstaged files
  • added syntax highlighting for R files

Fixed

  • fixed a bug that caused the wrong revision to be shown when working on a branch in Mercurial

0.4.5 - 2011-07-13

Added

  • added syntax highlighting for JSON files
  • added menu items and keyboard shortcuts for "First Tab" and "Last Tab"
  • added "--line" command line option
  • Diffuse now uses a patience diff-based algorithm to align lines
  • added command line option to specify a label to display instead of the file name
  • added preference to display the right margin
  • added Cristian Marchi's Italian translation

Changed

  • state information is now stored in ~/.local/share/diffuse

Fixed

  • fixed a bug in CVS and Subversion support that prevented Diffuse from displaying some removed files
  • fixed a bug that caused deleted files to be ignored when using the '-m' option
  • fixed a bug that incorrectly encoded pasted text if utf_8 was not specified in the Region Settings preferences
  • fixed a bug that could cause "Save As..." to fail with some user specified encodings

0.4.4 - 2010-10-21

Added

  • Git support now recognises conflicts when re-applying the stash
  • search dialog is now automatically populated with the currently selected text
  • added Oleg Pakhtusov's Russian translation
  • added Kang Bundo's Korean translation
  • pane headers tooltips
  • Shift-ScrollWheel can now be used to scroll horizontally

Fixed

  • double clicking on text can now select full words with non-English characters
  • fixed a bug that prevented opening files with non-ASCII characters in their path

0.4.3 - 2010-04-15

Fixed

  • fixed a bug that prevented the "-m" option from opening a 3-way merge for Subversion and Bazaar conflicts

0.4.2 - 2010-04-13

Added

  • support for detached Git repositories
  • better removal of unnecessary spacer lines
  • added support for horizontal mouse scrolling
  • renamed some resources to more user friendly names
  • RCS support
  • added Henri Menke's Spanish translation
  • "#!" interpreter lines are now used to select proper highlighting rules

Changed

  • syntax highlighting is now indicated by radio menu items

0.4.1 - 2009-10-12

Added

  • added Japanese translation
  • added Liu Hao's simplified Chinese translation
  • added a 'Dismiss All Edits' menu item
  • localised manuals are now supported on Windows
  • new command line option for specifying blank file comparison panes
  • new preference to enable/disable line numbers
  • added "Undo Close Tab" menu item
  • added new menu items and buttons for copying lines between panes

Changed

  • personal configuration files are now stored in ~/.config/diffuse/ (the README file describes how to migrate old settings)
  • Diffuse now quits if no viewers were created with the -m option
  • replaced "Closing last tab quits Diffuse" preference with a "Warn me when closing a tab will quit Diffuse" preference
  • MMB on a notebook tab now closes the tab
  • RMB on a notebook tab creates a popup menu to set the current page
  • changed the default hotkeys for merging to reflect the direction text "moves"

0.4.0 - 2009-08-17

Added

  • added format menu with new items for changing case, sorting, and manipulating white space
  • optimised redraws when only the cursor position has changed
  • input methods that use pre-editing can now be used when editing text
  • dead keys can now be used when editing text
  • updated Monotone support to use 'mtn automate inventory'
  • Git support now handles files flagged as 'unmerged'
  • added version control section to the manual

Changed

  • replaced 'Hide end of line characters' preference with 'Show white space characters'
  • errors are now reported in a dialogue instead of printing to stderr

Fixed

  • graceful handling of non-zero exit codes from 'git status'
  • minor bug fixes

0.3.4 - 2009-07-03

Added

  • syntax highlighting for .plist, GLSL, SConscript, and SConstruct files
  • status bar now explains how to navigate between modes
  • added labels to indicate syntax highlighting rules, encoding, and format
  • Subversion 1.6 support
  • added Henri Menke's German translation
  • added '--examplesdir=' and '--mandir=' options to install.py
  • renamed the '--python-interpreter=' installer option to '--pythonbin='

Fixed

  • minor bug fixes

0.3.3 - 2009-04-13

Fixed

  • fixed a bug handling the backspace key with the cursor in the first column

0.3.2 - 2009-04-13

Added

  • POSIX installer with --destdir= and --files-only options for packagers
  • vi-like keybindings for line mode
  • -m option to open modified files in separate tabs
  • 'Merge From Left Then Right' and 'Merge From Right Then Left' menu items
  • drag-n-drop support
  • preferences for behaviour of tabs
  • files with edits now tagged with '*'
  • auto indent
  • 'Open File In New Tab...' and 'Open Modified Files...' menu items
  • 'Save All' menu item
  • mac-style line ending support

Changed

  • new end of line display behaviour
  • improved organisation of menu items
  • errors are now reported on stderr

Fixed

  • button bar no longer grabs keyboard focus
  • minor bug fixes

Removed

  • removed dependence on urllib module
  • removed TODO list

0.3.1 - 2009-03-05

Fixed

  • fixed a typo that broke the 'Find...' dialogue

0.3.0 - 2009-03-03

Added

  • new Windows installer
  • notification on focus change when files change on disk
  • menu items for adjusting indentation
  • syntax highlighting for Objective-C++
  • -c option now works with CVS-style revision numbers
  • window title now describes current tab
  • search settings now persist across sessions

Fixed

  • minor bug fixes

0.2.15 - 2008-12-03

Added

  • smoother scrolling
  • panes and tabs can now be manually re-organised
  • preferences for tab key behaviour
  • 'go to line' menu item
  • '-c' option for viewing the changes of a particular commit
  • home/end keys can now be used in line mode
  • confirmation requested before overriding changed files
  • position of window now saved
  • syntax files for more file types
  • reading /etc/diffuserc now optional when using a personal configuration file

Fixed

  • minor bug fixes

0.2.14 - 2008-10-20

Added

  • svk support
  • syntax files for more file types
  • DOS / Unix line endings now respected in edit operations
  • improved difference map
  • more robust launching of help browsers
  • man page
  • command line display options
  • file revisions can now be specified in the open file dialogue

Changed

  • moved some resources to the preferences dialogue

Fixed

  • minor bug fixes

0.2.13 - 2008-05-16

Added

  • bazaar, darcs, and monotone support
  • configurable key bindings
  • persistent preference settings
  • optimisations

Fixed

  • minor bug fixes

0.2.12 - 2008-05-06

Added

  • alternate codecs for reading and writing files
  • more search options
  • editor support for primary selection

Fixed

  • minor bug fixes

0.2.11 - 2008-04-27

Added

  • cvs, subversion, git, mercurial support
  • python re-write
  • syntax highlighting
  • search and replace
  • customisable through configuration files
  • tabbed viewer panes

0.1.14 - 2006-01-28

Added

  • initial public release