Add --gem-disable-dependencies flag to allow for excluding one or more auto dependencies
BuildArch isn't needed for any purpose
Use --target to specify the architecture.
Rename bins with version appended
Allow forcing ownership even when using --rpm-use-file-permissions

The rpm-use-file-permissions setting asks each file who owns it and what
the mode is. Sometimes you only want the mode, or sometimes the user is
not correct for deployment. Now, specifying --rpm-user will force the
owner to be the given user but still respect the file modes gathered
by --rpm-use-file-permissions.

The intent of this change is:

* --rpm-use-file-permissions still works the same, when alone
* --rpm-user forces the 'user' owner regardless of the above
* --rpm-group forces the 'group' owner regardless of the above

This was identified by https://logstash.jira.com/browse/LOGSTASH-2012
Merge pull request #679 from jordansissel/fix-rpm-permissions-and-user-settings

Allow forcing ownership even when using --rpm-use-file-permissions
Add special handling for `fpm --version`

Because --version is a valid flag (for setting the package version)
but is also commonly used to ask an application what version it is,
we need a bit of special handling for `fpm --version`:

New result:

    % fpm --version
    1.1.0

Prior to this patch, `fpm --version` would tell you that you were
missing arguments or flags.
Merge pull request #676 from robkinyon/rpm_arch

Fixes for RPM and --architecture
Add test coverage for rpm --architecture flags

This covers a code from #676
Merge pull request #598 from someword/master

Add --gem-disable-dependencies flag to allow for excluding one or more dependencies
Call it --gem-disable-dependency (#598)
Merge pull request #677 from vStone/feature/rename-gem-bin

Rename bins with version appended
Skip if we don't have rpmbuild
Make python_scripts_executable test more deterministic

It was failing on OSX due to file searching occuring in a different
order, and frankly we can predict the path of the script dir, so
let's use that instead of searching for it.
Remove ftw; not used anymore. (#675)
Attempt to provide better error messages for busted python environments.

This aims to help with #644 where we cannot get python package metadata
without having json and setuptools available from the python program
we are invoking.
Fix error checking for python json & pkg_resources

I forgot safesystem() raises an exception when it fails.

Now, if users have a python that is missing a feature we need in order
to have fpm build a package, you'll get an error like this:

      Your python environment is missing json support (either json or simplejson python module). I cannot continue without this.  {:error=>#<FPM::Util::ProcessFailed: /bin/bash failed (exit code 1).  Full command was:["/bin/bash", "-c", "/opt/my-py24/bin/python -c 'import simplejson'"]>, :python=>"/opt/my-py24/bin/python", :level=>:error}
      Process failed: Python (/opt/my-py24/bin/python) is missing simplejson or json modules. {:level=>:error}

This is for #664
Check for both simplejson and json at the same time.

This avoids accidentally failing simply because 'simplejson' isn't
available (but 'json' might be, but we aborted too early)

This fixes tests broken by the previous commit.
- Update changelog for next release.
Don't require full output of a deb package if we're just checking for
tar flags.

The reason for this is that if we do output, it fails like so;

  1) FPM::Package::Deb#tar_flags should set the group for the package's data files
     Failure/Error: @package.output(@target)
     FPM::Util::ProcessFailed:
       tar failed (exit code 2). Full command was:["tar", "-C", "/tmp/package-deb-staging20140423-5427-10uiv96", "-z", "--numeric-owner", "--owner", "0", "--group", "nogroup", "-cf", "/tmp/package-deb-build20140423-5427-19uvbmw/data.tar.gz", "."]

Because 'nogroup' isn't a valid group when tar is run, but we want to check
that 'nogroup' is set in the tar args, not that tar works ;)