From d7d2cc2bc7a4238e1048a7791fd61fbce89b3004 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eray=20=C3=96zkural?= Date: Mon, 12 Jun 2006 09:59:02 +0000 Subject: [PATCH] * fix: report file conflicts as errors --- pisi/atomicoperations.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pisi/atomicoperations.py b/pisi/atomicoperations.py index 47b2c598..83dab24b 100644 --- a/pisi/atomicoperations.py +++ b/pisi/atomicoperations.py @@ -154,12 +154,17 @@ class Install(AtomicOperation): ctx.packagedb.add_package(self.pkginfo, pisi.itembyrepodb.thirdparty) # check file conflicts + file_conflicts = [] for file in self.files.list: if ctx.filesdb.has_file(file.path): pkg, existing_file = ctx.filesdb.get_file(file.path) if pkg != self.pkginfo.name: - #raise Error(_('Trying to overwrite an existing file: %s') % file.path) - ctx.ui.warning(_('Trying to overwrite an existing file: %s') % file.path) + file_conflicts.append( (pkg, existing_file) ) + if file_conflicts: + file_conflicts_str = "" + for (pkg, existing_file) in file_conflicts: + file_conflicts_str += _("%s from %s package") % (existing_file.path, pkg) + raise Error(_('File conflicts:\n%s') % file_conflicts_str) def check_reinstall(self): "check reinstall, confirm action, and schedule reinstall"