KeePass Professional 2.35:

- New KDBX 4 file format, which supports various new features (listed below; e.g. Argon2).
- Added Argon2 key derivation function (it can be activated in the database settings dialog).
- Improved header and data authentication in KDBX 4 files (using HMAC-SHA-256, Encrypt-then-MAC scheme).
- Added ChaCha20 (RFC 7539) encryption algorithm (it can be activated as KDBX file encryption algorithm in the database settings dialog; furthermore, it supersedes Salsa20 as default for generating the inner random stream of KDBX 4 files).
- Added support for opening entry URLs with Firefox or Opera in private mode via the context menu -> 'URL(s)' -> 'Open with ... (Private)'.
- Added URL override suggestions for Firefox and Opera in private mode in the URL override suggestions drop-down list in the entry dialog.
- Added optional built-in global URL overrides for opening HTTP/HTTPS URLs with Firefox or Opera in private mode.
- Added {PICKFIELD} placeholder, which shows a dialog to pick a field whose value will be inserted.
- Added option 'Hide "Close Database" toolbar button when at most one database is opened' (turned on by default).
- Added option 'Show additional auto-type menu commands', which can be turned on to show menu commands for performing entry auto-type with some specific sequences.
- Added menu command 'Selected Entry's Group' (with keyboard shortcut Ctrl+G) in 'Edit' -> 'Show Entries' (and a context menu equivalent 'Show Parent Group' in 'Selected Entries'), which opens the parent group of the currently selected entry and selects the entry again.
- Added menu commands in 'Edit' -> 'Show Entries' to show entries that expire in a specific number of days (1, 2, 3) or weeks (1, 2, 4, 8) or in the future.
- Added configuration option that specifies the number of days within which entries are considered to expire 'soon' (the default is 7).
- Added option for changing the alternate item background color.
- When the option 'Remember key sources' is enabled, KeePass now also remembers whether a master password has been used.
- Added option 'Force changing the master key the next time (once)' (in 'File' -> 'Database Settings' -> tab 'Advanced').
- Added parameters 'Window style' and 'Verb' for the 'Execute command line / URL' trigger action.
- Added support for importing mSecure 3.5.5 CSV files.
- Added support for importing Password Saver 4.1.2 XML files.
- Added support for importing Enpass 5.3.0.1 TXT files.
- Enhanced SplashID CSV import (added support for the old version 3.4, added mappings for types of the latest version, groups are now created only for categories, and types are imported as tags).
- LastPass import: added support for CSV files exported by the LastPass Chrome extension, which encodes some special characters as XML entities.
- Added 'KeePass KDBX (2.34, Old Format)' export module.
- Export using XSL transformation: added support for the 'xsl:output' element in XSL files.
If the global auto-type hot key is Ctrl+Alt+A and the current input locale is Polish, KeePass now shows a warning dialog (telling the user that Ctrl+Alt+A is in conflict with a system key combination producing a character).
- Added Alt+X Unicode character conversion support in rich text boxes on Unix-like systems.
- For development snapshots, the 'About' dialog now shows the snapshot version (in the form 'YYMMDD').
- Plugins can provide other key derivation functions now.
- The header of KDBX 4 files is extensible by plugins.
- Enhanced support for developing encryption algorithm plugins.
- Plugins can now store custom data in groups and entries.
- Plugin data stored in the database, a group or an entry can now be inspected (and deleted) in the database maintenance dialog, the group dialog and the entry dialog, respectively.
- For plugins: file closing events now contain information about whether KeePass is exiting, locking or performing a trigger action.
- Added workaround for .NET handle cast overflow bug in InputLanguage.Culture.
- Added workaround for Mono ignoring the Ctrl+I shortcut.
- Added workaround for Mono clipboard bug.
- Added workaround for Mono not focusing the default control in the entry editing dialog.
- Added workaround for a Mono timer bug that caused high CPU load while showing a file save confirmation dialog.
- Added Mono workaround: when running on Mac OS X, KeePass now does not try to instantiate a tray icon anymore.
- Added workaround for XDoTool sending diacritic characters in incorrect case.
- TrlUtil now recommends to clear the 'Unused Text' tab.
- Improved behavior when searching entries with exclusions (terms prefixed with '-').
- Improved support for auto-typing into target windows using different keyboard layouts.
- Auto-Type: improved support for keyboard layouts with keys where Shift, Caps Lock and no modifier result in 3 different characters.
- Auto-Type: improved support for spacing modifier letters (U+02B0 to U+02FF).
- Global auto-type now works with target windows having empty titles.
- When copying entries to the clipboard, the data package now includes custom icons used by the entries.
- Unified behavior when drag&dropping a field containing a placeholder.
- Improved entry edit confirmation dialog.
- If the screen height is insufficient to display a dialog, the dialog's banner (if the dialog has one) is now removed to save some space.
- Some tooltips are now displayed for a longer time.
-A new entry created using a template now does not include the history of the template anymore.
- For empty RTF attachments, the internal data editor now by default uses the font that is specified for TXT files.
- Internal data editor: added support for changing the format of mixed-format selections.
- Internal data viewer and editor: null characters ('', not '0') in texts are now automatically replaced by spaces (like Notepad on Windows 10).
- Improved encoding signature handling for conversions during text attachment imports (via the 'Text Encoding' dialog).
- File transactions are not used anymore for files that have a reparse point (e.g. symbolic links).
- Improved XSL stylesheets for KDBX XML files.
- The internal window manager is now thread-safe.
- Improved date/time handling.
- Improved button image disposal.
- When synchronizing two databases, custom data (by plugins) is now merged.
- When opening a database file, corrupted icon indices are now automatically replaced by default values.
- Added some more entropy sources for the seed of the cryptographically secure pseudo-random number generator (environment variables, command line, full operating system version, current culture).
- ChaCha20 is now used during password generation (instead of Salsa20).
- ChaCha20 is now used as fallback process memory encryption algorithm (instead of Salsa20).
- When the encryption algorithm for a database file is unknown, the error message now shows the UUID of the algorithm.
- In KDBX 4, header field lengths are now 4 bytes wide.
- In KDBX 4, entry attachments are now stored in an inner, binary header (encrypted, possibly compressed), before the XML part; this reduces the database file size and improves the loading/saving performance.
- In KDBX 4, the inner random stream cipher ID and key (to support process memory protection) are now stored in the inner header instead of in the outer header.
- KPScript: the 'ChangeMasterKey' command now also updates the master key change date.
- TrlUtil: improved validation warning dialogs.
- The MSI file now requires any .NET Framework version, not a specific one.
- The MSI file is now built using Visual Studio 2015.
- Various code optimizations.
- Minor other improvements.
- When executing a {HMACOTP} placeholder, the last modification time of the corresponding entry is now updated.
- Key files containing exactly 64 alphanumeric characters are now loaded as intended.
 

KeePass 2.34:

- The version information file is now digitally signed (using RSA-4096 / SHA-512); furthermore, it is downloaded over HTTPS.
- Added option 'Lock workspace when minimizing main window to tray'.
- Added option 'Esc minimizes to tray instead of locking the workspace'.
- Added Ctrl+Q shortcut for closing KeePass (as alternative to Alt+F4).
- Added UIFlags bit for disabling the 'Check for Updates' menu item.
- The installers (regular and MSI) now create an empty 'Plugins' folder in the application directory, and the portable package now also contains such a folder.
- Plugins: added support for digitally signed version information files.
- Plugins are now loaded only directly from the application directory and from any subdirectory of the 'Plugins' folder in the application directory.
- Improved startup performance (by filtering plugin candidates).
- When closing a database, KeePass now searches and deletes any temporary files that may have been created and forgotten by MSHTML when printing failed.
- CHM help file: improved high DPI support.
- Various code optimizations.
- Minor other improvements.

KeePass 2.33:

- Added commands in the group context menu (under 'Rearrange'): 'Expand Recursively' and 'Collapse Recursively'.
- Added option 'When selecting an entry, automatically select its parent group, too' (turned on by default).
- Added placeholders for data of the group that is currently selected in the main window: {GROUP_SEL}, {GROUP_SEL_PATH} and {GROUP_SEL_NOTES}.
- While importing/synchronizing, indeterminate progress is now displayed on the taskbar button (on Windows 7 and higher).
- Added optional parameters 'Filter - Group' and 'Filter - Tag' for the 'Export active database' trigger action.
- Pressing the Escape key in the main window now locks the workspace (independent of the current database locking state, in contrast to Ctrl+L).
- Added option 'Extra-safe file transactions' in 'Tools' -> 'Options' -> tab 'Advanced'.
- Added customization option to specify how often the master key dialog appears when entering incorrect master keys.
- Plugins: added event 'FormLoadPost' for the main window.
- KPScript: the 'GetEntryString' command now supports the '-Spr' option, which causes KPScript to Spr-compile the field value (i.e. placeholders are replaced, field references are resolved, environment variables are inserted, etc.).
- Improved database synchronization performance.
- Improved object reordering during a database synchronization for new and relocated groups/entries.
- Improved synchronization of deleted objects information.
- Improved database synchronization to prevent implicit object deletions.
- HTML export/printing: the notes column now is twice as wide as the other columns.
- When entering a Spr-variant password in the entry dialog, the quality estimation is now disabled.
- Group tooltips are now displayed for about 30 seconds.
- The root group is now always expanded when opening a database.
- Improved private mode browser detection.
- Improved DPI awareness declaration (on Windows 10 and higher).
- Improved regular expression searching performance in usual use cases.
- Improved natural string comparison performance (on Unix-like systems).
- Improved mnemonic characters in the 'Rearrange' menus.
- Upgraded installer.
- Various UI text improvements.
- Various code optimizations.
- Minor other improvements.

KeePass 2.32:

- The quick search box (in the toolbar of the main window) now supports searching using a regular expression.
- Added 'Advanced' tab in the 'Open From URL' dialog (easily extensible by plugins).
- Added per-user Start Menu Internet Application detection.
- When selecting an entry in the main entry list, its parent group is now selected automatically in the group tree view.
- Auto-Type matching: added option 'Expired entries can match' (turned off by default, i.e. expired entries are ignored).
- Added option 'Always show global auto-type entry selection dialog' (to show the dialog even when no or one entry is found for the currently active target window; turned off by default).
- Added {GROUP_NOTES} placeholder.
- Added support for importing nPassword 1.0.2.41 NPW files.
- In triggers and KPScript, an import/export module can now be specified both using its display name and its format name.
- When running under .NET 4.5 or higher, secure connections (e.g. for WebDAV) now support TLS 1.1 and TLS 1.2 (in addition to SSL 3 and TLS 1.0).
- Added Mono workaround: when running on the Unity or Pantheon desktop, KeePass now does not try to instantiate a tray icon anymore; if you want a tray icon on Unity/Pantheon, use the application indicator plugin.
- Added workaround for Mono not implementing the property SystemInformation.SmallIconSize for Mac OS X systems.
- Added command line parameter '-wa-disable:' for disabling specific Mono workarounds (IDs separated by commas).
- KPScript: if the value of a '-ref-*:' parameter is enclosed in '//', it is now treated as a regular expression, which must occur in the entry field for an entry to match.
- KPScript: .NET 4.0/4.5 is now preferred, if installed.
- KPScript: enhanced high DPI support.
- Auto-Type: improved compatibility with target windows that handle activation slowly and ignore any input until being ready (like Microsoft Edge).
- Auto-Type: improved sending of characters that are typically realized with the AltGr key.
- When editing a custom entry string, the value text box now has the initial focus.
- Improved image/icon shrinking.
- Improved icon recoloring on high DPI resolutions.
- Changed some ICO files such that higher resolution images are used.
- Changed some PNG files to workaround the image DPI scaling behavior on Windows XP.
- Improved new-line filtering in the main entry view.
- When trying to use the Windows user account as part of a composite master key fails, a more detailed error message is displayed now.
- The 'About' dialog now indicates whether the current build is a development snapshot.
- Changed code signing certificate.
- Upgraded installer.
- Various code optimizations.
- Minor other improvements.
- Bugfixes: After an incomplete drag&drop operation over the group tree view, the previous group selection is now restored.

KeePass 2.31:

- Added menu/toolbar styles, freely selectable in 'Tools' -> 'Options' -> tab 'Interface'; available styles are 'Windows 10', 'Windows 8.1', 'KeePass - Gradient', '.NET/Office - Professional' and 'System - Classic'; by default KeePass uses the style most similar to the one of the current operating system.
- Refined application icons (thanks to Victor Andreyenkov).
- Auto-Type: new target window classification method, which improves compatibility with target windows hosted within other windows (e.g. a PuTTY window within SuperPuTTY/MTPuTTY).
- Auto-Type: added workaround for the default Ctrl+Alt behavior of KiTTY variants (which differs from Windows' behavior).
- Before clearing the clipboard, KeePass now first copies a non-sensitive text into it; this ensures that no sensitive information remains in the clipboard even when clearing is prevented by the environment (e.g. when running in a virtual machine, when using a clipboard extension utility, ...).
- Added support for opening entry URLs with Internet Explorer or Google Chrome in private mode via the context menu -> 'URL(s)' -> 'Open with ... (Private)'.
- Added URL override suggestions for Internet Explorer and Google Chrome in private mode in the URL override suggestions drop-down list in the entry dialog.
- Added optional built-in global URL overrides for opening HTTP/HTTPS URLs with Internet Explorer or Google Chrome in private mode.
- Added Ctrl+K shortcut for the 'Duplicate Entry' command.
- Mozilla Bookmarks HTML import: added support for importing tags.
- Added support for exporting to Mozilla Bookmarks HTML files.
- Windows/IE favorites export: entry fields are Spr-compiled now, and entries with cmd:// URLs are now exported as LNK files.
- HTML export/printing: added support for UUIDs, added horizontal lines between entries in details mode, added background color for group headings, long field names are hyphenated now, and long field data now breaks and wraps onto the next line.
- Plugins: added possibility to configure file transactions for each URI scheme.
- Plugins: added possibility to provide custom 'Save As' dialogs more easily.
- Converted some PNG images as a workaround for a problem in Cairo/LibPNG on Unix-like systems.
- As a workaround for a weakness in Mono's FileDialog, before showing such a dialog on Unix-like systems KeePass now tries to load the file '~/.recently-used' and deletes it, if it is not a valid XML file.
- KPScript: added support for specifying the master password in encrypted form using the '-pw-enc:' command line parameter (exactly like in KeePass, compatible with the {PASSWORD_ENC} placeholder).
- KPScript: the 'Export' command now supports the optional '-GroupPath:' parameter (to export a specific group instead of the whole database).
- KPScript: the 'GetEntryString' command now supports the '-FailIfNoEntry' option.
- KPScript: added '-refx-Expires' and '-refx-Expired' entry identification parameters.
- KPScript: the 'Import' command now prints more specific error messages.
- All KeePass program binaries are now dual signed using SHA-1 and SHA-256.
- Auto-Type: improved keyboard layout handling when the target window changes during an auto-type process.
- Auto-Type: improved compatibility with Remote Desktop Connection client and VirtualBox.
- Improved icon recoloring.
- Improved printing of dates/times and tags.
- The password generator based on a character set now ensures that the generated password is Spr-invariant.
- Password generator based on a pattern or a custom algorithm: when a Spr-variant password is generated, a confirmation dialog for accepting this password is displayed.
- If the 'Save Database' policy prevents saving, the auto-save option is now ignored.
- Improved .NET Framework version detection.
- PLGX debugging: when the command line option '-debug' is passed and a PLGX plugin fails to compile, the output of all tried compilers is saved to a temporary file.
- Improved file transaction creation time handling on Unix-like systems.
- Improved compatibility with Mono on BSD systems.
- Enhanced PrepMonoDev.sh script for compatibility with Mono 4.x.
- Removed KeePassLibSD sub-project (a KeePass library for Pocket PC / Windows Mobile) from the main solution.
- Upgraded installer.
- Various code optimizations.
- Minor other improvements.
- When running under Mono (Linux, Mac OS X, ...), two options related to window minimization are disabled now (because they do not work properly due to a Mono bug).

KeePass 2.30:

- When opening a database via an URL fails, the error message dialog now has a button 'Specify different server credentials' (on Windows Vista and higher).
- Added support for opening entry URLs with Microsoft Edge via the context menu -> 'URL(s)' -> 'Open with Edge'.
- Added URL override suggestion for Microsoft Edge in the URL override suggestions drop-down list in the entry dialog.
- Added optional built-in global URL overrides for opening HTTP/HTTPS URLs with Microsoft Edge.
- When clicking on a group link in the entry view, KeePass now ensures that the group is visible in the group tree.
- The main window is now moved onto the primary screen when it is restored outside all screens.
- KDBX loader: added support for non-empty protected binary value reference elements.
- Plugins: added two auto-type sequence query events.
- Added workaround for Mono drawing bug when scrolling a rich text box.
- When running under Mono, some automatic locking options are now disabled.
- The installer now prevents running the installer while it is already running.
- KPScript: added '-GroupPath:' parameter (for specifying the full path of a group).
- KPScript: the 'MoveEntry' command now also supports the '-GroupName:' parameter (as alternative to '-GroupPath:').
- KPScript: added support for specifying the path of an XSL stylesheet file using the command line parameter '-XslFile:'.
- KPScript: the 'ListGroups' command now also outputs the parent group UUID for each group.
- KPScript: the parameters for specifying new field data (for the 'AddEntry' and the 'EditEntry' command) now support escape sequences (e.g. 'n' is replaced by a new-line character).
 - Many other additions, changes and corrections.

KeePass 2.30:

- When opening a database via an URL fails, the error message dialog now has a button 'Specify different server credentials' (on Windows Vista and higher).
- Added support for opening entry URLs with Microsoft Edge via the context menu -> 'URL(s)' -> 'Open with Edge'.
- Added URL override suggestion for Microsoft Edge in the URL override suggestions drop-down list in the entry dialog.
- Added optional built-in global URL overrides for opening HTTP/HTTPS URLs with Microsoft Edge.
- When clicking on a group link in the entry view, KeePass now ensures that the group is visible in the group tree.
- The main window is now moved onto the primary screen when it is restored outside all screens.
- KDBX loader: added support for non-empty protected binary value reference elements.
- Plugins: added two auto-type sequence query events.
- Added workaround for Mono drawing bug when scrolling a rich text box.
- When running under Mono, some automatic locking options are now disabled.
- The installer now prevents running the installer while it is already running.
- KPScript: added '-GroupPath:' parameter (for specifying the full path of a group).
- KPScript: the 'MoveEntry' command now also supports the '-GroupName:' parameter (as alternative to '-GroupPath:').
- KPScript: added support for specifying the path of an XSL stylesheet file using the command line parameter '-XslFile:'.
- KPScript: the 'ListGroups' command now also outputs the parent group UUID for each group.
- KPScript: the parameters for specifying new field data (for the 'AddEntry' and the 'EditEntry' command) now support escape sequences (e.g. 'n' is replaced by a new-line character).
 - Many other additions, changes and corrections.

KeePass 2.29:

- Added high resolution icons.
- Added support for high resolution custom icons.
- Added option in the proxy configuration dialog to use the user's default credentials (provided by the system).
- {FIREFOX} placeholder: if no regular Firefox is installed, KeePass now looks for Firefox ESR.
- {PICKCHARS} placeholder: the Conv-Fmt option now supports all combinations of '0', 'A', 'a' and '?'; '?' skips a combobox item.
- Added {BEEP X Y} auto-type command (where X is the frequency in hertz and Y the duration in milliseconds).
- Added optional 'Attachments (Count)' entry list column.
- Added Ctrl+Insert shortcut as alternative for Ctrl+C in the entry list of the main window.
- Added shortcut keys for 'Copy Entries' (Ctrl+Shift+C) and 'Paste Entries' (Ctrl+Shift+V).
- Added some access keys in various dialogs.
- In the field reference dialog, the field in which the reference will be inserted is now selected as source field by default.
- Added UUID uniqueness check.
- Added support for importing Passphrase Keeper 2.60 HTML files (in addition to the already supported 2.50 and 2.70 formats).
- The path of the local configuration file can now be changed using the '-cfg-local:' command line parameter.
- Plugins can now access the KeePass resources (images, icons, etc.) through the IPluginHost interface.
- Added a few workarounds for external window manipulations before the main window has been fully constructed.
- Added workaround for .NET gradient drawing bug; 'Blue Carbon' dialog banners are now drawn correctly on high DPI.
- Added workaround for Mono file version information block generation bug.
- KPScript: added 'EstimateQuality' command (to estimate the quality of a specified password).
- All KeePass program binaries are now digitally signed.
- In the master key creation dialog, the 'Create' and 'Browse' buttons are now disabled when a key provider is selected.
- Changed behavior of the 'Use system proxy settings' option (KeePass now directly gets the system proxy settings, not the .NET default proxy settings).
- Improved focus restoration after closing the character picking dialog.
- Removed 'O' and 'C' access keys from 'OK' and 'Cancel' buttons (instead, press Enter for 'OK' and Esc for 'Cancel').
- Improved remembering of splitter positions.
- Improved assignments of check mark images to menu items.
- Improved behavior when synchronizing a local EFS-encrypted database file with a local database file.
-  Unix-like systems, hot key boxes now show 'External' instead of 'None'.
- Various code optimizations.
- Minor other improvements.
- Fixed bugs.

KeePass 2.28:

- Enhanced high DPI support.
- Added trigger action 'Show message box' (which can abort the current trigger execution or execute a command line / URL).
- The 'Database has unsaved changes' trigger condition now supports choosing between the active database and the database that triggered the event.
- Added parameter for the trigger action 'Activate database (select tab)' that allows activating the database that triggered the event.
- Auto-Type: added workaround for KiTTY's default Ctrl+Alt behavior (which differs from Windows' behavior).
- Auto-Type: added workaround for PuTTYjp's default Ctrl+Alt behavior (which differs from Windows' behavior).
- Added up/down arrow buttons for reordering auto-type associations in the entry editing dialog.
- While entering the master key on a secure desktop, dimmed screenshots are now also displayed on all non-primary screens.
- Added support for importing VisKeeper 3.3.0 TXT files.
- The group tree view is now saved and restored during most group tree updates.
- In the main entry list, multiple entries can now be moved by one step up/down at once.
- If Caps Lock is on, a balloon tip indicating this is now also displayed for password text boxes immediately after opening a dialog (where the password text box is the initially focused control).
- In the cases where Windows would display outdated thumbnail and peek preview images for the main window, KeePass now requests Windows to use a static bitmap instead (showing only the KeePass logo).
- Added fallback method for parsing dates/times (the default parser fails for some custom formats specified in the Control Panel).
- Added workaround for .NET ToolStrip height bug.
- Added own process memory protection for Unix-like systems (as Mono doesn't provide any effective memory protection method).
- On Unix-like systems, Shift+F10 (and Ctrl+Alt+5 and Ctrl+NumPad5 on Mac OS X) now shows the context menu in most list/tree view controls and rich text boxes (like on Windows).
- KPScript: for the 'Import' command, a different master key can now be specified using the standard master key command line parameters with the prefix 'imp_' (e.g. -imp_pw:Secret).
- KPScript: added option '-FailIfNotExists' for the 'GetEntryString' command.
- KPScript: added '-refx-Group' and '-refx-GroupPath' entry identification parameters.
- Improved compatibility with ClearType.
- Improved support for high contrast themes.
- When duplicating a group/entry, the creation time and the last access time of the copy are now set to the current time.
- Character picker dialog: initially the text box is now focused, improved tab order, and picked characters are now inserted at the current insertion point (instead of the end).
- Ctrl+Tab is now handled only once when the database tab bar has the focus.
- When exporting to a KeePass 1.x KDB file, a warning/error is now shown if the master key contains/is a Windows User Account.
- Unknown trigger events/conditions/actions are now ignored by the trigger dialog.
- Reduced group tree view flickering.
- Improved default value for the entry history size limit.
- Improved menu check mark and radio images.
- Improved list view column resizing.
- Improved list view scrolling.
- Secure edit control performance improvements.
- In some cases, double-clicking the tray icon now brings KeePass to the foreground.
- Improved concurrent UI behavior during auto-type.
- Auto-Type: improved compatibility with keyboard layouts with combining apostrophes, quotation marks and tildes.
- Auto-Type: improved virtual key translation on Unix-like systems.
- KPScript: the 'EditEntry' command now also updates the time fields of all affected entries.
- KPScript: the 'DeleteEntry' and 'DeleteAllEntries' commands now create deleted object information (improving synchronization behavior).
- Upgraded installer.
- Various code optimizations.
- Minor other improvements.
- Fixed bugs.

KeePass 2.27:

- The estimated password quality (in bits) is now displayed on the quality progress bar, and right of the quality progress bar the length of the password is displayed.
- Auto-Type: before sending a character using a key combination involving at least two modifiers, KeePass now first tests whether this key combination is a registered system-wide hot key, and, if so, tries to send the character as a Unicode packet instead.
- Auto-Type: added workaround for Cygwin's default Ctrl+Alt behavior (which differs from Windows' behavior).
- Auto-Type: added {APPACTIVATE ...} command.
- {HMACOTP} placeholder: added support for specifying the shared secret using the entry strings 'HmacOtp-Secret-Hex' (secret as hex string), 'HmacOtp-Secret-Base32' (secret as Base32 string) and 'HmacOtp-Secret-Base64' (secret as Base64 string).
- {T-CONV:...} placeholder: added 'Uri-Dec' type (for converting the string to its URI-unescaped representation).
- Added placeholders: {URL:USERINFO}, {URL:USERNAME} and {URL:PASSWORD}.
- Added placeholders: {BASE}, {BASE:RMVSCM}, {BASE:SCM}, {BASE:HOST}, {BASE:PORT}, {BASE:PATH}, {BASE:QUERY}, {BASE:USERINFO}, {BASE:USERNAME}, {BASE:PASSWORD} (within an URL override, each of these placeholders is replaced by the specified part of the string that is being overridden).
- Added {NEWPASSWORD:/Profile/} placeholder, which generates a new password for the current entry using the specified password generator profile.
- Pattern-based password generator: the '^' character now removes the next character from the current custom character set (for example, [a^y] contains all lower-case alphanumeric characters except 'y').
- Enhanced syntax highlighting in the sequence field of the 'Edit Auto-Type Item' dialog.
- Added option 'Do not ask whether to synchronize or overwrite; force synchronization'.
- Added synchronization support for the group behavior properties 'Auto-Type for entries in this group' and 'Searching entries in this group'.
- Root group properties are now synchronized based on the last modification time.
- While saving a database, a shutdown block reason is now specified.
- Added 'Move to Group' menu in the 'Selected Entries' popup of the main entry list context menu.
- Items of dynamic menus (tags, strings, attachments, password generator profiles, ...) now have auto-assigned accelerator keys.
- As alternative to Ctrl+F, pressing F3 in the main window now displays the 'Find' dialog.
- Added UIFlags bit for hiding password quality progress bars and information labels.
- Enhanced system font detection on Unix-like systems.
- When using 'xsel' for clipboard operations on Unix-like systems, text is now copied into both the primary selection and the clipboard.
- Added '--version' command line option (for Unix-like systems).
- Plugins can now subscribe to an IPC event that is raised when running KeePass with the '-e:' command line parameter.
- Added workaround for .NET AutoWordSelection bug.
- Added workaround for Mono bug 10163; saving files using WebDAV now also works under Mono 2.11 and higher.
- Added workaround for Mono image tabs bug.
- Added workaround for Mono NumericUpDown drawing bug.
- Merged the URL scheme overrides and the 'Override all URLs' option into a new dialog 'URL Overrides'.
- Improved autocompletion of IO connection parameters using the MRU list (now treating the user name as filter).
- Improved interaction of IO connection trigger parameters and the MRU list.
- The master key prompt dialog now validates key files only when clicking [OK], and invalid ones are not removed automatically from the list anymore.
- Improved support for managing columns leftover from uninstalled plugins in the 'Configure Columns' dialog.
- If the 'Unhide Passwords' policy is turned off, the passwords column in the auto-type entry selection dialog is now unavailable.
- The entry list in the main window is now updated immediately after performing auto-type or copying data to the clipboard.
- Various list view performance improvements.
- The 'Searching entries in this group' group behavior properties are now ignored during resolving field references.
- Improved behavior in case of syntax errors in placeholders with parameters.
- Two-channel auto-type obfuscation: improved realization of clipboard paste commands.
- General main window keyboard shortcuts now also work within the quick search box and the database tab bar.
- Pressing Ctrl+Shift+Tab in the main window now always selects the previous database tab (independent of which control has the focus).
- Changed shortcut keys for moving entries/groups on Unix-like systems, due to Mono's incorrect handling of Alt (preventing key events) and navigation keys (selection updated at the wrong time).
- Auto-Type: improved modifier key releasing on Unix-like systems.
- Various code optimizations.
- Minor other improvements.
- Fixed bugs.

KeePass 2.26:

- Added option to show a confirmation dialog when moving entries/groups to the recycle bin.
- Auto-Type: added workaround for applications with broken time-dependent message processing.
- Auto-Type: added workaround for PuTTY's default Ctrl+Alt behavior (which differs from Windows' behavior).
- Auto-Type: added configuration option to specify the default delay between two keypresses.
- Added optional sequence comments column in the auto-type entry selection dialog (in this column, only {C:...} comments in the sequence are displayed; if a comment starts with '!', only this comment is shown).
- If the option 'Automatically search key files' is activated, all drives are now scanned in parallel and any key files are added asynchronously (this avoids issues caused by slow network drives).
- Added trigger action 'Show entries by tag'.
- {OPERA} placeholder: updated detection code to also support the latest versions of Opera.
- {T-CONV:...} placeholder: added 'Uri' type (for converting the string to its URI-escaped representation).
- Synchronization functions are now available for remote databases, too.
- Enhanced RoboForm importer to additionally support the new file format.
- Summary lists are now also available in delete confirmation dialogs on Unix-like systems and Windows XP and earlier.
- Added workaround for Mono Process StdIn BOM bug.
- KPScript: added 'refx-All' option (matches all entries).
- KPScript: added optional parameters 'setx-Expires' and 'setx-ExpiryTime' for the 'EditEntry' command.

KeePass 2.25:

- New auto-type key sending engine (improved support for sending Unicode characters and for sending keypresses into virtual machine/emulator windows; now largely compatible with the Neo keyboard layout; sequence parsing is faster, more flexible and optimizes the sequence; improved behavior for invalid sequences; differential delays, making the auto-type process less susceptible to externally caused delays; automatic cancelling is now more precise up to at most one keypress and also works on Unix-like systems; improved message processing during auto-type).
- When trying to open an entry attachment that the built-in editor/viewer cannot handle, KeePass now extracts the attachment to a (EFS-encrypted) temporary file and opens it using the default application associated with this file; afterwards the user can choose between importing/discarding changes and KeePass deletes the temporary file securely.
- On Windows Vista and higher, the button in the entry editing dialog to open attachments is now a split button; the drop-down menu allows to choose between the built-in viewer, the built-in editor and an external application.
- Added 'XML Replace' functionality.
- Generic CSV importer: added option to merge imported groups with groups already existing in the database.
- Added support for importing Dashlane 2.3.2 CSV files.
- On Windows 8 and higher, some running Metro apps are now listed in the 'Edit Auto-Type Item' dialog.
- Added {T-CONV:/T/C/} placeholder (to convert text to upper-case, lower-case, or its UTF-8 representation to Base64 or Hex).
- Added {SPACE} special key code (as alternative for the ' ' character, for improved readability of auto-type sequences).
- XML merge (used e.g. when an enforced configuration file is present): added support for comments in inner nodes.
- Added UIFlags bit for showing last access times.
- In the history entry viewing dialog, the 'Open' and 'Save' commands are now available for attachments.
- When replacing the {PASSWORD_ENC} placeholder, KeePass now first Spr-compiles the entry password (i.e. placeholders, environment variables, etc. can be used).
- Improved configuration loading performance.
- Improved displaying of fatal exceptions.
- Various code optimizations.
- Minor other improvements.
- Fixed bugs.

KeePass 2.23:

- New password quality estimation algorithm.
- Added toolbar buttons: 'Open URL(s)', 'Copy URL(s) to Clipboard' and 'Perform Auto-Type'.
- Added 'Generate Password' command in the context menu of the KeePass system tray icon.
- Added 'Copy history' option in the entry duplication dialog (enabled by default).
- Added 'Duplicate Group' context menu command.
- In the MRU list, currently opened files now have an '[Opened]' suffix and are blue.
- When a dialog is displayed, (double) clicking the KeePass system tray icon now activates the dialog.
- Added {T-REPLACE-RX:...} placeholder, which replaces text using a regular expression.
- Added {VKEY-NX X} and {VKEY-EX X} special key codes.
- Added 'Perform auto-type with selected entry' trigger action.
- Added 'Import into active database' trigger action.
- Mozilla Bookmarks HTML import: added support for groups, bookmark descriptions and icons.
- Mozilla Bookmarks JSON import: bookmark descriptions are now imported into the note fields of entries.
- RoboForm import: added support for the new file format.
- Added support for importing Network Password Manager 4.0 CSV files.
- Enhanced SafeWallet XML importer to additionally support importing web entries and groups from very old export file versions (for newer versions this was already supported).
- Added database repair mode warning.
- Added option to accept invalid SSL certificates (turned off by default).
- Added user activity notification event for plugins.
- File transactions for FTP URLs are now always disabled when running under .NET 4.0 in order to workaround .NET bug 621450.
- Added workaround for Mono list view item selection bug.
- Added workaround for Mono bug 649266; minimizing to tray now removes the task bar item and restoring does not result in a broken window anymore.
- Added workaround for Mono bug 5795; text and selections in password boxes are now drawn properly (a monospace font can only be used on Windows due to the bug).
- Added workaround for Mono bug 12525; dialog banners are now drawn correctly again.
- Added workaround for Mono form loading bug.
- KPScript: added 'Import' command.
- When the option for remembering the last used database is enabled, KeePass now remembers the last active database (instead of the last opened or saved database).
- The 'Add Group' command and the F2 key in the groups tree view now open the group editing dialog; in-place tree node label editing is disabled.
- Custom string and plugin-provided columns in the 'Configure Columns' dialog are sorted alphabetically now.
- Improved behavior when closing inactive databases.
- Improved support for trigger actions during database closing.
- The 'Special' GUI character set now includes '|' and '~'.
- The 'High ANSI' character set now consists of the range [U+0080, U+00FF] except control and non-printable characters.
- The options dialog is now listed in the task bar when it is opened while KeePass is minimized to the system tray.
- A remembered user account usage state can now be preset even when the user account option is disabled using key prompt configuration flags.
- Improved initial input focus in key creation/prompt dialogs when key creation/prompt configuration flags are specified.

KeePass 2.22:

- When the option for remembering key sources is enabled, KeePass now also remembers whether the user account is required.
- Added 'View' -> 'Grouping in Entry List' menu.
- Added 'Close active database' trigger action.
- Added '-ioiscomplete' command line option, which tells KeePass that the path and file system credentials are complete (the 'Open URL' dialog will not be displayed then).
- Added support for importing SafeWallet XML files (3.0.4 and 3.0.5).
- Added support for importing TurboPasswords 5.0.1 CSV files.
- LastPass CSV importer: added support for group trees.
- Alle meine Passworte XML importer: added support for custom fields and group names with special characters.
- Password Safe XML importer: added support for the e-mail field.
- Added 'Help' button in the generic CSV importer dialog.
- Many other additions, changes and corrections.

KeePass 2.21:

- Generic CSV importer: a group separator can be specified now.
- Internal data viewer: added hex viewer mod.
- In the 'Show Entries by Tag' menu, the number of entries having a specific tag is now shown right of the tag.
- In the 'Add Tag' menu, a tag is now disabled if all selected entries already have this tag.
- Auto-Type: added support for right modifier keys.
- Added special key codes: {WIN}, {LWIN}, {RWIN}, {APPS}, {NUMPAD0} to {NUMPAD9}.
- Interleaved sending of keys is now prevented by default.
- Added '-auto-type-selected' command line option (other running KeePass instances perform auto-type for the currently selected entry).
- Added option to additionally show references when showing dereferenced data .
- The selection in a secure edit control is now preserved when unhiding and hiding the content.
- The auto-type association editing dialog now does not hang anymore when a window of any other application hangs.
- When an application switches from the secure desktop to a different desktop, KeePass now shows a warning message box; clicking [OK] switches back to the secure desktop.
- Added 'OK'/'Cancel' buttons in the icon picker dialog.
- Added support for importing LastPass 2.0.2 CSV files.
- KeePass now shows an error message when the user accidentally attempts to use a database file as key file.
- Added support for UTF-16 surrogate pairs.
- Added UTF-8 BOM support for version information files.
- The KeePass version is now also shown in the components list in the 'About' dialog.
- File operations are now context-independent.
- Plugins can now register their placeholders to be shown in the auto-type item editing dialog.
- Plugins can now subscribe to IO access events.
- When the main window UI is being unblocked, the focus is not reset anymore, if a primary control has the focus.
- When opening the icon picker dialog, KeePass now ensures that the currently selected icon is visible.
- Internal data viewer: improved visibility updating.
- The e-mail box icon by default is not inherited by new entries anymore.
- The database is now marked as modified when auto-typing a TAN entry.
- Enhanced AnyPassword importer to additionally support CSV files exported by AnyPassword Pro 1.07.
- Enhanced Password Safe XML importer.
- IO credentials can be loaded over IPC now.
- Enhanced user switch detection.
- Even when an exception occurs, temporary files created during KDB exports are now deleted immediately.
- Improved behavior on Unix-like systems when the operating system does not grant KeePass access to the temporary directory.
- Improved critical sections that are not supposed to be re-entered by the same thread.
- Improved secure desktop name generation.
- When a dialog is closed, references within the global client image list to controls (event handlers) are removed now.
- .NET 4.5 is now preferred, if installed.
- PLGX plugins are now preferably compiled using the .NET 4.5 compiler, if KeePass is currently running under the 4.5 CLR.

KeePass 2.20:

- Improved support for images with DPI resolutions different from the DPI resolution of the display device.
- {GOOGLECHROME} placeholder: updated detection code to also support the latest versions of Chrome.
- The option to lock on remote control mode changes now additionally watches for remote connects and disconnects.
- Improved Windows registry accesses.
- Improved behavior when the user deletes the system temporary directory.
- On Unix-like systems, KeePass now stores most of its temporary files in a private temporary directory (preferably in $XDG_RUNTIME_DIR).
- Added detection support for the following web browsers on Unix-like systems: Rekonq, Midori and Dooble.
- KeePass does not try to set the WM_CLASS property on Mac OS X systems anymore.
- Modified some icons to work around unsupported PNG transparency keys in Mono.
- Various code optimizations.
- Minor other improvements.