mirror of
https://github.com/openSUSE/osc.git
synced 2025-02-26 04:02:11 +01:00
fix and use comparePac()
This commit is contained in:
parent
7d8834a0a3
commit
7675c55242
42
osc/core.py
42
osc/core.py
@ -944,7 +944,7 @@ class Package:
|
|||||||
|
|
||||||
return state
|
return state
|
||||||
|
|
||||||
def comparePac(self, pac):
|
def comparePac(self, cmp_pac):
|
||||||
"""
|
"""
|
||||||
This method compares the local filelist with
|
This method compares the local filelist with
|
||||||
the filelist of the passed package to see which files
|
the filelist of the passed package to see which files
|
||||||
@ -955,17 +955,21 @@ class Package:
|
|||||||
added_files = []
|
added_files = []
|
||||||
removed_files = []
|
removed_files = []
|
||||||
|
|
||||||
for file in self.filenamelist:
|
for file in self.filenamelist+self.filenamelist_unvers:
|
||||||
if not file in self.to_be_deleted:
|
state = self.status(file)
|
||||||
if file in pac.filenamelist:
|
if state == 'A' and (not file in cmp_pac.filenamelist):
|
||||||
if dgst(file) != pac.findfilebyname(file).md5:
|
added_files.append(file)
|
||||||
changed_files.append(file)
|
elif file in cmp_pac.filenamelist and state == 'D':
|
||||||
else:
|
|
||||||
added_files.append(file)
|
|
||||||
|
|
||||||
for file in pac.filenamelist:
|
|
||||||
if (not file in self.filenamelist) or (file in self.to_be_deleted):
|
|
||||||
removed_files.append(file)
|
removed_files.append(file)
|
||||||
|
elif state == ' ' and not file in cmp_pac.filenamelist:
|
||||||
|
added_files.append(file)
|
||||||
|
elif file in cmp_pac.filenamelist and state != 'A' and state != '?':
|
||||||
|
if dgst(os.path.join(self.absdir, file)) != cmp_pac.findfilebyname(file).md5:
|
||||||
|
changed_files.append(file)
|
||||||
|
for file in cmp_pac.filenamelist:
|
||||||
|
if not file in self.filenamelist:
|
||||||
|
removed_files.append(file)
|
||||||
|
removed_files = set(removed_files)
|
||||||
|
|
||||||
return changed_files, added_files, removed_files
|
return changed_files, added_files, removed_files
|
||||||
|
|
||||||
@ -2120,21 +2124,7 @@ def make_diff(wc, revision):
|
|||||||
else:
|
else:
|
||||||
diff.append('osc: unable to find \'%s\' in revision %s' % (file, cmp_pac.rev))
|
diff.append('osc: unable to find \'%s\' in revision %s' % (file, cmp_pac.rev))
|
||||||
else:
|
else:
|
||||||
for file in wc.filenamelist+wc.filenamelist_unvers:
|
changed_files, added_files, removed_files = wc.comparePac(cmp_pac)
|
||||||
state = wc.status(file)
|
|
||||||
if state == 'A' and (not file in cmp_pac.filenamelist):
|
|
||||||
added_files.append(file)
|
|
||||||
elif file in cmp_pac.filenamelist and state == 'D':
|
|
||||||
removed_files.append(file)
|
|
||||||
elif state == ' ' and not file in cmp_pac.filenamelist:
|
|
||||||
added_files.append(file)
|
|
||||||
elif file in cmp_pac.filenamelist and state != 'A' and state != '?':
|
|
||||||
if dgst(os.path.join(wc.absdir, file)) != cmp_pac.findfilebyname(file).md5:
|
|
||||||
changed_files.append(file)
|
|
||||||
for file in cmp_pac.filenamelist:
|
|
||||||
if not file in wc.filenamelist:
|
|
||||||
removed_files.append(file)
|
|
||||||
removed_files = set(removed_files)
|
|
||||||
|
|
||||||
for file in changed_files:
|
for file in changed_files:
|
||||||
diff.append(diff_hdr % file)
|
diff.append(diff_hdr % file)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user