#1025057 crashes on filename with UTF-8 encoded character with non-canonical representation

Package:
python3-breezy
Source:
python3-breezy
Description:
distributed version control system - Python 3 library
Submitter:
Yadd
Date:
2025-03-14 18:39:03 UTC
Severity:
normal
#1025057#5
Date:
2022-11-29 12:35:54 UTC
From:
To:
Hi,

when trying to launch lintian-brush into node-node-sass repository, it
fails because it doesn't find a file in a UTF-8 encoded directory (but
file exists). Bug may be in python3-breezy but I'm not qualified to
analyze this problem. See below the report.

Cheers,
Yadd

$ lintian-brush
Traceback (most recent call last):
  File "/usr/bin/lintian-brush", line 33, in <module>
    sys.exit(load_entry_point('lintian-brush==0.139', 'console_scripts', 'lintian-brush')())
  File "/usr/lib/python3/dist-packages/lintian_brush/__main__.py", line 357, in main
    overall_result = run_lintian_fixers(
  File "/usr/lib/python3/dist-packages/lintian_brush/__init__.py", line 1124, in run_lintian_fixers
    check_clean_tree(local_tree, basis_tree=basis_tree, subpath=subpath)
  File "/usr/lib/python3/dist-packages/breezy/workspace.py", line 122, in check_clean_tree
    changes = local_tree.iter_changes(
  File "/usr/lib/python3/dist-packages/breezy/tree.py", line 266, in iter_changes
    return intertree.iter_changes(include_unchanged, specific_files, pb,
  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1065, in iter_changes
    changes, source_extras, target_extras = self._iter_git_changes(
  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1092, in _iter_git_changes
    to_tree_sha, to_extras = self.target.git_snapshot(
  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1167, in git_snapshot
    return snapshot_workingtree(self, want_unversioned=want_unversioned)
  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1798, in snapshot_workingtree
    st = target._lstat(extra)
  File "/usr/lib/python3/dist-packages/breezy/git/workingtree.py", line 815, in _lstat
    return os.lstat(self.abspath(path))
FileNotFoundError: [Errno 2] No such file or directory: '/home/yadd/dev/debian/src/pkg-js/packages/node-node-sass/sass-spec/spec/output_styles/compact/libsass/Sáss-UŢF8/expected_output.css'

#1025057#14
Date:
2022-11-29 14:09:17 UTC
From:
To:
FWIW I've come across this specific filename before (not sure if it was this package).
IIRC it's not just the fact that it's UTF8 but rather that it uses a non-canonical
representation of the characters.

#1025057#17
Date:
2022-11-29 14:09:17 UTC
From:
To:
FWIW I've come across this specific filename before (not sure if it was this package).
IIRC it's not just the fact that it's UTF8 but rather that it uses a non-canonical
representation of the characters.