Package Details: backintime 1.3.2-2

Git Clone URL: https://aur.archlinux.org/backintime.git (read-only, click to copy)
Package Base: backintime
Description: Simple backup system inspired from the Flyback Project and TimeVault. QT5 GUI version.
Upstream URL: https://github.com/bit-team/backintime
Licenses: GPL
Submitter: None
Maintainer: graysky
Last Packager: graysky
Votes: 289
Popularity: 1.97
First Submitted: 2009-01-09 20:46 (UTC)
Last Updated: 2022-05-05 18:19 (UTC)

Latest Comments

1 2 3 4 5 6 .. 60 Next › Last »

graysky commented on 2022-11-06 09:27 (UTC)

@dev_aryoda - https://github.com/bit-team/backintime/issues/1356

dev_aryoda commented on 2022-11-06 00:15 (UTC)

File "/build/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/test/test_diagnostics.py", line 114, in test_distro_package_folder self.assertEqual(result, path.parent.parent) AssertionError: Posix[18 chars]ntime') != Posix[18 chars]ntime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d')

The error message is strange (a Posix date/time instead of a folder name string...).

I was not able to reproduce this assertion error on Arch and Manjaro (not even on fresh Arch console-only VM).

Anyhow: I have merged my PR into master after getting the confirmation of another BiT developer.

You could now retest with HEAD of the BiT master branch. I have used commit 6fc658dd54f139b20f858e5089d0baa860bb8300 to test it on Arch and Manjaro with a desktop environment and on a fresh console-only Arch. All unit tests did succeed (make test in common folder) - the warnings can be ignored (intentionally thrown due the first-time-installation without an existing DBus service for BiT).

It would be great if you could do a retest and report issues (we could also open an issue at BiT's Github repo to avoid polluting your comments here)...

graysky commented on 2022-11-05 12:28 (UTC)

@dev_aryoda - even patching the source with your PR ends in a failure.

==> Starting check()...
python -m unittest  -b test/test_applicationinstance.py
...................
----------------------------------------------------------------------
Ran 19 tests in 0.025s

OK
WARNING: import keyring failed
python -m unittest  -b test/test_argparser.py
.....................
----------------------------------------------------------------------
Ran 21 tests in 1.490s

OK
python -m unittest  -b test/test_backintime.py
WARNING: Failed to connect to Udev serviceHelper daemon via D-Bus: org.freedesktop.DBus.Error.FileNotFound
WARNING: D-Bus message: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
WARNING: Udev-based profiles cannot be changed or checked due to Udev serviceHelper connection failure
.WARNING: Failed to connect to Udev serviceHelper daemon via D-Bus: org.freedesktop.DBus.Error.FileNotFound
WARNING: D-Bus message: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
WARNING: Udev-based profiles cannot be changed or checked due to Udev serviceHelper connection failure
.s
----------------------------------------------------------------------
Ran 3 tests in 2.447s

OK (skipped=1)
python -m unittest  -b test/test_backup.py
............
----------------------------------------------------------------------
Ran 12 tests in 0.117s

OK
python -m unittest  -b test/test_config.py
...........
----------------------------------------------------------------------
Ran 11 tests in 0.007s

OK
WARNING: import keyring failed
python -m unittest  -b test/test_configfile.py
......................................................
----------------------------------------------------------------------
Ran 54 tests in 0.004s

OK
WARNING: import keyring failed
python -m unittest  -b test/test_diagnostics.py
....F.
======================================================================
FAIL: test_distro_package_folder (test.test_diagnostics.Diagnostics_FakeFS)
Determin the folder of the project.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/build/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/test/test_diagnostics.py", line 114, in test_distro_package_folder
    self.assertEqual(result, path.parent.parent)
AssertionError: Posix[18 chars]ntime') != Posix[18 chars]ntime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d')

----------------------------------------------------------------------
Ran 6 tests in 0.023s

FAILED (failures=1)
WARNING: import keyring failed
make: *** [Makefile:574: unittest] Error 1
==> ERROR: A failure occurred in check().
    Aborting...

dev_aryoda commented on 2022-11-05 11:25 (UTC)

@graysky THX for testing, this is exactly one of the bugs I have fixed but my PR for this is not yet merged into master since we observed a strange QPainter output in a non-desktop console-only scenario on Manjaro that we are investigating ATM (may be an old bug or introduced by my PR, let's see).

I will inform you when my PR (https://github.com/bit-team/backintime/pull/1353) is merged into master for a re-test.

graysky commented on 2022-11-05 10:15 (UTC)

@dev_aryoda - see below for an updated PKGBUILD but note that is it currently pointing at your latest commit. Even with the new checkdepends of python-pyfakefs the tests still fail.

https://gist.github.com/graysky2/0806ec772d777cdf8bde879c4e0f51cf

==> Starting check()...
python -m unittest  -b test/test_applicationinstance.py
...................
----------------------------------------------------------------------
Ran 19 tests in 0.025s

OK
python -m unittest  -b test/test_argparser.py
.....................
----------------------------------------------------------------------
Ran 21 tests in 1.442s

OK
python -m unittest  -b test/test_backintime.py
Traceback (most recent call last):
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/backintime.py", line 1190, in <module>
    startApp()
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/backintime.py", line 507, in startApp
    args = argParse(None)
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/backintime.py", line 568, in argParse
    args, unknownArgs = mainParser.parse_known_args(args)
  File "/usr/lib/python3.10/argparse.py", line 1859, in parse_known_args
    namespace, args = self._parse_known_args(args, namespace)
  File "/usr/lib/python3.10/argparse.py", line 2068, in _parse_known_args
    start_index = consume_optional(start_index)
  File "/usr/lib/python3.10/argparse.py", line 2008, in consume_optional
    take_action(action, args, option_string)
  File "/usr/lib/python3.10/argparse.py", line 1936, in take_action
    action(self, namespace, argument_values, option_string)
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/backintime.py", line 742, in __call__
    diagnostics = collect_diagnostics()
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/diagnostics.py", line 142, in collect_diagnostics
    result['external-programs']['rsync'] = _get_extern_versions(
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/diagnostics.py", line 246, in _get_extern_versions
    return result.strip()
AttributeError: 'dict' object has no attribute 'strip'
E.s
======================================================================
ERROR: test_diagnostics_arg (test.test_backintime.TestBackInTime)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/scratch/backintime/src/backintime-2121c60c882e8fa16de6439a27e91b046118291d/common/test/test_backintime.py", line 191, in test_diagnostics_arg
    output = subprocess.check_output(["./backintime", "--diagnostics"])
  File "/usr/lib/python3.10/subprocess.py", line 421, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/usr/lib/python3.10/subprocess.py", line 526, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['./backintime', '--diagnostics']' returned non-zero exit status 1.

----------------------------------------------------------------------
Ran 3 tests in 2.727s

FAILED (errors=1, skipped=1)
make: *** [Makefile:570: unittest] Error 1
==> ERROR: A failure occurred in check().

dev_aryoda commented on 2022-11-04 23:29 (UTC) (edited on 2022-11-04 23:29 (UTC) by dev_aryoda)

"This package does not need qt5-wayland as an optional dependency as it's already an optional dependency of qt5-base"

I don't know much about Arch dependency management but if wayland is installed as display manager the qt5-wayland package is also need for BiT (in whatever way this is achieved in AUR packages)

yochananmarqos commented on 2022-11-04 23:25 (UTC)

@dev_aryoda: Yeah, I just realized you meant from master, not 1.3.2. Thanks for the heads up either way.

dev_aryoda commented on 2022-11-04 23:16 (UTC) (edited on 2022-11-04 23:17 (UTC) by dev_aryoda)

@yochananmarqos THX for the details!

Yes, python-pyfakefs is only used in test_tools.py (which is skipped) and in the upcoming release 1.3.3 in test_diagnostics.py

I have checked why the missing python-packaging is not causing any run-time errors: It was introduced after v1.3.2 so you do not yet have this dependency but it will "hit" you with the next BiT release.

yochananmarqos commented on 2022-11-04 22:59 (UTC) (edited on 2022-11-04 23:03 (UTC) by yochananmarqos)

@dev_aryoda: I can confirm it neither requires python-packaging nor python-pyfakefs. However, since one test fails, I skip it just like Fedora does:

check() {
  cd "$_pkgname-$pkgver"

  # Skip test_tools.py unit test
  sed -i '/test_tools.py/d' common/Makefile

  make -C common test-v
}

This package does not need qt5-wayland as an optional dependency as it's already an optional dependency of qt5-base. Any Qt 5 application might need it. It would be ridiculous to add it as an optional dependency for all of them.

dev_aryoda commented on 2022-11-04 22:58 (UTC)

@graysky

python-pyfakefs is only required for unit tests (= make test). Are you able to distinguish between build-only and run-time dependencies in PKGBUILD?

python-packaging is imported in three files and required to check the python package version number of Qt (in backintime-qt) and rsync + encfs in backintime (CLI). I would expect an python import error if this package is not installed.

qt5wayland was my mistake, it is named "qtwayland5" in Ubuntu and contains eg. libwayland-egl.so and libdrm-egl-server.so.