Drop use of lintian-brush.

This commit is contained in:
Jelmer Vernooij 2021-03-22 15:46:09 +00:00
parent 7f55169fc6
commit 02177527c3
No known key found for this signature in database
GPG key ID: 579C160D4C9E23E8

View file

@ -19,10 +19,11 @@ __all__ = [
"build_incrementally", "build_incrementally",
] ]
from datetime import datetime
import logging import logging
import os import os
import sys import sys
from typing import List, Set, Optional, Type from typing import List, Set, Optional, Type, Tuple
from debian.deb822 import ( from debian.deb822 import (
Deb822, Deb822,
@ -32,6 +33,7 @@ from debian.deb822 import (
from breezy.commit import PointlessCommit from breezy.commit import PointlessCommit
from breezy.mutabletree import MutableTree from breezy.mutabletree import MutableTree
from breezy.tree import Tree from breezy.tree import Tree
from debmutate.changelog import ChangelogEditor
from debmutate.control import ( from debmutate.control import (
ensure_relation, ensure_relation,
ControlEditor, ControlEditor,
@ -49,12 +51,40 @@ from debmutate.reformatting import (
try: try:
from breezy.workspace import reset_tree from breezy.workspace import reset_tree
except ImportError: except ImportError: # breezy < 3.2
from lintian_brush import reset_tree def delete_items(deletables, dry_run=False):
"""Delete files in the deletables iterable"""
import errno
import shutil
def onerror(function, path, excinfo):
"""Show warning for errors seen by rmtree.
"""
# Handle only permission error while removing files.
# Other errors are re-raised.
if function is not os.remove or excinfo[1].errno != errno.EACCES:
raise
logging.warning('unable to remove %s' % path)
for path, subp in deletables:
if os.path.isdir(path):
shutil.rmtree(path, onerror=onerror)
else:
try:
os.unlink(path)
except OSError as e:
# We handle only permission error here
if e.errno != errno.EACCES:
raise e
logging.warning('unable to remove "%s": %s.', path, e.strerror)
def reset_tree(local_tree, subpath=''):
from breezy.transform import revert
from breezy.clean_tree import iter_deletables
revert(local_tree, local_tree.branch.basis_tree(),
[subpath] if subpath not in ('.', '') else None)
deletables = list(iter_deletables(
local_tree, unknown=True, ignored=False, detritus=False))
delete_items(deletables)
from lintian_brush.changelog import (
add_changelog_entry,
)
from debmutate._rules import ( from debmutate._rules import (
dh_invoke_add_with, dh_invoke_add_with,
@ -283,9 +313,9 @@ def commit_debian_changes(
with tree.lock_write(): with tree.lock_write():
try: try:
if update_changelog: if update_changelog:
add_changelog_entry( cl_path = tree.abspath(os.path.join(subpath, "debian/changelog"))
tree, os.path.join(subpath, "debian/changelog"), [summary] with ChangelogEditor(cl_path) as editor:
) editor.add_entry([summary])
debcommit(tree, committer=committer, subpath=subpath) debcommit(tree, committer=committer, subpath=subpath)
else: else:
tree.commit( tree.commit(