f0919e569848bc7c172f2ec9d2d47d17e6cb747a wong Thu Oct 27 15:24:55 2011 -0700 fix a reporting error in mkChangeNotes, added in fuctionality to show when newly revoked files go out as a result of a revoke and name change in one release diff --git python/lib/ucscgenomics/mkChangeNotes.py python/lib/ucscgenomics/mkChangeNotes.py index 562990f..8aa66b2 100644 --- python/lib/ucscgenomics/mkChangeNotes.py +++ python/lib/ucscgenomics/mkChangeNotes.py @@ -284,30 +284,37 @@ caps = title.upper() elif title == 'gbdbs': caps = "GBDBS" title = "gbdb files" elif title == "download": title = title + " files" caps = title.upper() if all: output.append("\n") output.append("%s:" % caps) output.append("New: %s" % len(new)) output.append("Untouched: %s" % len(untouched)) output.append("%s: %s" % (removeline, len(revoked))) output.append("New + Untouched: %s" % len(new | untouched)) output.append("%s: %s" % (totaline, len(all))) + intersect = new & revoked + if intersect: + output.append("") + output.append("The following exist in both new and revoked %s:" % title) + for i in intersect: + output.append("%s" % i) + if all and not summary: output.append("") output.append("New %s (%s):" % (title.title(), len(new))) output.extend(self.__printIter(new, path)) output.append("") output.append("Untouched %s (%s):" % (title.title(), len(untouched))) output.extend(self.__printIter(untouched, path)) output.append("") output.append("%s %s (%s):" % (removeline, title.title(), len(revoked))) output.extend(self.__printIter(revoked, path)) return output def __qaHeader(self, output, newTableSet, filesNoRevoke, newGbdbSet, newSupp, additionalList, revokedTables, revokedFiles, revokedGbdbs, pushFiles, pushGbdbs, args, c): output = [] tableSize = self.__getTableSize() @@ -358,36 +365,36 @@ newFiles = pushFiles - revokedFiles untouchedFiles = (totalFiles & oldReleaseFiles) - revokedFiles allGbdbs = newGbdbSet | oldGbdbSet | revokedGbdbs untouchedGbdbs = (newGbdbSet & oldGbdbSet) - revokedGbdbs allSupp = newSupplementalSet | oldSupplementalSet newSupp = newSupplementalSet - oldSupplementalSet removedSupp = oldSupplementalSet - newSupplementalSet untouchedSupp = oldSupplementalSet & newSupplementalSet allOther = additionalList | oldAdditionalList removedOther = oldAdditionalList - additionalList output.extend(self.__qaHeader(output, newTableSet, filesNoRevoke, newGbdbSet, newSupp, additionalList, revokedTableSet, revokedFiles, revokedGbdbs, pushFiles, pushGbdbs, args, c)) output.extend(self.__printSection(pushTables, untouchedTables, revokedTableSet, allTables, "tables", 0, args['summary'])) - output.extend(self.__printSection(newFiles, untouchedFiles, revokedFiles, allFiles, "download", self.releasePath, args['summary'])) + output.extend(self.__printSection(pushFiles, untouchedFiles, revokedFiles, allFiles, "download", self.releasePath, args['summary'])) output.extend(self.__printSection(pushGbdbs, untouchedGbdbs, revokedGbdbs, allGbdbs, "gbdbs", self.gbdbPath, args['summary'])) output.extend(self.__printSection(newSupp, untouchedSupp, removedSupp, allSupp, "supplemental", self.releasePath, args['summary'])) self.newTables = set(pushTables) - self.newFiles = set(self.__printIter(newFiles, self.releasePath)) + self.newFiles = set(self.__printIter(pushFiles, self.releasePath)) self.newGbdbs = set(self.__printIter(pushGbdbs, self.gbdbPath)) self.newSupplemental = set(self.__printIter(newSupp, self.releasePath)) self.newOthers = set(self.__printIter(additionalList, self.releasePath)) otherprint = len(allOther) if otherprint: output.append("\n") output.append("OTHER FILES:") output.append("New: %s" % len(additionalList)) output.append("Revoked/Replace: %s" % len(removedOther)) output.append("Total: %s" % len(allOther)) if otherprint and not args['summary']: output.append("") output.append("New Other Files (%s):" % len(additionalList)) output.extend(sorted(list(self.newOthers))) @@ -485,30 +492,33 @@ if int(self.releaseNew) > 1 and str(self.releaseOld) != 'solo': self.newReleaseFiles = c.releases[int(self.releaseNew)-1] self.oldReleaseFiles = c.releases[int(self.releaseOld)-1] self.newMdb = c.alphaMetaDb self.oldMdb = c.publicMetaDb #make a list of missing files self.missingFiles = self.__checkFilesForDropped() #check if all files listed in release directories have associated metaDb entries (self.newMdb, self.revokedSet, self.revokedFiles, self.atticSet, self.newSupplementalSet, newFileErrors) = self.checkMetaDbForFiles("alpha metaDb", "new") (self.oldMdb, spam, eggs, ham, self.oldSupplementalSet, oldFileErrors) = self.checkMetaDbForFiles("public metaDb", "old") + + + #checks to see that nothing has disappeared between public and alpha errors.extend(self.__checkAlphaForDropped("alpha metaDb", "stanza")) errors.extend(self.__checkMd5sums()) #checks and gets tables that are present, also returns a revoked set of tables for new (self.newTableSet, self.revokedTableSet, newTableError) = self.checkTableStatus("alpha metaDb", "new") (self.oldTableSet, spam, oldTableError) = self.checkTableStatus("public metaDb", "old") #same as above except for gbdbs (self.newGbdbSet, self.revokedGbdbs, newGbdbError) = self.getGbdbFiles("new") (self.oldGbdbSet, eggs, oldGbdbError) = self.getGbdbFiles("old") #fill in the errors errors.extend(newFileErrors) errors.extend(oldFileErrors)