~racb/git-ubuntu:nacc-breakdown/ubuntu-package-merge-base

Last commit made on 2018-01-18
Get this branch:
git clone -b nacc-breakdown/ubuntu-package-merge-base https://git.launchpad.net/~racb/git-ubuntu
Only Robie Basak can upload to this branch. If you are Robie Basak please log in for upload directions.

Branch merges

Branch information

Name:
nacc-breakdown/ubuntu-package-merge-base
Repository:
lp:~racb/git-ubuntu

Recent commits

1db5387... by Nish Aravamudan

gitubuntu: handle finding Ubuntu merge base with new importer layout

`git ubuntu merge` relies on the old importer algorithm setting a
publishing parent around, so we can find the common ancestor between
new/debian and old/ubuntu, via `git merge-base`.

This works even for cases where the branch pointers are forcibly moved,
as long as old/debian is an ancestor of new/debian. But when old/ubuntu
was based on an NMU or security update, there is no guarantee that
new/debian will have that base in its history.

Add a helper method to find the Ubuntu merge point, which will try and
verify that the merge-base found by Git has the correct version. If it
does not, it will fall back to just using the import tag for that
version. The first case corresponds to imports with the old algorithm
and the second to imports with the new algorithm.

LP: #1734364

e094d56... by Christian Ehrhardt 

add collectd to whitelist

Signed-off-by: Christian Ehrhardt <email address hidden>

35a2b40... by Christian Ehrhardt 

add ubuntu-fan to whitelist

Signed-off-by: Christian Ehrhardt <email address hidden>

967f050... by Robie Basak

Merge remote-tracking branch 'paelzer/add-ubuntu-desktop-sniff-packages' into HEAD

52a4b3f... by Nish Aravamudan

lint: properly pass arguments to do_lint by keyword

They were passed in the wrong order before.

LP: #1735744.

57ca3bd... by Robie Basak

Fix read_timestamps()

This fails hard in the dictionary comprehension over timestamps since it
expects tuples of items instead of a list of keys. Use items() to
correctly provide the former.

f69cbb6... by Robie Basak

Correctly append '.new' to filename for rename

FileNotFoundError: [Errno 2] No such file or directory:
'/tmp/import-source-packages-log/.new'

Expected: '/tmp/import-source-packages-log.new'.

This should be a simple append rather than an os.path.join. Sorry I
missed this in my review.

e7002be... by Robie Basak

Add quilt env handling tests

f7a28df... by Robie Basak

Log applied import error traceback on exception

As we're swallowing the error in a catch-all exception handler here,
it's helpful if we at least log the full exception and traceback.

I've also filed LP 1734349 to see if this could be improved (I'm not
sure).

71d7004... by Robie Basak

import_patches_applied_tree: use correct quilt env

When quilt runs, we must use GitUbuntuRepository:quilt_env in order to
make sure that QUILT_* environment variables are set correctly.
Otherwise we rely on the importer runner having the correct quilt
environment set, which may not be the case.

Also see LP 1734137: separately we need to ensure that any /etc/quiltrc
or ~/.quiltrc is ignored correctly, but I'm treating that as a separate
bug as it needs a more significant refactor to wrap all quilt calls. We
should fix that bug before declaring hash stability, but it isn't as
important as this fix as that one is less likely to be a problem in
practice on our production importer.