Releases: bit-team/backintime
Back In Time 1.5.4 (March 24, 2025)
Summary
The Auto-remove and Smart-remove have been renamed into Remove & Retention. The related tab in the GUI was reworked, with clearer labels and tooltips. And the user manual now gives more details and examples about how this feature works. Scheduling capabilities are extended with offset minutes for hourly schedules. The completeness of translations increased dramatically to 84%. Four languages (Slovak, Greek, Faroes, Croatian) are reactivated and rescued from being removed. Also The license and copyright information now follow the REUSE.software and SPDX standards. Additionally, several other adjustments, improvements, and fixes have been made. It will be the last release in 1.5 branch. Please note that this might be the last release with full support for EncFS encryption.
Changelog
Changed
- Breaking: Auto-remove rules "Free inodes" and "Free space" disabled by default in new created profiles (#1976)
- Breaking: Smart-remove rule "Keep one snapshots per week or the last week" use calendar weeks
- More clear and intense warning about EncFS deprecation and removal (#1904)
- Updated desktop entry files
- Move several values from config file into new introduce state file ($XDG_STATE_HOME/backintime.json)
Added
- Completed license information to conform to REUSE.software and SPDX standards.
- Remove & Retention (formally known as Auto-/Smart-Remove) with improved GUI and user manual section (#2000)
- Open user manual (local if available otherwise online) via Help menu
- Toolbar context menu to display the buttons in different combinations with icons and text (#1105, #2002) (Samuel Moore @s4moore)
- Add offset minutes to hourly schedules (David Gibbs @fallingrock)
Fixed
- Gui: Exclude patterns are now case-sensitive when added (#2040)
- Gui: The width of the fourth column in files view is now saved
- Snapshot compare copy symlink as symlink (#1902) (Peter Sevens @sevens)
- Crash when comparing a snapshot with a symlink pointing to a nonexistent target (Peter Sevens @sevens)
- Gui: Crash (KeyError) opening language setup dialog with unknown locale/language
Contributors
This version received extensive support from external contributors (in alphabetical order by last name or nickname):
- @bremnere
- David Gibbs @fallingrock
- graysky @graysky2
- Samuel More @s4moore (formally known as @mooresamuel)
- Iván Rodríguez @ivanrdgz03
- Peter Sevens @sevens
- David Wales @daviewales
- Dylan Wilson @dylan-wilson-usq
- Also not to be forgotten are the many people who supported the project by testing it, providing feedback, reporting issues, and analyzing problems.
Installation
This release contains the source code only but no distro packages. To install the new release from the source code please follow our build & installation instructions.
Known major issues open
Release Candidate 1.5.4-rc2
Summary
This is the second release candidate preparing for version 1.5.4. Please report if you use it even if there are no new problems.
- Fix: Exclude patterns are now case-sensitive when added (#2040)
- Fix(build): LICENSE folder included in tar archive
- Fix: Desktop files typos
More details in previous release candidate 6441aa1.
Release Candidate 1.5.4-rc1
Summary
This is a release candidate. Please report if you use it even if there are no new problems.
This version is set to be released with Debian 13 (Trixie) this early summer and will remain available for the long lifetime of that Debian version.
EncFS, used for encrypted profiles, has been marked as deprecated and is schedule for removal in 2026. The Smart & Auto remove GUI has been reorganized and renamed into "Remove & Retention", with improvements to the user manual section. Its behavior remains unchange. An offset minute can now be configured for hourly schedule options. Some config file fields have been moved to a newly introduced state file. License and copyright information is now provided in machine-readable SPDX format, following the REUSE standard.
Contributors
This version received extensive support from contributors (in alphabetical order):
- @bremnere
- David Gibbs @fallingrock
- graysky @graysky2
- Samuel More @mooresamuel
- Iván Rodríguez @ivanrdgz03
- Peter Sevens @sevens
- David Wales @daviewales
- Dylan Wilson @dylan-wilson-usq
- Also not to be forgotten are the many people who supported the project by testing it, providing feedback, reporting issues, and analyzing problems.
Known major issues open
- qt_probing.py may hang with high CPU usage when running Back In Time as root via cron (#1592)
- File permissions handling and therefore possible non-differential backups (#988 & #994)
Changelog
- Changed: More clear and intense warning about EncFS deprecation and removal (#1904)
- Changed: Updated desktop entry files
- Changed: Move several values from config file into new introduce state file ($XDG_STATE_HOME/backintime.json)
- Changed: Completed license information to conform the REUSE.software and SPDX standards.
- Breaking Change: Auto-remove rules "Free inodes" and "Free space" disabled by default (#1976)
- Fix!: Smart-remove rule "Keep one snapshots per week or the last week" use calendar weeks
- Fix: The width of the fourth column in files view is now saved
- Fix: Snapshot compare copy symlink as symlink (#1902) (Peter Sevens @sevens)
- Fix: Crash when comparing a snapshot with a symlink pointing to a nonexistent target (Peter Sevens @sevens)
- Fix: Crash (KeyError) opening language setup dialog with unknown locale/language
- Feature: Open user manual (local if available otherwise online) via Help menu
- Feature: Toolbar context menu to display the buttons in different combinations with icons and text (#1105, #2002) (Samuel Moore @s4moore)
- Feature: Add offset minutes to hourly schedules (David Gibbs @fallingrock)
- Doc: Remove & Retention (formally known as Auto-/Smart-Remove) with improved GUI and user manual section (#2000)
Back In Time 1.5.3 (November 13, 2024)
Summary
The minimum supported Python version has been raised to 3.9. The user manual has migrated to a new format and build system, now including sections on user callbacks and detailed example scripts. The code base has undergone extensive refactoring. FCron support has been added. The English strings in the GUI have been optimized. Serbian language is now available in both Latin and Cyrillic scripts. Interlingua (Occidental) has been introduced as a new language. The libnotify-bin (notify-send) dependency has been removed, as Back In Time now uses DBus for notifications.
Contributors
This version received extensive support from external contributors (in alphabetical order by last name or nickname):
- Keith Bates @dnerever
- David Gibbs @fallingrock
- Johannes @hannes101
- Manuel @feman323
- Ihor Pryyma @Ihor-Pryyma
- Timothy Southwick @NickNackGus
- Felix Stupp @Zocker1999NET
- Derek Veit @DerekVeit
- Kosta Vukicevic @stcksmsh
- David Wales @daviewales
- Paul Worrall @Silver-Saucepan
- Also not to be forgotten are the many people who supported the project by testing it, providing feedback, reporting issues, and analyzing problems.
Installation
This release contains the source code only but no distro packages. To install the new release from the source code please follow our build & installation instructions.
Known major issues open
- qt_probing.py may hang with high CPU usage when running Back In Time as root via cron (#1592)
- File permissions handling and therefore possible non-differential backups (#988 & #994)
Changelog
- Doc: User manual (build with MkDocs) (#1838) (Kosta Vukicevic @stcksmsh)
- Doc: User-callback topic in user manual (#1659)
- Feature: Support language Interlingua (Occidental)
- Feature: Warn if destination directory is formatted as NTFS (#1854) (David Gibbs @fallingrock)
- Breaking Change: Minimal Python version 3.9 required (#1731)
- Breaking Change: Auto migration of config version 4 or lower not longer supported (#1857)
- Fix: Prevent duplicates in Exclude/Include list of Manage Profiles dialog
- Fix: Fix Qt segmentation fault when canceling out of unconfigured BiT (#1095) (Derek Veit @DerekVeit)
- Fix: Correct global flock fallbacks (#1834) (Timothy Southwick @NickNackGus)
- Fix: Use SSH key password only if it is valid, otherwise request it from user (#1852) (David Wales @daviewales)
- Feature: Support fcron (#610)
- Feature: User message about release candidate (#1906)
- Refactor: General tab and its Schedule section
- Refactor: Own module for Manage Profiles dialog and separate Generals tab code (#1865)
- Refactor: Remove class OrderedSet
- Refactor: Remove os.system() from class Execute
- Refactor: Systray notifications send utilize DBUS instead of notify-send (#1156) (Felix Stupp @Zocker1999NET)
- Refactor!: Remove unused config field "user_callback.no_logging" (#1887)
- Refactor!: Remove eCryptFS check for home folder (#1855)
- Dependency: Remove libnotify-bin (notify-send) (#1156)
- Build: Replace "pycodestyle" linter with "flake8" (#1839)
Release Candidate 1 - Back In Time 1.5.3-rc1
Summary
This is a release candidate. Please report if you use it even if there are no new problems.
The minimum supported Python version has beend raised to 3.9. The user manual has migrated to a new format and build system, now including sections on user callbacks and detailed example scripts. The code base has undergone extensive refactoring. FCron support has been added. The English strings in the GUI have been optimized. Serbian language is now available in both Latin and Cyrillic scripts. Interlingua (Occidental) has been introduced as a new language. The libnotify-bin (notify-send) dependency has been removed, as Back In Time now uses DBus for notifications.
Contributors
This version received extensive support from external contributors (in alphabetical order):
- Keith Bates @dnerever
- David Gibbs @fallingrock
- Derek Veit @DerekVeit
- Timothy Southwick @NickNackGus
- Felix Stupp @Zocker1999NET
- Ihor Pryyma @Ihor-Pryyma
- Kosta Vukicevic @stcksmsh
- David Wales @daviewales
- Paul Worrall @Silver-Saucepan
- Manuel @feman323
- Also not to be forgotten are the many people who supported the project by testing it, providing feedback, reporting issues, and analyzing problems.
Installation
This release contains the source code only but no distro packages. To install the new release from the source code please follow our build & installation instructions.
Known major issues open
- qt_probing.py may hang with high CPU usage when running Back In Time as root via cron (#1592)
- File permissions handling and therefore possible non-differential backups (#988 & #994)
Changelog
- Doc: User manual (build with MkDocs) (#1838) (Kosta Vukicevic @stcksmsh)
- Doc: User-callback topic in user manual (#1659)
- Feature: Support language Interlingua (Occidental)
- Feature: Warn if destination directory is formatted as NTFS (#1854) (David Gibbs @fallingrock)
- Breaking Change: Minimal Python version 3.9 required (#1731)
- Breaking Change: Auto migration of config version 4 or lower not longer supported
- Fix: Prevent duplicates in Exclude/Include list of Manage Profiles dialog
- Fix: Fix Qt segmentation fault when canceling out of unconfigured BiT (#1095) (Derek Veit @DerekVeit)
- Fix: Correct global flock fallbacks (#1834) (Timothy Southwick @NickNackGus)
- Fix: Use SSH key password only if it is valid, otherwise request it from user (#1852) (David Wales @daviewales)
- Feature: Support fcron (#610)
- Feature: User message about release candidate (#1906)
- Refactor: General tab and its Schedule section
- Refactor: Own module for Manage Profiles dialog and separate Generals tab code (#1865)
- Refactor: Remove class OrderedSet
- Refactor: Remove os.system() from class Execute
- Refactor: Systray notifications send utilize DBUS instead of notify-send (#1156) (Felix Stupp @Zocker1999NET)
- Refactor!: Remove unused config field "user_callback.no_logging" (#1887)
- Refactor!: Remove eCryptFS check for home folder (#1855)
- Dependency: Remove libnotify-bin (notify-send) (#1156)
- Build: Replace "pycodestyle" linter with "flake8" (#1839)
Back In Time 1.5.2 (August 6, 2024)
Summary
This version fixes urgent bugs from the previous version causing crashes when using languages Spanish, Basque or Icelandic. Thank you to @Caramelitosis for reporting this.
Installation
This release contains the source code only but no distro packages. To install the new release from the source code please follow our build & installation instructions.
Known major issues open
- qt_probing.py may hang with high CPU usage when running Back In Time as root via cron (#1592)
- File permissions handling and therefore possible non-differential backups (#988 & #994)
Changes
Back In Time 1.5.1 (July 27, 2024)
Summary
This version fixes a bug from the previous version. During ping tests of the SSH server, the port of the SSH proxy was used instead of the target SSH server. Thank you to Johannes (@hannes101) for reporting this.
Installation
This release contains the source code only but no distro packages. To install the new release from the source code please follow our build & installation instructions.
Known major issues open
- qt_probing.py may hang with high CPU usage when running Back In Time as root via cron (#1592)
- File permissions handling and therefore possible non-differential backups (#988 & #994)
Changes
- Fix: Use correct port to ping SSH Proxy (#1815)
Back In Time 1.5.0 (July 26, 2024)
This release increase the Qt version usedfrom 5 to 6. EncFS is marked as deprecated (#1734). BIT warns if Cron is not running. As a new feature SSH proxy (aka jump host) can be used. For more details see the changelog.
This release has several new contributors. Thank you to all of them, several issues could be fixed and the code quality increased.
- Ayush Saluja: Improving code quality
- Christie Grinham: Implement SSH proxy feature
- David Gibbs: Fix "places" widget in main window and "one file system" export option.
- DerekVeit: Fix a long standing Qt segmentation fault
- JATIN-RAGHAV: Improve code quality and docu
- Kosta Vukicevic: Improve debug behavior of the GUI and code quality.
- Rafael Hurpia da Rocha: Fix "Backup folders" list in main window.
- Tianyi Tao: Improve code quality with refactoring.
- Tom Hunter: Improve code quality with refactoring.
- Vaibhav Raj: Improve code quality with refactoring.
Also several new translators and former translators updating their translations to fit to the latest development. Thank you to them the language translation coverage increased to 82 %.
Installation
This release contains the source code only but no distro packages. To install the new release from the source code please follow our build & installation instructions.
Known major issues open
- qt_probing.py may hang with high CPU usage when running Back In Time as root via cron (#1592)
- File permissions handling and therefore possible non-differential backups (#988 & #994)
Changelog
- Dependency: Migration to PyQt6
- Breaking Change: EncFS deprecation warning (#1735, #1734)
- Breaking Change: GUI started with --debug does no longer add --debug to the crontab for scheduled profiles.
Use the new "enable logging for debug messages" in the 'Schedule' section of the 'Manage profiles' GUI instead. - Feature: Warn if Cron is not running (#1747)
- Feature: Profile and GUI allow to activate debug output for scheduled jobs by adding '--debug' to crontab entry (#1616, contributed by @stcksmsh Kosta Vukicevic)
- Feature: Support SSH proxy (jump) host (#1688) (@cgrinham, Christie Grinham)
- Feature: Support rsync '--one-file-system' in Expert Options (#1598)
- Feature: "*-dev" version strings contain last commit hash (#1637)
- Fix: Global flock fallback to single-user mode if insufficient permissions (#1743, #1751)
- Fix: Fix Qt segmentation fault with uninstall ExtraMouseButtonEventFilter when closing main window (#1095)
- Fix: Names of weekdays and months translated correct (#1729)
- Fix: Global flock for multiple users (#1122, #1676)
- Fix bug: "Backup folders" list does reflect the selected snapshot (#1585) (@rafaelhdr Rafael Hurpia da Rocha)
- Fix: Validation of diff command settings in compare snapshots dialog (#1662) (@stcksmsh Kosta Vukicevic)
- Fix bug: Open symlinked folders in file view (#1476)
- Fix bug: Respect dark mode using color roles (#1601)
- Fix: "Highly recommended" exclusion pattern in "Manage Profile" dialog's "Exclude" tab show missing only (#1620)
- Fix bug:
make install
ignored $(DEST) in file migration part (#1630) - Removed: Context menu in LogViewDialog (#1578)
- Removed: Field "filesystem_mount" and "snapshot_version" in "info" file (#1684)
- Refactor: Replace Config.user() with getpass.getuser() (#1694)
- Chore!: Remove "debian" folder (#1548)
- Build: Enable several PyLint rules (#1755, #1766)
- Build: Add AppStream meta data (#1642)
- Build: PyLint unit test is skipped if PyLint isn't installed, but will always run on TravisCI (#1634)
- Build: Git commit hash is presevered while "make install" (#1637)
- Build: Fix bash-completion symlink creation while installing & adding --diagnostics (#1615)
- Build: TravisCI use PyQt (except arch "ppc64le")
Back in Time v1.4.3 (Jan 30, 2024)
Installation
This release contains the source code only but no distro packages.
To install the new release from the source code please follow our build & installation instructions
Known major open issues
- #1592:
qt5_probing.py
may hang with high CPU usage when running BiT asroot
viacron
Changes
Important note for package maintainers:
We are now using absolute paths to python3
which may impact how you build your package.
You can you use ./configure --python=PYTHON_PATH
to configure this.
- Feature: Exclude 'SingletonLock' and 'SingletonCookie' (Discord) and 'lock' (Mozilla Firefox) files by default (part of #1555)
- Work around: Relax
rsync
exit code 23: Ignore instead of error now (part of #1587) - Feature (experimental): Add new snapshot log filter
rsync transfer failures (experimental)
to find them easier (they are normally not shown as "error").
This feature is experimental because it is based on hard-coded error message strings in the rsync source code
and may possibly not find all rsync messages or show false positives. - Fix bug: 'qt5_probing.py' hangs when BiT is run as root and no user is logged into a desktop environment (#1592 and #1580)
- Fix bug: Launching BiT GUI (root) hangs on Wayland without showing the GUI (#836)
- Improve: Launcher for BiT GUI (root) does not enforce Wayland anymore but uses same settings as for BiT GUI (userland) (#1350)
- Fix bug: Disabling suspend during taking a backup ("inhibit suspend") hangs when BiT is run as root and no user is logged into a desktop environment (#1592)
- Change of semantics: BiT running as root never disables suspend during taking a backup ("inhibit suspend") even though this may have worked before in BiT <= v1.4.1 sometimes (required to fix #1592)
- Fix bug: RTE: module 'qttools' has no attribute 'initate_translator' with encFS when prompting the user for a password (#1553).
- Fix bug: Schedule dropdown menu used "minutes" instead of "hours".
- Fix bug: Unhandled exception "TypeError: 'NoneType' object is not callable" in tools.py function __log_keyring_warning (#820).
Logging thread removed and logger module correctly initialized as fix. Is "Heisenbug" so 100 % retesting was not possible. - Build: Use PyLint in unit testing to catch E1101 (no-member) errors.
- Build: Activate PyLint warning W1401 (anomalous-backslash-in-string).
- Build: Add codespell config.
- Build: Allow manual specification of python executable (--python=PYTHON_PATH) in common/configure and qt/configure
- Build: All starter scripts do use an absolute path to the python executable by default now via common/configure and qt/configure (#1574)
- Build: Install dbus configuration file to /usr/share not /etc (#1596)
- Build:
configure
does delete old installed files (qt4plugin.py
andnet.launchpad.backintime.serviceHelper.conf
) that were renamed or moved in a previous release (#1596) - Translation: Minor modifications in source strings and updating language files.
- Refactor: Solved circular dependency between tools.py and logger.py to fix #820
- Improved:
qtsystrayicon.py
,qt5_probing.py
,usercallbackplugin.py
and all parts ofapp.py
do now also use "backintime" as logging namespace in the syslog to ensure complete log output withjournalctl | grep -i backintime
Statistics
- Issue progress report
- The language translation coverage increased from from 56 to 72 % since the new developer team started in summer 2022
(thanks to all our translators and @buhtz to pursue this topic!)
Back in Time 1.4.1 (Oct. 1, 2023)
Installation
This release contains the source code only but no distro packages.
To install the new release see: https://github.com/bit-team/backintime/blob/dev/CONTRIBUTING.md#build--install
Known major issues
- #1553: RTE: module 'qttools' has no attribute 'initate_translator' (encFS when prompting the user for a password)
Changes
- Dependency: Add "qt translations" to GUI runtime dependencies (#1538)
- Build: Unit tests do generically ignore all instead of well-known warnings now (#1539).
- Build: Warnings about missing Qt translation now are ignored while testing (#1537).
- Fix bug: GUI didn't start when "show hidden files" button was on (#1535).
Statistics
- Issue progress report
- The language translation coverage increased from 38 to 56 % since the new developer team started in summer 2022
(thanks to all our translators and @buhtz to pursue this topic!)