-
Notifications
You must be signed in to change notification settings - Fork 220
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Arch] Backintime fails to build #1333
Comments
Thanks for reporting this, I am already aware of this bug in another issue (no real duplicate): The current work-around to install from AUR is described here: |
Fix submitted via PR #1335 (also fixes the unit test and updates the AUR installation section in README incl. a link for a work-around to this issue) |
Still fails to build for me on Arch. Though the error is different now Traceback (most recent call last):
File "/home/af/.cache/yay/backintime-git/src/backintime/common/backintime.py", line 1190, in <module>
startApp()
File "/home/af/.cache/yay/backintime-git/src/backintime/common/backintime.py", line 507, in startApp
args = argParse(None)
File "/home/af/.cache/yay/backintime-git/src/backintime/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 "/home/af/.cache/yay/backintime-git/src/backintime/common/backintime.py", line 742, in __call__
diagnostics = collect_diagnostics()
File "/home/af/.cache/yay/backintime-git/src/backintime/common/diagnostics.py", line 80, in collect_diagnostics
result['host-setup']['locale'] = ', '.join(locale.getlocale())
TypeError: sequence item 0: expected str instance, NoneType found
E.s
======================================================================
ERROR: test_diagnostics_arg (test.test_backintime.TestBackInTime)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/af/.cache/yay/backintime-git/src/backintime/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.966s
FAILED (errors=1, skipped=1)
make: *** [Makefile:570: unittest] Error 1
make: Leaving directory '/home/af/.cache/yay/backintime-git/src/backintime/common'``` |
Thanks for reporting, I'm re-opening the ticket and assigning to @aryoda :) |
@afettouhi I did not test it with |
I am just trying to build is this way with yay yay -S backintime-cli-git backintime-git |
The error tracebacks are exactly reproducible! |
So, is this an issue with yay then? |
No it isn't at all. I could reproduce the issue by cloning BiT from the master branch on a fresh Arch installation. I am preparing a fix for this and will explain the details then here |
Do I see it correct that Can you show us the output of
Just a quick shoot. Modify that line
into
|
[af@andre ~]$ locale |
Sorry to revise my first statement that I can reproduce the exact traceback. I have different ones in nearly the same locations. I am still working on a fix for those but the originally reported traceback I cannot reproduce:
@buhtzz Are you working on that (just to be sure we don't do the same work)? I think the diagnostics code requires some more try-catches for such edge cases... The currently known reasons to me for the other failing unit tests are:
Edit: Inserted 4 as result of #1333 (comment)
The reason why the BiT installation from AUR succeeded in my tests a few days ago are clear now to me:
|
No I don't.
Maybe. But even the
Why there are multiple maintainers on one distro? We need to clearly separate the responsibilities and resources between upstream and distros. |
Strange. There is a locale but while PKGBUILD there is no locale. Can you show me the output of |
PKGBUILD may possibly run as |
[af@andre ~]$ sudo locale |
And what does |
[af@andre ~]$ python3 -c "import locale; print(locale.getlocale())" |
And
|
|
Thanks to that thread in the arch forum We knew that the PKGBUILD "script" does set |
Hero :-) Now I see it clear too, it was all just in front of our (PKGBUILD) eyes:
And the reason I didn't see a failing unit test was because I have tested my other fix with a different package backintime: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=backintime I will add a fix for this issue too in my upcoming PR. @afettouhi Thanks for your stickiness and cooperation to hunt this bug 🥇 Good team work :-) |
Glad I could help. |
I have fixed all problems (I hope) and contacted the AUR package maintainer to indicate open issues at the packaging side. @afettouhi Once the PR is merged into BiT you could try to install it again and it should work now (or I have work again ;-) |
Looking forward to the update. |
* getlocale() returns (None, None) causing join() to throw this RTE: TypeError: sequence item 0: expected str instance, NoneType found
All tests in https://aur.archlinux.org/pkgbase/backintime-git are passing now. |
Hi, I have an up to date Arch install and I am trying install the git version of backintime via the AUR using yay. But the install fails during unittesting for reason. Here is the output when it fails
OK
python3 -m unittest -b test/test_backintime.py
E..
ERROR: test_diagnostics_arg (test.test_backintime.TestBackInTime)
Traceback (most recent call last):
File "/home/af/.cache/yay/backintime-git/src/backintime/common/test/test_backintime.py", line 181, in test_diagnostics_arg
diagnostics = json.loads(output)
File "/usr/lib/python3.10/json/init.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Ran 3 tests in 3.040s
The text was updated successfully, but these errors were encountered: