Skip to content
This repository
Fetching contributors…

Cannot retrieve contributors at this time

file 209 lines (182 sloc) 10.002 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
0.4.20 (October 5, 2012)
  - python: only specify --install-{scripts,lib,data} flags to setup.py if
    they were given on the command line to fpm. Fixes #273.

0.4.19 (September 26, 2012)
  - Escape '%' characters in file names (#266, #222. Patch by John Wittkoski)

0.4.18 (September 25, 2012)
  - Fix regression in rpm building where the epoch in was missing in the rpm,
    but prior fpm versions defaulted it to 1. This caused rpms built with newer
    fpms to appear "older" than older rpms. Tests added to ensure this regression
    is caught prior to future releases! (Reported by eliklein)

0.4.17 (September 12, 2012)
  - Remove accidental JSON warning when using '-s python'

0.4.16 (September 6, 2012)
  - Fix compatibility with Ruby 1.8.7 (broken in 0.4.15)

0.4.15 (September 6, 2012)
  - pear: support custom channels with --pear-channel <channel> (#207)
    Example: fpm -s pear -t deb --pear-channel pear.drush.org drush
  - permit literal '\n' in --description, fpm will replace with a newline
    character. Example: fpm --description "line one\nline two" (#251)
  - improve error messaging when trying to output a package to a directory that
    doesn't exist (#244)
  - deb: convert '>' and '<' dependency operators to the correct '>>' and '<<'
    debian version operators (#250, patch by Thomas Meson).
  - deb: add --deb-priority flag (#232) for setting the debian 'priority'
    value for your package.
  - add --template-value. Used to expose arbitrary values to script templates.
    If you do --template-value hello=world, in your template you can do
    <%= hello %> to get 'world' to show up in your maintainer scripts.
  - python: add --python-install-data flag to set the --install-data option to
    setup.py (#255, patch by Thomas Meson)
  - Reject bad dependency flags (ones containing commas) and offer alternative.
    (#257)
  - Try to copy a file if hardlinking fails with permission problems (#253,
    patch by Jacek Lach)
  - Make --exclude, if a directory, include itself and any children, recursive.
    (#248)

0.4.14 (August 24, 2012)
  - rpm: Replace newlines with space in any license setting. (#252)

0.4.13 (August 14, 2012)
  - Make --exclude accept path prefixes as well. If you have a files in
    'usr/share/man' in your package, you can now exclude all of a subdir
    by doing '--exclude usr/share/man'

0.4.12 (August 10, 2012)
  - Fix a major bug introduced in 0.4.11 that caused all deb packages to
    contain empty maintainer scripts if not otherwise specified, which made
    apt/dpkg quite unhappy

0.4.11 (August 7, 2012)
  - Fix some symlink handling to prevent links from being followed during
    cleanup (#228, patch by sbuss)
  - rpm: 'vendor' in rpm spec is now omitted if empty or nil. This fixes a bug
    where rpmbuild fails due to empty 'Vendor' tag if you convert rpm to rpm.
  - internal: remove empty directories marked by --exclude (#205, patch by
    jimbrowne)
  - dir: don't try to set utime on symlinks (#234, #240, patch by ctgswallow)
  - rpm: relocatable rpms now supported when using the '--prefix' flag.
    Example: fpm -s dir -t rpm --prefix /usr/local -n example /etc/motd
    (patch by jkoppe)
  - deb: --deb-compression flag: Support different compression methods.
    Default continues to be gzip.
  - new flag: --template-scripts. This lets you write script templates for
    --after-install, etc. Templates are ERB, so you can do things like
    '<%= name %>' to get the package name in the script, etc.
  - warn on command invocations that appear to have stray flags to try and
    help users who have complex command lines that are failling.

0.4.10 (May 25, 2012)
  - Fix python package support for python3 (#212, patch by Slezhuk Evgeniy)
  - Preserve file metadata (time, owner, etc) when copying with the dir
    package. (#217, patch by Marshall T. Vandegrift)
  - Missing executables will now error more readably in fpm.
  - Fix gem and python 'version' selection (#215, #204)
  - Dependencies using '!=' will now map to 'Conflicts' in deb packages. (#221,
    patch by Sven Fischer)
  - Allow setting default user/group for files in rpm packages (#208, patch by
    Jason Rogers). Note: This adds --user and --group flags to effect this.
    These flags may go away in the future, but if they do, they will be
  - In python packages set 'install-data' correctly. (#223, patch by Jamie
    Scheinblum)

0.4.9 (April 25, 2012)
  - Fix --prefix support when building gems (#213, patch by Jan Vansteenkiste)

0.4.8 (April 25, 2012)
  - RPM: use 'noreplace' option for config files (#194, patch by Steve Lum)
  - Python: Fix bug around exact dependency versions (#206, patch by Lars van
    de Kerkhof)
  - Gem->RPM: Make 'provides' "rubygem(thegemname)" instead of "rubygem-thegemname"
  - Fix oddity where Ruby would complain about constant redefinition (#198,
    patch by Marcus Vinicius Ferreira)

0.4.7 skipped.

0.4.6 (April 10, 2012)
  - Work around more problems in RPM with respect to file listing (#202)

0.4.5 (April 3, 2012)
  - Fix gem->rpm conversion where the '~>' rubygem version operator (#193,
    patch by antoncohen)
  - Escape filenames RPM install process (permits files with spaces, dollar signs, etc)
    (#196, reported by pspiertz)

0.4.4 (March 30, 2012)
  - Fix a bug in gem bin_dir handling (Calen Pennington)
  - The --config-files flag should work again (Brian Akins)
  - Fix syntax error when using --deb-pre-depends (Andrew Bennett)
  - Make --exclude work again (#185, #186) (Calen Pennington)
  - Fix file listing so that rpm packages don't declare ownership on / and
    /usr, etc.
  - make --deb-custom-control to work again (Tor Arne Vestbø)
  - Add --rpm-digest flag to allow selection of the rpm 'file name' digest
    algorithm. Default is 'md5' since it works on the most rpm systems.
  - Reimplement old behavior assuming "." as the input when using '-s dir' and
    also setting -C (#187)
  - Set BuildRoot on rpm to work around an rpmbuild bug(?) on CentOS 5 (#191)
  - Add --rpm-compression flag to allow selection of the rpm payload
    compression. Default is 'gzip' since it works on the most rpm systems
  - Specs now pass on ubuntu/32bit systems (found by travis-ci.org's test runner)
  - Improve default values of iteration and epoch (#190)
  - Make FPM::Package#files list only 'leaf' nodes (files, empty directories,
    symlinks, etc).

0.4.3 (March 21, 2012)
  - Fix bug in python packaging when invoked with a relative path to a setup.py
    (Reported by Thomas Meson, https://github.com/jordansissel/fpm/pull/180)

0.4.2 (March 21, 2012)
  - Set default temporary directory to /tmp
    (https://github.com/jordansissel/fpm/issues/174)
  - Improve symlink handling (patch by Aleix Conchillo Flaqué, pull/177))
  - Python package support changes (thanks to input by Luke Macken):
    * New flag: --python-install-bin. Sets the location for python package
      scripts (default: /usr/bin)
    * New flag: --python-install-lib. Sets the location for the python
      package to install libs to, default varies by system. Usually something
      like /usr/lib/python2.7/site-packages.
    * Fix up --prefix support
    * Improve staged package installation

0.4.1 (March 19, 2012)
  - Fix fpm so it works in ruby 1.8 again.
    Tests run, and passing:
      rvm 1.8.7,1.9.2,1.9.3 do bundle exec rspec

0.4.0 (March 18, 2012)
  - Complete rewrite of pretty much everything.
    * Otherwise, the 'fpm' command functionality should be the same
    * Please let me know if something broke!
  - Now has an API (see examples/api directory)
  - Also has a proper test suite
  - Updated the rpm spec generator to disable all the ways I've found rpmbuild
    to molest packages. This means that fpm-generated rpms will no longer
    strip libraries, move files around, randomly mutate jar files, etc.
  - Add --license and --vendor settings (via Pieter Loubser)
  - python support: try to name python packages sanely. Some pypi packages
    are literally called 'python-foo' so make sure we generate packages named
    'python-foo' and not 'python-python-foo' (via Thomas Meson)
  - rpm support: Add --rpm-rpmbuild-define for passing a --define flag to rpmbuild
    (via Naresh V)
  - PHP pear source support (fpm -s pear ...) (via Andrew Gaffney)

0.3.10 (Oct 10, 2011)
  - Allow taking a list of files/inputs on stdin with '-' or with the --inputs
    flag. (Matt Patterson)
  - (python) pass -U to easy_install (Khalid Goudeaux)
  - (debian) quote paths in md5sum calls (Matt Patterson)
  - (debian) quiet stderr from dpkg --print-architecture

0.3.9 (Sep 8, 2011)
  - Fix bug in 'dir' source that breaks full paths
  - Added a bunch of tests (yaay)

0.3.8 and earlier: I have not kept this file up to date very well... Sorry :(

0.2.29 (May 20, 2011)
  - Add 'tar' source support. Useful for binary releases to repackage as rpms
    and debs. Example:
      fpm -s tar -t rpm -n firefox -v 4.0.1 \
        --prefix /opt/firefox/4.0.1 firefox-4.0.1.tar.bz2

0.2.28 (May 18, 2011)
  - Use --replaces as "Obsoletes" in rpms.

0.2.27 (May 18, 2011)
  - If present, DEBEMAIL and DEBFULLNAME environment variables will be used as
    the default maintainer. Previously the default was simply <$user@$hostname>
    https://github.com/jordansissel/fpm/issues/37
  - Add '--replaces' flag for specifying packages replaced by the one you are
    building. This only functions in .deb packages now until I find a suitable
    synonym in RPM.
  - Add --python-bin and --python-easyinstall flags. This lets you choose specific
    python and easy_install tools to use when building. Default is simply
    'python' and 'easy_install' respectively.
  - Add support for ~/.fpmrc - The format of this file is the same as the flags.
    One flag per line. https://github.com/jordansissel/fpm/issues/38
    Example:
      --python-bin=/usr/bin/python2.7
      --python-easyinstall=/usr/bin/easy_install2.7

0.2.26 and earlier
  No changelist tracked. My bad, yo.
Something went wrong with that request. Please try again.