~nacc/git-ubuntu:bug-fixes-1

Last commit made on 2017-06-20
Get this branch:
git clone -b bug-fixes-1 https://git.launchpad.net/~nacc/git-ubuntu
Only Nish Aravamudan can upload to this branch. If you are Nish Aravamudan please log in for upload directions.

Branch merges

Branch information

Name:
bug-fixes-1
Repository:
lp:~nacc/git-ubuntu

Recent commits

a286bba... by Nish Aravamudan

git ubuntu build: handle building a new upstream version

We need two changes to correctly build:
 - do not attempt to find the orig tarball in Debian or Ubuntu
 - do not attempt to symlink the orig tarball, because we are not
   caching it from another upload

62550c0... by Nish Aravamudan

GitUbuntuRepository: properly handle missing debian/changelog

If debian/changelog does not exist (e.g., on an orphan branch), the
parsing function(s) incorrectly return 'HEAD:debian/changelog missing'
directly from `git cat-file`. Instead, check for this case of not
finding the debian/changelog file and raising a GitUbuntuChangelogError.

45c0ac6... by Nish Aravamudan

git ubuntu import: missing parameter to merge_commit_to_devel_head

13b07dc... by Nish Aravamudan

git_repository: add changelog-parsing specific error class

This makes backtraces a bit clearer and also fixes a few cases of
calling sys.exit(1) with logging.exception() rather than just raising an
exception.

49ce3cd... by Nish Aravamudan

git ubuntu remote: source package name must be known

We need to exit with a failure code.

9c78d1e... by Nish Aravamudan

import-cron: do not attempt to re-import a failed import

e.g., if a publication to the SRU queues of three releases occurs for
one source package, that will show up as three publishing records. But
if the first fails (which needs to be debugged by a developer), the
following will also fail.

9bfbca9... by Nish Aravamudan

git ubuntu merge: pygit2 status() does not always match `git-status`

I am not entirely sure what status() is actually showing me, but it
seems to indicate lots of changes that `git` can't see.

aae07eb... by Robie Basak

Refactor queue sync

This was done in a spike. I don't think it's worth breaking it down for
this early stage script with only one known user (me). The changes
overlay each other significantly and I'm not confident the intermediate
commits are easy to get working anyway.

This adds --no-fetch, --source, --series, --parent, --orphan, --no-trim,
--new and --unapproved to modify the sync subcommand's behaviour. One
can now use this to pull queue tags into any git repository, which is
useful when working with package renames and similar.

I'm not sure it's appropriate for all of this functionality makes sense
to be in a command called "sync" any more; suggestions welcome.

eede33e... by Robie Basak

Add queue sync command

962212e... by Robie Basak

queue: handle KeyError on lookup_reference()

lookup_reference() raises KeyError rather than returning None, so handle
it this way instead.

Also explicitly document this behaviour in GitUbuntuRepository as we
rely on it.