584 lines
16 KiB
Markdown
584 lines
16 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## Unreleased
|
|
|
|
### 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](https://github.com/MightyCreak/diffuse/issues/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](https://docs.flatpak.org/en/latest/conventions.html#application-ids))
|
|
- 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
|