def addUpdates(self, troves, uJob, jobSet, ineligible, keepList,
                   troveSource, resolveSource):
        # We found good suggestions, merge in those troves. Items
        # which are being removed by the current job cannot be
        # removed again.
        beingRemoved = set((x[0], x[1][0], x[1][1]) for x in
                            jobSet if x[1][0] is not None )
        beingInstalled = set((x[0], x[2][0], x[2][1]) for x in
                              jobSet if x[2][0] is not None )


        # add in foo if we are adding foo:lib.  That way 'conary
        # erase foo' will work as expected.
        if self.cfg.autoResolvePackages:
            packageJobs = self.addPackagesForComponents(troves,
                                                        troveSource,
                                                        beingInstalled)
            troves.update(packageJobs)

        newJob = self.client._updateChangeSet(troves, uJob,
                                              keepExisting = False,
                                              recurse = False,
                                              ineligible = beingRemoved,
                                              checkPrimaryPins = True)
        assert(not (newJob & jobSet))
        newJob = resolveSource.filterResolutionsPostUpdate(self.db, newJob,
                                                           troveSource)
        if not newJob:
            # we had potential solutions, but they would have
            # required implicitly switching the branch of a trove
            # on a user, and we don't do that.
            return False

        jobSet.update(newJob)
        return True
Add the given dep resolution solutions to the current jobSet.
dataset/ETHPy150Open sassoftware/conary/conary/conaryclient/resolve.py/DependencySolver.addUpdates