Workaround to permit filters to work on staging_path.
(This still needs another rewrite, to let :prefix be handled by actual targets,
and be more consistent about build_path→staging_path passing [should just be aliased].)
check-in: 464e75e608 user: mario tags: trunk

Switch from custom @attributes[:meta] to just sharing @attrs,
and command.rb fixed to not empty it.
(Code probably was intended and will return as --attr option).
check-in: c2a301ce07 user: mario tags: trunk

Introduce multitarget building with -t deb,rpm,exe comma-delimited list.
(Only the last `output` class is kept in the execute() scope though, thus
--debugging/keeping the staging path only works for the last target.)
check-in: 958b461a23 user: mario tags: trunk

Fix md5sums generation for deb packages
The md5sums control file must be formatted exactly as it would be
produced by a run of md5sum (MD5, two spaces, file path). Failing to do
so breaks dpkg --verify.
check-in: be0e595dc5 user: morpheus tags: trunk

deb: Always provide a "changes" file
lintian in Ubuntu 14.04 now errors when a file
/usr/share/NAME/changelog.Debian.gz doesn't exist.
In the spirit of respecting lintian's meaningful errors, this commit
fixes that error.
The new behavior is that a changelog file is *always* provided. If the
--deb-changelog flag is not given, then fpm will produce a default one
based on the package being built in hope that it satisfies lintian.
With this commit, the lintian rspec test passes on Ubuntu 14.04.
Fixes #784
check-in: 0621e54420 user: jls tags: trunk

Add --log=xxx support
Supported log levels: error, warn, info, debug.
--verbose is the same as --log=info
--debug is the same as --log=debug
--log=warn is the default
Requested by mattgreenrocks on irc.
check-in: e40c10b115 user: jls tags: trunk

Merge pull request #778 from nbrownus/master
Allow removal of Vendor field for deb
This can be done in the CLI by setting --vendor to an empty string. For example `--vendor ""`
The default behavior "Vendor: none" still remains.
check-in: f3092896a3 user: jls tags: trunk

Enhancements to sh template
This PR includes two significant changes:
* If this version of the code is already in current:
* If not forced, do not install the code
* If forced, rename the old directory and write out a new one
* Ignore functions in environment when saving .install-metadata, due to an issue with FPM 1.25.29-31 and Bash 4.3.27
check-in: 00f11d900e user: chris.gerber tags: trunk

Stat the link itself instead of file it refers to
If path is a symbolic link and target doesn't exist, we may incorrectly through
file not found exception. This changes fixes the issue by using File.lstat to
stat the path.
check-in: c4427583a4 user: shrijeet tags: trunk

CPAN: Fix stripping of perllocal.pod if cpan_perl_lib_path is set
For example, if cpan_perl_lib_path is set to "/usr/share/perl5", all
packages created with fpm will contain this file:
/usr/share/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod
The current code only works if cpan_perl_lib_path is undefined.
Also see #443 and #510.
check-in: d0171db1dc user: mathias.lafeldt tags: trunk

Missing space in help
```
--no-depends Do not list any dependencies in this package (default: false)
--no-auto-depends Do not list any dependencies in thispackage automatically (default: false)
```
check-in: c6ada38fe3 user: damalinov tags: trunk

Show full input path if it can't be found.
Before: Cannot package the path 'pganalyze-collector', does it exist?
After: Cannot package the path './build/pganalyze-collector', does it exist?
check-in: 25b3cddf0c user: jls tags: trunk

Add --debug-workspace
Avoids Package#cleanup calls and also prints the paths, if not empty, of
any build or staging directories used for input or output.
Fixes #720
check-in: db5365c828 user: jls tags: trunk

Add --rpm-verbatim-gem-dependencies flag
This should help folks who want the old-style gem-rpm conversions
* with this flag, old behavior: rubygem-name
* without flag, default behavior: rubygem(name)
The 'default' behavior has been this behavior since 0.4.23 for most
users.
If you changed the package name prefix via --gem-package-prefix or
--gem-package-name-prefix then this behavior was broken.
It was fixed in #585.
But, I don't want folks relying on old behavior to be screwed
when that behavior mysteriously vanishes! This should be a good
enough work around for now.
Reported by Ryan Doherty via the fpm-users mailing list.
Leaf
check-in: b58a113368 user: jls tags: trunk, rpm-verbatim-gem-dependencies

Fixes jordansissel/fpm#707
With rpms, if `--architecture` and `--rpm-os` are specified and
different than the host, `--target` would be passed to `rpmbuild` twice,
causing an error.
Example: an OS X host (`uname -s` = "Darwin") with x86_64 architecture
building for `--rpm-os linux` and `--architecture noarch`.
This change only adds `--target` to the `rpmbuild` args once, fixing
this specific error.
check-in: ac7f1ccfc1 user: alanivey tags: trunk

Have -t dir output a .fpm file based on the config.
The intent is to allow users to do a three-step process:
1. fpm -s something -t dir ...
2. patch and modify anything in the directory
3. fpm -t rpm
It's common for folks to ask if they can do some kind of patching
or modification in the middle of an fpm run, so this should help
them do this.
Leaf
check-in: eb5ded0d9a user: jls tags: trunk, dir-rc-output