The UCA source pkg class was its own specific class, but with the
addition of the generic PPA source pkg class, the UCA class is just
a specific case of PPA. Changing it to a subclass of the PPA class
simplifies code.
Also update getBinaries() to allow retreival by binary name
This significantly speeds up binary file lookup for non-published
package versions, since we can get the list of binary urls, but
then have to look up the BPPH for each of those urls, which is slow.
If the user only wants a specific binary package and/or arch, this
speeds up getting that, especially for packages with a lot of binary
files (like the kernel).
Change dsc verification to fail only if the public key was available, but
signature verification failed. If no public key is available for the dsc,
print warning only. (LP: #1700846)
Also add pull-* parameter --no-verify-signature to manually prevent failure
when signature verification fails.
remove the pull-lp-source.1 and pull-debian-source.1 man pages,
consolidating them both into a pull-pkg.1 man page. Also create
symlinks for all associated scripts pointing to pull-pkg.1 man page.
for backwards compatibility (i.e. to keep pull-lp-source,
pull-debian-source, and pull-uca-source) and for ease of use,
create scripts that default the pull-pkg -p and -D params
re-create pull-pkg script also, to call ubuntutools/pullpkg.py
without any default pull or distro parameters
rename only with no content changes, so next commit shows code
changes converting script pull-pkg to module pullpkg.py
This also changes the file mode from 755 to 644, since we're changing
an executable script into a module.
New pull-pkg allows pulling source, debs, ddebs, or udebs, or just
listing all package files. Also, package lookup by binary name is done
automatically.
look in its PPA for its SPPHs
look up the development (latest) UCA release if not specified
use the 'series' param as the UCA release, instead of 'uca_release' param
instead of a function that calls the system program rmadison, use
a fully-functional class to interface with the madison api, as well
as the debian snapshot api
Allow specifying series instead of version, to find the latest
version in that series; or only specify package name, to get the
latest version in the devel series
verify it can parse/load DSC when created
throw PackageNotFoundException from lp_spph if can't find package
update test case expected order of url processing
change PEP263 coding value from invalid UTF-8 to valid utf-8
don't try to import debianbts, just import debianbts
migrate to argparge
add --verbose option
actually make --dry-run do a dry run
handle multiple cmdline bug numbers
correctly get the bug summary
without specific version matching, a simple 'apt install ubuntu-dev-tools'
on a system with an older version of ubuntu-dev-tools and deps will leave
the older python-ubuntutools installed, which may not work with the updated
ubuntu-dev-tools code.