Bugzilla – Bug 1142251
Duplicity crashes with --exclude-older-than
Last modified: 2020-01-10 18:00:03 UTC
Duplicity from the 20190717 release of Tumbleweed (duplicity-0.8.01-1.1.x86_64) fails when the --exclude-older-than option is used with a fully-specified date in ISO format. See below. This didn't happen with the version of duplicity from the 20190704 release. > duplicity --exclude-older-than 2019-03-17T19:50:06-07:00 / ~/NoBackup/DuplicityTest Traceback (innermost last): File "/usr/bin/duplicity", line 1711, in <module> with_tempdir(main) File "/usr/bin/duplicity", line 1697, in with_tempdir fn() File "/usr/bin/duplicity", line 1530, in main action = commandline.ProcessCommandLine(sys.argv[1:]) File "/usr/lib64/python3.7/site-packages/duplicity/commandline.py", line 1153, in ProcessCommandLine args = parse_cmdline_options(cmdline_list) File "/usr/lib64/python3.7/site-packages/duplicity/commandline.py", line 683, in parse_cmdline_options (options, args) = parser.parse_args(arglist) File "/usr/lib64/python3.7/optparse.py", line 1387, in parse_args stop = self._process_args(largs, rargs, values) File "/usr/lib64/python3.7/optparse.py", line 1427, in _process_args self._process_long_opt(rargs, values) File "/usr/lib64/python3.7/optparse.py", line 1501, in _process_long_opt option.process(opt, value, values, self) File "/usr/lib64/python3.7/optparse.py", line 785, in process self.action, self.dest, opt, value, values, parser) File "/usr/lib64/python3.7/site-packages/duplicity/commandline.py", line 203, in take_action self, action, dest, opt, value, values, parser) File "/usr/lib64/python3.7/optparse.py", line 805, in take_action self.callback(self, opt, value, parser, *args, **kwargs) File "/usr/lib64/python3.7/site-packages/duplicity/commandline.py", line 261, in add_selection select_opts.append((util.fsdecode(option), util.fsdecode(additional_arg))) File "/usr/lib64/python3.7/os.py", line 821, in fsdecode filename = fspath(filename) # Does type-checking of `filename`. TypeError: expected str, bytes or os.PathLike object, not int
I've been wrestling with this again in Tumbleweed 20190814. I noticed that the version of duplicity in Tumbleweed is the duplicity project's development release (0.8.03), whereas the version that does not have this bug is their stable release (0.7.19), the one that worked from Tumbleweed 20190704. Would it make sense to use 0.7.19 for Tumbleweed until the duplicity project's 0.8.x series is more stable?
I reported this to the Duplicity project, and the recently released version 0.8.08 from https://launchpad.net/duplicity resolves the problem. Hopefully 0.8.08 will make its way to Tumbleweed soon.
I just noticed that version 0.8.08 is now provided in the Tumbleweed repository., and it's resolved my issue with --exclude-older-than. Thanks.