tools/git-buildpackage.git
10 years agoGitRepository/add_files: add new option 'untracked'
Markus Lehtonen [Fri, 6 Jul 2012 12:55:19 +0000 (15:55 +0300)]
GitRepository/add_files: add new option 'untracked'

With this option you can either only update already tracked files to
index the (untracked=False) or add new files, too.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoconfig: support for per-tree config files
Markus Lehtonen [Mon, 25 Mar 2013 08:56:47 +0000 (10:56 +0200)]
config: support for per-tree config files

Add support for reading the local config file(s) from a given git
tree-ish.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoconfig: read the right config if run from subdir
Markus Lehtonen [Fri, 6 Jul 2012 06:58:06 +0000 (09:58 +0300)]
config: read the right config if run from subdir

A step towards being able to run GBP tools from subdirectories.

Now expands '%(top_dir)s' and '%(git_dir)s' in config file path to root
of the working directory and git metadata directory, respectively.

Also, adds a new method _read_config_file() in preparation for
supporting per-tree config files.

Fixes tests.test_Config: currently the only correct way to define the
config file(s) to be parsed is by using the GBP_CONF_FILES environment
variable.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agotests.testutils: add ls_zip() helper
Markus Lehtonen [Thu, 29 Aug 2013 07:37:56 +0000 (10:37 +0300)]
tests.testutils: add ls_zip() helper

For listing zip contents.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoimport-orig: rework sourcecode preparation and filtering
Markus Lehtonen [Wed, 14 Nov 2012 07:03:37 +0000 (09:03 +0200)]
import-orig: rework sourcecode preparation and filtering

Take in to use the newly added prepare_sources() function. Drop dead,
unneeded code.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoimport-orig: new function for filtering/re-packing sources
Markus Lehtonen [Mon, 26 Aug 2013 07:22:00 +0000 (10:22 +0300)]
import-orig: new function for filtering/re-packing sources

Introduces a new function prepare_sources() that prepares upstream
sources for importing into upstream branch and pristine-tar. That
includes unpacking, filtering and re-packing sources. What somewhat
complicates the logic is that it tries to avoid excess unpacking/packing
of the sources.

Also fixes the unpacking / filtering / repacking logic which was broken
with some parameter combinations.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource.unpack: return UpstreamSource instance
Markus Lehtonen [Thu, 6 Jun 2013 12:19:37 +0000 (15:19 +0300)]
UpstreamSource.unpack: return UpstreamSource instance

Trying to keep UpstreamSource in consistent state so that unpacked and
packed sources are kept in sync.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource.pack: reuse unpacked dir if no filter is used
Markus Lehtonen [Thu, 6 Jun 2013 12:21:48 +0000 (15:21 +0300)]
UpstreamSource.pack: reuse unpacked dir if no filter is used

Set the unpacked attribute to the source dir if the content is not
filtered.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource: implement prefix guessing
Markus Lehtonen [Thu, 22 Aug 2013 13:24:13 +0000 (16:24 +0300)]
UpstreamSource: implement prefix guessing

Add a new attribure 'prefix', i.e. the "leading directory name" in an
archive. For example, this usually is '<name>-<version>' in release
tarballs.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
10 years agoUpstreamSource: check that the sources exist
Markus Lehtonen [Fri, 23 Aug 2013 11:04:12 +0000 (14:04 +0300)]
UpstreamSource: check that the sources exist

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agotests: test find_source() with unittest
Markus Lehtonen [Mon, 13 Jan 2014 16:39:05 +0000 (18:39 +0200)]
tests: test find_source() with unittest

Change doctests to unittests in order to have more flexibility in
testing.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource: store the absolute path
Markus Lehtonen [Fri, 23 Aug 2013 11:01:39 +0000 (14:01 +0300)]
UpstreamSource: store the absolute path

This is more robust and reliable, e.g. in case cwd is changed.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource: move version guessing logic to PkgPolicy
Markus Lehtonen [Fri, 23 Aug 2013 10:39:19 +0000 (13:39 +0300)]
UpstreamSource: move version guessing logic to PkgPolicy

PkgPolicy is more logical context, for example if guessing version from
a plain filename and not a real file.

Also, changes guess_version() to always return a tuple to simplify
checking its return value.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource.guess_version: don't check for directories
Markus Lehtonen [Mon, 26 Aug 2013 13:47:57 +0000 (16:47 +0300)]
UpstreamSource.guess_version: don't check for directories

Directories are not recognized anyway, if guess_version() is called for
non-existent sources. And, parse_archive_filename() works fine for
directory names, too.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource.guess_version: recognise debian native tarballs
Markus Lehtonen [Thu, 6 Jun 2013 11:53:45 +0000 (14:53 +0300)]
UpstreamSource.guess_version: recognise debian native tarballs

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource/guess_version: detect more compression formats
Markus Lehtonen [Thu, 27 Sep 2012 07:24:28 +0000 (10:24 +0300)]
UpstreamSource/guess_version: detect more compression formats

By utilizing the parse_archive_filename() function that detects e.g.
"alias suffixes" such as 'tgz'.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource: introduce is_tarball() method
Markus Lehtonen [Mon, 9 Jul 2012 14:19:27 +0000 (17:19 +0300)]
UpstreamSource: introduce is_tarball() method

New method for checking if the sources are a tarball (possibly for
checking if the sources are committable by pristine-tar).

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource: add 'archive_fmt' and 'compression' properties
Markus Lehtonen [Mon, 9 Jul 2012 14:16:21 +0000 (17:16 +0300)]
UpstreamSource: add 'archive_fmt' and 'compression' properties

New properties for easily getting the archive format (tar, zip, ...) and
compression format (gzip, bzip2, ...) of the sources.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoIntroduce PkgPolicy.is_valid_orig_archive()
Markus Lehtonen [Mon, 9 Jul 2012 13:10:37 +0000 (16:10 +0300)]
Introduce PkgPolicy.is_valid_orig_archive()

A new method for checking if the given filename is usable as a orig
(upstream) source archive.

Also, takes this method into use in the UpstreamSource class.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoChange UpstreamSource to have PkgPolicy
Markus Lehtonen [Mon, 9 Jul 2012 12:17:24 +0000 (15:17 +0300)]
Change UpstreamSource to have PkgPolicy

The UpstreamSource class now gets a PkgPolicy in it's initialization.
Also, introduces new DebiaUpstreamSource class which is taken in use in
the scripts.

The PkgPolicy is not yet used for anything in UpstreamSource.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoUpstreamSource.pack: support prefix mangling
Markus Lehtonen [Thu, 14 Jun 2012 16:30:26 +0000 (19:30 +0300)]
UpstreamSource.pack: support prefix mangling

Add support for changing the prefix directory inside the tarball that is
generated. Also, fixes a bug that caused a "prefix-less" tarball to get
one, if unpacked and then repacked.

Also, adds this support to repack_source() in common/import_orig.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoimport-orig: move repacked_tarball_name() out from common
Markus Lehtonen [Fri, 15 Jun 2012 06:00:35 +0000 (09:00 +0300)]
import-orig: move repacked_tarball_name() out from common

Moves repacked_tarball_name() from scripts/common back to the
Debian-specific script. The logic is too Debian-specific for RPM, after
all.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoimport-orig: simplify repack_source() and tmpdir handling
Markus Lehtonen [Fri, 15 Jun 2012 05:43:12 +0000 (08:43 +0300)]
import-orig: simplify repack_source() and tmpdir handling

Now a tmpdir is always created and sources are always unpacked into
there.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoimport-orig: implement --create-missing-branches option
Markus Lehtonen [Wed, 12 Feb 2014 13:11:30 +0000 (15:11 +0200)]
import-orig: implement --create-missing-branches option

Create the upstream branch if it does not exist. Use the same option
name that import-dsc has.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoMove get_compression() out of pkg.PkgPolicy class
Markus Lehtonen [Tue, 15 May 2012 07:02:40 +0000 (10:02 +0300)]
Move get_compression() out of pkg.PkgPolicy class

Renames the function to parse_archive_filename() and changes it's
return values. Filename parsing is merely generic functionality, not
tied to any packaging policy.

The function now returns the base name of the file (that is, filename
without, archive and compression extensions), archive format and
compression method. Adds supported archive formats 'tar' and 'zip' and
file extension aliases, e.g. 'tgz'.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: enable building html docs with docbook2html
Markus Lehtonen [Mon, 13 Feb 2012 10:28:13 +0000 (12:28 +0200)]
docs: enable building html docs with docbook2html

This is useful if sgml2x package is not available.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: add diff_status method
Markus Lehtonen [Fri, 14 Sep 2012 10:40:14 +0000 (13:40 +0300)]
GitRepository: add diff_status method

This is a method of getting the filename and status information of a
diff. That is, a list of files that changed and their status, "added",
"modified" etc.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agogbp.git: Reimplement rfc822 date parsing without dateutil
Ed Bartosh [Wed, 30 May 2012 06:02:55 +0000 (09:02 +0300)]
gbp.git: Reimplement rfc822 date parsing without dateutil

In order to get rid of dependency to dateutil.

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agopq/parse_gbp_commands: return non-matched lines
Markus Lehtonen [Thu, 30 Jan 2014 15:46:18 +0000 (17:46 +0200)]
pq/parse_gbp_commands: return non-matched lines

In order to make it easy to re-use this function in changelog
generation.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.add_files: consistently update ALL tracked files
Markus Lehtonen [Tue, 3 Sep 2013 13:09:11 +0000 (16:09 +0300)]
GitRepository.add_files: consistently update ALL tracked files

Use the --all option of git-add so that all tracked files are updated in
all conditions. Previously deletion of tracked files was not staged, for
example.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.add_files: use GitArgs
Markus Lehtonen [Fri, 6 Jul 2012 12:51:14 +0000 (15:51 +0300)]
GitRepository.add_files: use GitArgs

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: allow repo inititialization from subdir
Markus Lehtonen [Tue, 5 Jun 2012 11:55:19 +0000 (14:55 +0300)]
GitRepository: allow repo inititialization from subdir

This allows initialization of a GitRepository object, even if the
current working directory (or path given to GitRepository) is not the
top level directory of the git repository.

Don't guess the git meta data dir, but, take it as reported by git
itself.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: Implement status method
Ed Bartosh [Wed, 6 Jun 2012 11:45:44 +0000 (14:45 +0300)]
GitRepository: Implement status method

Simple wrapper to the git-status command.

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: raise GitRepositoryError instead of GbpError
Markus Lehtonen [Mon, 25 Mar 2013 13:57:24 +0000 (15:57 +0200)]
GitRepository: raise GitRepositoryError instead of GbpError

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository/rev_parse: use _git_inout()
Markus Lehtonen [Tue, 11 Sep 2012 12:08:13 +0000 (15:08 +0300)]
GitRepository/rev_parse: use _git_inout()

instead of the deprecated _git_getoutput() method.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository/git_command: strip stderr output in case of error
Markus Lehtonen [Wed, 11 Dec 2013 13:50:13 +0000 (15:50 +0200)]
GitRepository/git_command: strip stderr output in case of error

In order to get rid of extra line feeds in exception message.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.archive: add 'paths' option
Markus Lehtonen [Tue, 17 Sep 2013 11:47:21 +0000 (14:47 +0300)]
GitRepository.archive: add 'paths' option

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.create_branch: add 'force' option
Markus Lehtonen [Fri, 13 Sep 2013 06:53:16 +0000 (09:53 +0300)]
GitRepository.create_branch: add 'force' option

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.commit_files: add edit argument
Markus Lehtonen [Wed, 5 Feb 2014 14:11:42 +0000 (16:11 +0200)]
GitRepository.commit_files: add edit argument

In order to be able to spawn an editor, similarly to other commitX
methods in GitRepository.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.commit_all: add committer_info argument
Markus Lehtonen [Wed, 5 Feb 2014 14:11:42 +0000 (16:11 +0200)]
GitRepository.commit_all: add committer_info argument

For setting the committer name/email/date - similarly to author_info.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.commit_files: add committer_info argument
Markus Lehtonen [Wed, 5 Feb 2014 14:11:42 +0000 (16:11 +0200)]
GitRepository.commit_files: add committer_info argument

For setting the committer name/email/date - similarly to author_info.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGbpOptionParser: allow using the default 'dest' attribute
Markus Lehtonen [Mon, 20 May 2013 08:28:51 +0000 (11:28 +0300)]
GbpOptionParser: allow using the default 'dest' attribute

Make it possible to add options without explicitly defining the 'dest'
attribute - in which case the default of OptionParser is used.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: implement create_tree method
Markus Lehtonen [Thu, 10 Apr 2014 08:30:06 +0000 (11:30 +0300)]
GitRepository: implement create_tree method

New method for creating tree objects from a directory content.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.archive: drop the '**kwargs' argument
Markus Lehtonen [Thu, 12 Sep 2013 10:36:08 +0000 (13:36 +0300)]
GitRepository.archive: drop the '**kwargs' argument

Unused and misleading.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: fix the 'edit' mode in commit methods
Markus Lehtonen [Thu, 6 Feb 2014 07:22:59 +0000 (09:22 +0200)]
GitRepository: fix the 'edit' mode in commit methods

Previously the editor would not show in the shell because stdout was
captured.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: allow interactive commands
Markus Lehtonen [Thu, 6 Feb 2014 07:17:56 +0000 (09:17 +0200)]
GitRepository: allow interactive commands

Make it possible for git commands to output directly to stdout without
redirection (i.e. capturing their stdout stream).

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agobuildpackage/dump_tree: add 'recursive' option
Markus Lehtonen [Tue, 17 Sep 2013 12:13:40 +0000 (15:13 +0300)]
buildpackage/dump_tree: add 'recursive' option

For selecting whether to dump all the files recursively or just the top
level directory of the tree.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agocommon/buildpackage: use GitRepository for submodules
Markus Lehtonen [Thu, 12 Sep 2013 10:30:36 +0000 (13:30 +0300)]
common/buildpackage: use GitRepository for submodules

Initialize a GitRepository object for each submodule in
git_archive_submodules().

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agobuildpackage/dump_tree: use GitRepository.archive()
Markus Lehtonen [Tue, 5 Jun 2012 12:18:24 +0000 (15:18 +0300)]
buildpackage/dump_tree: use GitRepository.archive()

Make dump_tree() utilize the GitRepository.archive() method - similarly
to git_archive_submodules() - instead of ad-hoc Python pipes. This makes
dump_tree() work independent of the callers current working directory.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agobuildpackage/git_archive_single: use GitRepository.archive()
Markus Lehtonen [Tue, 15 May 2012 15:13:43 +0000 (18:13 +0300)]
buildpackage/git_archive_single: use GitRepository.archive()

Use GitRepository.archive() method like git_archive_submodules() does.
This makes it possible to call git_archive_single() independent of the
callers current working directory.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoChange compressor cmdline opts in compressor_opts to a list
Markus Lehtonen [Tue, 18 Sep 2012 15:16:50 +0000 (18:16 +0300)]
Change compressor cmdline opts in compressor_opts to a list

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agocommon/buildpackage: support for different archive formats
Markus Lehtonen [Tue, 15 May 2012 13:37:33 +0000 (16:37 +0300)]
common/buildpackage: support for different archive formats

Adds support for defining the archive format of the output of
git_archive_single(), e.g. 'zip'. Defaults to 'tar', as before.

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.archive: support getting tar data as return value
Markus Lehtonen [Thu, 12 Sep 2013 07:47:35 +0000 (10:47 +0300)]
GitRepository.archive: support getting tar data as return value

Return tar data as a generator object, if the 'output' option is not
defined.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository.__git_inout: prevent blocking of stdin
Markus Lehtonen [Wed, 18 Sep 2013 14:20:41 +0000 (17:20 +0300)]
GitRepository.__git_inout: prevent blocking of stdin

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoGitRepository: new method for getting git output as generator
Markus Lehtonen [Tue, 10 Sep 2013 12:29:31 +0000 (15:29 +0300)]
GitRepository: new method for getting git output as generator

Add a new _git_inout2() helper method that returns the git output
(stdout) as a generator - instead of all stdout data in one string.
Useful for handling git commands that are expected to have a lot of
stdout data, like git-archive.

Also, changes the private __git_inout() method to return a generator.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: document common options in one place
Markus Lehtonen [Wed, 21 May 2014 07:24:21 +0000 (10:24 +0300)]
docs: document common options in one place

Move the documentation of command line options common to all tools into
one file. This unifies the manpage documentation and should make its
maintenance easier. Also, this change adds missing options to several
manpages.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: cosmetic reformat of git-dch manpage sgml source
Markus Lehtonen [Fri, 9 May 2014 11:40:25 +0000 (14:40 +0300)]
docs: cosmetic reformat of git-dch manpage sgml source

Makes the sgml source more readable. Fix indentation, tab to space, wrap
lines.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: cosmetic reformat of pq manpage sgml source
Markus Lehtonen [Fri, 9 May 2014 11:40:25 +0000 (14:40 +0300)]
docs: cosmetic reformat of pq manpage sgml source

Makes the sgml source more readable. Fix indentation, tab to space, wrap
lines.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: cosmetic reformat of import-dsc manpage sgml source
Markus Lehtonen [Fri, 9 May 2014 11:40:25 +0000 (14:40 +0300)]
docs: cosmetic reformat of import-dsc manpage sgml source

Makes the sgml source more readable. Fix indentation, tab to space, wrap
lines.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: cosmetic reformat of import-orig manpage sgml source
Markus Lehtonen [Fri, 9 May 2014 11:40:25 +0000 (14:40 +0300)]
docs: cosmetic reformat of import-orig manpage sgml source

Makes the sgml source more readable. Fix indentation, tab to space, wrap
lines.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: change option argument names to uppercase in buildpackage man
Markus Lehtonen [Fri, 9 May 2014 12:04:20 +0000 (15:04 +0300)]
docs: change option argument names to uppercase in buildpackage man

For the sake of consistency.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: cosmetic reformat of buildpackage manpage sgml source
Markus Lehtonen [Fri, 9 May 2014 11:40:25 +0000 (14:40 +0300)]
docs: cosmetic reformat of buildpackage manpage sgml source

In order to make the sgml source more readable. Fix indentation, tab to
space, wrap lines.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: more flexible version parsing in Makefile
Markus Lehtonen [Thu, 8 May 2014 12:35:26 +0000 (15:35 +0300)]
docs: more flexible version parsing in Makefile

Add dash to the list of valid version characters.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: document the --customizations option of gbp dch
Markus Lehtonen [Mon, 26 May 2014 10:24:23 +0000 (13:24 +0300)]
docs: document the --customizations option of gbp dch

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: document the --interactive option of gbp-import-orig
Markus Lehtonen [Wed, 21 May 2014 10:57:52 +0000 (13:57 +0300)]
docs: document the --interactive option of gbp-import-orig

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: document the --git-[no-]submodules option
Markus Lehtonen [Thu, 8 May 2014 14:40:16 +0000 (17:40 +0300)]
docs: document the --git-[no-]submodules option

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: document the --color-scheme option
Markus Lehtonen [Thu, 8 May 2014 13:19:19 +0000 (16:19 +0300)]
docs: document the --color-scheme option

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: sgml syntax fix, add missing semicolons
Markus Lehtonen [Mon, 5 May 2014 12:14:45 +0000 (15:14 +0300)]
docs: sgml syntax fix, add missing semicolons

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: reference buildpackage and pq in the gbp (supercommand) manpage
Markus Lehtonen [Wed, 30 Apr 2014 10:21:22 +0000 (13:21 +0300)]
docs: reference buildpackage and pq in the gbp (supercommand) manpage

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: hyperlink references to other manpages
Markus Lehtonen [Wed, 30 Apr 2014 08:30:11 +0000 (11:30 +0300)]
docs: hyperlink references to other manpages

Change references to other gbp manpages to linked refs so that we get
hyperlinks in the html manpages.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agodocs: add some missing commas to manpages
Markus Lehtonen [Wed, 30 Apr 2014 10:40:12 +0000 (13:40 +0300)]
docs: add some missing commas to manpages

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agonotifications: make notify() more generic
Markus Lehtonen [Tue, 13 May 2014 13:41:32 +0000 (16:41 +0300)]
notifications: make notify() more generic

In order to be able to re-use it in other tools than git-buildpackage.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agopq: make sure we always get a sane author
Markus Lehtonen [Tue, 29 Apr 2014 11:07:37 +0000 (14:07 +0300)]
pq: make sure we always get a sane author

Prevent a crash when the author (for a raw diff) was None because no
name/email could be determined from git config or environment variables.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agopq: deprecate the usage of 'gbp-pq-topic:'
Markus Lehtonen [Wed, 4 Sep 2013 13:16:59 +0000 (16:16 +0300)]
pq: deprecate the usage of 'gbp-pq-topic:'

Replaced by the "Gbp[-Pq]: Topic <topic>" command.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoComponentTestBase: add a per-class toplevel temp dir
Markus Lehtonen [Wed, 2 Oct 2013 13:35:32 +0000 (16:35 +0300)]
ComponentTestBase: add a per-class toplevel temp dir

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoDocument changes and release 0.6.15 debian/0.6.15
Guido Günther [Sat, 24 May 2014 16:41:05 +0000 (18:41 +0200)]
Document changes and release 0.6.15

10 years agoRevert "Determine build_dir upfront"
Guido Günther [Sat, 24 May 2014 16:40:35 +0000 (18:40 +0200)]
Revert "Determine build_dir upfront"

This reverts commit b2549fac19f2d666552291a4fcf2020ca0570834.

10 years agoDocument changes and release 0.6.14 debian/0.6.14
Guido Günther [Thu, 22 May 2014 20:49:01 +0000 (22:49 +0200)]
Document changes and release 0.6.14

10 years agoImprove error reporting on hooks
Guido Günther [Thu, 22 May 2014 11:20:11 +0000 (13:20 +0200)]
Improve error reporting on hooks

Make it obvious that a hook failed and not a gbp internal function

10 years agoImprove error reporting on failed commands
Guido Günther [Thu, 22 May 2014 11:00:15 +0000 (13:00 +0200)]
Improve error reporting on failed commands

Make it more clear if the command exited with non zero exit status.
Also don't report the command line twice.

Closes: #748248

10 years agoDetermine build_dir upfront
Guido Günther [Thu, 22 May 2014 12:53:47 +0000 (14:53 +0200)]
Determine build_dir upfront

so it's available to all hooks

10 years agopq: Try harder to cleanup after a failed patch
Guido Günther [Mon, 19 May 2014 10:06:39 +0000 (12:06 +0200)]
pq: Try harder to cleanup after a failed patch

If we fail to apply the patch the tree is left in a dirty state
so reset to the last head. This avoids irritating errors like:

gbp:error: Failed to apply 'debian/patches/poison+remember_trash': Failed to commit tree: fatal: invalid date format: 1998/03/21

following files would be overwritten by checkout:
doc/hosts.nntp.5
innd/art.c
innd/innd.h
innd/rc.c
Please, commit your changes or stash them before you can switch branches.
Aborting

Thanks: Marco d'Itri for the repo to debug this

10 years agopq: Print proper error message if we fail to apply the tree
Guido Günther [Mon, 19 May 2014 10:06:08 +0000 (12:06 +0200)]
pq: Print proper error message if we fail to apply the tree

e.g. instead of

gbp:error: Failed to apply 'debian/patches/poison+remember_trash'

we now have

gbp:error: Failed to apply 'debian/patches/poison+remember_trash': Failed to commit tree: fatal: invalid date format: 1998/03/21

10 years agoDocumnt that the patches must apply without fuzz
Guido Günther [Mon, 19 May 2014 09:34:01 +0000 (11:34 +0200)]
Documnt that the patches must apply without fuzz

10 years agoFix comitter vs committer typos
Guido Günther [Fri, 16 May 2014 17:51:26 +0000 (19:51 +0200)]
Fix comitter vs committer typos

Thanks: Sandro Tosi
Closes: #748339

10 years agoHandle version format errors more gracefully
Guido Günther [Wed, 7 May 2014 18:35:48 +0000 (20:35 +0200)]
Handle version format errors more gracefully

So far if a package claimed to be non native but the version number
didn't contain a '-' we failed like:

  Traceback (most recent call last):
    File "/usr/bin/gbp", line 9, in <module>
      load_entry_point('gbp==0.6.13', 'console_scripts', 'gbp')()
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/supercommand.py", line 82, in supercommand
      return module.main(args)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 541, in main
      output_dir)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 96, in prepare_upstream_tarball
      upstream_tree = git_archive_build_orig(repo, cp, output_dir, options)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 270, in git_archive_build_orig
      upstream_tree = get_upstream_tree(repo, cp, options)
    File "/usr/lib/python2.7/dist-packages/gbp/scripts/buildpackage.py", line 245, in get_upstream_tree
      cp['Upstream-Version'])
    File "/usr/lib/python2.7/dist-packages/gbp/deb/git.py", line 107, in version_to_tag
      return format % dict(version=DebianGitRepository._sanitize_version(version))
    File "/usr/lib/python2.7/dist-packages/gbp/deb/git.py", line 122, in _sanitize_version
      return version.replace('~', '_').replace(':', '%')

It shouldn't be like that.

10 years agogbp pq: document --force
Guido Günther [Fri, 2 May 2014 15:10:48 +0000 (17:10 +0200)]
gbp pq: document --force

10 years agoSlightly improve usage output
Guido Günther [Fri, 4 Apr 2014 10:57:30 +0000 (12:57 +0200)]
Slightly improve usage output

10 years agoDocument changes and release 0.6.13 debian/0.6.13
Guido Günther [Thu, 3 Apr 2014 19:32:22 +0000 (21:32 +0200)]
Document changes and release 0.6.13

10 years agoconfig: add decorator to add_option_* functions
Guido Günther [Wed, 2 Apr 2014 20:13:46 +0000 (22:13 +0200)]
config: add decorator to add_option_* functions

This allows us to build an internal list of valid options and print
these.

10 years agoImport command not module
Guido Günther [Wed, 2 Apr 2014 22:04:18 +0000 (00:04 +0200)]
Import command not module

This matches the function name

10 years agodocs: re-enable missing manpage
Markus Lehtonen [Thu, 3 Apr 2014 04:21:05 +0000 (07:21 +0300)]
docs: re-enable missing manpage

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoRemove tests now covered by 18_test_Config
Guido Günther [Wed, 2 Apr 2014 14:56:06 +0000 (16:56 +0200)]
Remove tests now covered by 18_test_Config

10 years agoRevert "GitRepository/add_remote_repo: fix the 'tags' argument"
Markus Lehtonen [Wed, 2 Apr 2014 06:48:11 +0000 (09:48 +0300)]
Revert "GitRepository/add_remote_repo: fix the 'tags' argument"

Which caused an unwanted behavior of not fetching refs/heads at all --
only tags were fetched.

This reverts commit 5dd598fb8f2a9109189fad6cf631811f12ce2130

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
10 years agoAdd minimal 'config' command
Guido Günther [Tue, 1 Apr 2014 18:29:22 +0000 (20:29 +0200)]
Add minimal 'config' command

This only allows to print single config values so far.

Closes: #733470

10 years ago.gitignore: ignore editor backup files
Guido Günther [Tue, 1 Apr 2014 09:35:50 +0000 (11:35 +0200)]
.gitignore: ignore editor backup files

10 years agoTest option parser fallbacks more thoroughly
Guido Günther [Tue, 1 Apr 2014 08:03:35 +0000 (10:03 +0200)]
Test option parser fallbacks more thoroughly

revealing another bug where we overwrote parsed values with defaults

Closes: #733759

10 years agoDocument changes and release 0.6.12 debian/0.6.12
Guido Günther [Fri, 28 Mar 2014 23:18:09 +0000 (00:18 +0100)]
Document changes and release 0.6.12

10 years agoUse a much simpler version to fix the command name in --help
Guido Günther [Fri, 28 Mar 2014 23:07:29 +0000 (00:07 +0100)]
Use a much simpler version to fix the command name in --help

mostly reverting e1780f0.

Closes: #742907

10 years agoDocument changes and release 0.6.11 debian/0.6.11
Guido Günther [Thu, 27 Mar 2014 21:28:50 +0000 (22:28 +0100)]
Document changes and release 0.6.11