cure-fpm 1.3.3b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELIST +571 -0
  3. data/CONTRIBUTORS +26 -0
  4. data/LICENSE +21 -0
  5. data/bin/fpm +8 -0
  6. data/lib/fpm.rb +17 -0
  7. data/lib/fpm/command.rb +598 -0
  8. data/lib/fpm/errors.rb +4 -0
  9. data/lib/fpm/namespace.rb +4 -0
  10. data/lib/fpm/package.rb +524 -0
  11. data/lib/fpm/package/cpan.rb +353 -0
  12. data/lib/fpm/package/deb.rb +771 -0
  13. data/lib/fpm/package/dir.rb +220 -0
  14. data/lib/fpm/package/empty.rb +7 -0
  15. data/lib/fpm/package/gem.rb +224 -0
  16. data/lib/fpm/package/npm.rb +120 -0
  17. data/lib/fpm/package/osxpkg.rb +164 -0
  18. data/lib/fpm/package/pear.rb +117 -0
  19. data/lib/fpm/package/pkgin.rb +35 -0
  20. data/lib/fpm/package/puppet.rb +120 -0
  21. data/lib/fpm/package/pyfpm/__init__.py +1 -0
  22. data/lib/fpm/package/pyfpm/__init__.pyc +0 -0
  23. data/lib/fpm/package/pyfpm/get_metadata.py +96 -0
  24. data/lib/fpm/package/pyfpm/get_metadata.pyc +0 -0
  25. data/lib/fpm/package/python.rb +317 -0
  26. data/lib/fpm/package/rpm.rb +549 -0
  27. data/lib/fpm/package/sh.rb +75 -0
  28. data/lib/fpm/package/solaris.rb +95 -0
  29. data/lib/fpm/package/tar.rb +74 -0
  30. data/lib/fpm/package/zip.rb +63 -0
  31. data/lib/fpm/util.rb +230 -0
  32. data/lib/fpm/version.rb +3 -0
  33. data/templates/deb.erb +52 -0
  34. data/templates/deb/changelog.erb +5 -0
  35. data/templates/deb/ldconfig.sh.erb +13 -0
  36. data/templates/deb/postinst_upgrade.sh.erb +31 -0
  37. data/templates/deb/postrm_upgrade.sh.erb +37 -0
  38. data/templates/deb/preinst_upgrade.sh.erb +32 -0
  39. data/templates/deb/prerm_upgrade.sh.erb +27 -0
  40. data/templates/osxpkg.erb +11 -0
  41. data/templates/puppet/package.pp.erb +34 -0
  42. data/templates/puppet/package/remove.pp.erb +13 -0
  43. data/templates/rpm.erb +229 -0
  44. data/templates/rpm/filesystem_list +14514 -0
  45. data/templates/sh.erb +334 -0
  46. data/templates/solaris.erb +15 -0
  47. metadata +246 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 86c3e4d7828bf8053b0f9e78c2b048087ffabea5
4
+ data.tar.gz: a445f6f23d074bbc7532f1354b2c94dbe473a877
5
+ SHA512:
6
+ metadata.gz: 692a9db40f3bcd804a5f3b3a93fb39af4ac29731a63773bfafb21763889d0c35c74ac88bb726a425920d26151699e837155868a7cea0769f8ad403cb77299fa1
7
+ data.tar.gz: 44d0f61f3e3eb2e43e7d4a59e183a904d9e2d0da24788f0837d9cf016aa26fae113279097f79c892293a22c293db48036fa5f651e6117407e892e0627bd53e37
data/CHANGELIST ADDED
@@ -0,0 +1,571 @@
1
+ 1.3.3 (December 11, 2014)
2
+ - The fpm project now uses Contributor Covenant. You can read more about this on
3
+ the website: http://contributor-covenant.org/
4
+ - npm: Fix bug causing all `-s npm` attempts to fail due to a missing method.
5
+ This bug was introduced in 1.3.0. (#800, #806; Jordan Sissel)
6
+ - rpm: fix bug in rpm input causing a crash if the input rpm did not have any triggers
7
+ (#801, #802; Ted Elwartowski)
8
+
9
+ 1.3.2 (November 4, 2014)
10
+ - deb: conversion from another deb will automatically use any changelog found in
11
+ the source deb (Jordan Sissel)
12
+
13
+ 1.3.1 (November 4, 2014)
14
+ - deb: fix md5sums generation such that `dpkg -V` now works (#799, Matteo Panella)
15
+ - rpm: Use maximum compression when choosing xz (#797, Ashish Kulkarni)
16
+
17
+ 1.3.0 (October 25, 2014)
18
+ - Fixed a bunch of Ruby 1.8.7-related bugs. (Jordan Sissel)
19
+ - cpan: Fix bug in author handling (#744, Leon Weidauer)
20
+ - cpan: Better removal of perllocal.pod (#763, #443, #510, Mathias Lafeldt)
21
+ - rpm: Use lstat calls instead of stat, so we don't follow symlinks (#765, Shrijeet Paliwal)
22
+ - rpm and deb: Now supports script actions on upgrades. This adds two new flags:
23
+ --before-upgrade and --after-upgrade. (#772, #661; Daniel Haskin)
24
+ - rpm: Package triggers are now supported. New flags: --rpm-trigger-before-install,
25
+ --rpm-trigger-after-install, --rpm-trigger-before-uninstall,
26
+ --rpm-trigger-after-target-uninstall. (#626, Maxime Caumartin)
27
+ - rpm: Add --rpm-init flag; similar to --deb-init. (Josh Dolitsky)
28
+ - sh: Skip installation if already installed for the given version. If forced,
29
+ the old installation is renamed. (#776, Chris Gerber)
30
+ - deb: Allow Vendor field to be omitted now by specifying `--vendor ""` (#778, Nate Brown)
31
+ - general: Add --log=level flag for setting log level. Levels are error, warn, info, debug. (Jordan SIssel)
32
+ - cpan: Check for Build.PL first before Makefile.PL (#787, Daniel Jay Haskin)
33
+ - dir: Don't follow symlinks when copying files (#658, Jordan Sissel)
34
+ - deb: Automatically provide a 'changes' file in debs because lintian
35
+ complains if they are missing. (#784, Jordan Sissel)
36
+ - deb: Fix and warn for package names that have spaces (#779, Grantlyk)
37
+ - npm: Automatically set the prefix to `npm prefix -g` (#758, Brady Wetherington and Jordan Sissel)
38
+
39
+ 1.2.0 (July 25, 2014)
40
+ - rpm: Add --rpm-verifyscript for adding a custom rpm verify script to
41
+ your package. (Remi Hakim)
42
+ - Allow the -p flag to target a directory for writing the output package
43
+ (#656, Jordan Sissel)
44
+ - Add --debug-workspace which skips any workspace cleanup to let users debug things
45
+ if they break. (#720, #734; Jordan Sissel)
46
+ - rpm: Add --rpm-attr for controlling attribute settings per file. This setting
47
+ will likely be removed in the future once rpmbuild is no longer needed.
48
+ (#719)
49
+ - deb: Add --deb-meta-file to add arbitrary files to the control dir (#599, Dan Brown)
50
+ - deb: Add --deb-interest and --deb-activate for adding package triggers (#595, Dan Brown)
51
+ - cpan: Fix small bug in handling empty metadata fields (#712, Mathias Lafeldt)
52
+ - rpm: Fix bug when specifying both --architecture and --rpm-os (#707, #716; Alan Ivey)
53
+ - gem: Fix bug where --gem-version-bins is given but package has no bins (#688, Jan Vansteenkiste)
54
+ - deb: Set permissions correct on the package's internals. Makes lintian happier. (Jan Vansteenkiste)
55
+ - rpm: rpmbuild's _tmppath now respects --workdir (#714, Jordan Sissel)
56
+ - gem/rpm: Add --rpm-verbatim-gem-dependencies to use old-style (fpm 0.4.x)
57
+ rpm gem dependencies (#724, Jordan Sissel)
58
+ - gem/rpm: Fix bug for gem pessimistic constraints when converting to rpm (Tom Duckering)
59
+ - python: Fix small bug with pip invocations (#727, Dane Knecht)
60
+
61
+ 1.1.0 (April 23, 2014)
62
+ - New package type: zip, for converting to and from zip files (Jordan Sissel)
63
+ - New package type: sh, a self-extracting package installation shell archive. (#651, Chris Gerber)
64
+ - 'fpm --version' will now emit the version of fpm.
65
+ - rpm: supports packaging fifo files (Adam Stephens)
66
+ - deb: Add --deb-use-file-permissions (Adam Stephens)
67
+ - cpan: Improve how fpm tries to find cpan artifacts for download (#614, Tim Nicholas)
68
+ - gem: Add --gem-disable-dependency for removing one or more specific rubygem
69
+ dependencies from the automatically-generated list (#598, Derek Olsen)
70
+ - python: Add --python-scripts-executable for setting a custom interpreter to
71
+ use for the hashbang line at the top of may python package scripts.
72
+ (#628, Vladimir Rutsky)
73
+ - Allow absolute paths with --directories even when --prefix is used (Vladimir Rutsky)
74
+ - dir: Now correctly identifies hardlinked files and creates a package correctly
75
+ with that knowledge (#365, #623, #659; Vladimir Rutsky)
76
+ - rpm: Add --rpm-auto-add-exclude-directories for excluding directories
77
+ from the --rpm-auto-add-directories behavior (#640, Vladimir Rutsky)
78
+ - general: --config-files now accepts directories and will recursively mark any
79
+ files within as config files inside the package (#642, Vladimir Rutsky)
80
+ - general: If you specify a --config-files path that doesn't exist, you will
81
+ now get an error. (#654, Alan Franzoni)
82
+ - python: Support --python-pypi when using --python-pip (#652, David Lindquist)
83
+ - deb: Tests now try to make packages ensure we don't upset lintian (#648, Sam Crang)
84
+ - rpm: Fix architecture targeting (#676, Rob Kinyon)
85
+ - rpm: Allow --rpm-user and --rpm-group to override the user/group even if
86
+ --rpm-use-file-permissions is enabled. (#679, Jordan Sissel)
87
+ - gem: Add --gem-version-bins for appending the gem version to the file name
88
+ of executable scripts a rubygem may install. (Jan Vansteenkiste)
89
+ - python: Attempt to provide better error messages for known issues in python
90
+ environments (#664, Jordan Sissel)
91
+
92
+ 1.0.2 (January 10, 2013)
93
+ - rpm: No longer converts - to _ in dependency strings (#603, Bulat
94
+ Shakirzyanov)
95
+ - Handle Darwin/OSX tar invocations (now tries 'gnutar' and 'gtar'). (Jordan
96
+ Sissel)
97
+ - Process $HOME/.fpm, and $PWD/.fpm in the correct order and allow CLI flags
98
+ to override fpm config file settings. (#615, Jordan Sissel)
99
+ - Don't leave empty gem bin paths in packages that don't need them (#612,
100
+ Jordan Sissel)
101
+ - deb: Make --deb-compression=gz work correctly (#616, #617; Evan Krall,
102
+ Jason Yan)
103
+
104
+ 1.0.1 (December 7, 2013)
105
+ - deb: Correctly handle --config-files given with a leading / (Jordan Sissel)
106
+
107
+ 1.0.0 (December 5, 2013)
108
+ - Config file of flags is now supported. Searches for $HOME/.fpm and
109
+ $PWD/.fpm. If both exist, $HOME is loaded first so $PWD can override.
110
+ (Pranay Kanwar)
111
+ - pkgin: Basic support for SmartOS/pkgsrc's pkgin format. (#567, Brian Akins)
112
+ - cpan: catch more cases of perllocal.pod and delete them
113
+ (#510, Jordan Sissel)
114
+ - cpan: Correctly support module version selection (#518, Matt Sharpe)
115
+ - cpan: include builddeps in PERL5LIB when running cpan tests
116
+ (#500, Matt Sharpe)
117
+ - cpan: Avoid old system perl modules when doing module builds
118
+ (#442, #513; Matt Sharpe)
119
+ - python: safer gathering of python module dependencies.
120
+ - python: better handling of unicode strings in python package metadata
121
+ (#575, Bruno Renié)
122
+ - cpan: Support 'http_proxy' env var. (#491, Patrick Cable)
123
+ - deb: --deb-user and --deb-group both default to 'root' now
124
+ (#504, Pranay Kanwar)
125
+ - deb: convert '>' to '>>' in deb version constraints
126
+ (#503, #439, Pranay Kanwar)
127
+ - deb: Warn if epoch is set. Just so you know what's going on, since
128
+ the default filename doesn't include the epoch. (#502, Pranay Kanwar)
129
+ - deb,rpm: --config-files is now recursive if you give it a directory.
130
+ This seems to be the most expected behavior by users.
131
+ (#171, #506; Pranay Kanwar)
132
+ - dir: Respect -C when using path mapping (#498, #507; Pranay Kanwar)
133
+ - rpm: Add --rpm-ignore-iteration-in-dependencies to let you to depend
134
+ on any release (aka iteration) of the same version of a package.
135
+ (#364, #508; Pranay Kanwar)
136
+ - dir: Handle copying of special files when possible
137
+ (#347, #511, #539, #561; Pranay Kanwar)
138
+ - rpm: Don't mistake symlinks as actual directories (#521, Nathan Huff)
139
+ - npm: Choose an alternate npm registry with --npm-registry (#445, #524;
140
+ Matt Sharpe)
141
+ - cpan: Choose an alternate cpan server with --cpan-mirror. Additionally, you
142
+ can use --cpan-mirror-only to only use this mirror for metadata queries.
143
+ (#524, Matt Sharpe)
144
+ - deb: Fix broken --deb-changelog flag (#543, #544; Tray Torrance)
145
+ - deb: When --deb-upstart is given, automatically create an upstart-sysv
146
+ symlink /etc/init.d/<name> to /lib/init/upstart-job (#545, Igor Galić)
147
+ - rpm: Fix bug when generating spec file listings on files with strange
148
+ characters in the names. (#547, Chris Chandler)
149
+ - dir: Fix bug where the new directory mapping feature would cause you not
150
+ to be able to select files with '=' in the name for packaging.
151
+ (#556, #554; Pranay Kanwar)
152
+ - python: Fix some unicode string issues in package metadata
153
+ (#575, Bruno Renié)
154
+ - gem-rpm: Now respects the --gem-package-name-prefix when generating the
155
+ 'rubygem(name)' provides statement (#585, Stepan Stipl)
156
+ - deb: Downcase and replace underscores with dashes in 'provides' list.
157
+ (#591, Eric Connell)
158
+ - deb: Fix a lintian complaint about md5sums permissions (#593, Sam Crang)
159
+ - cpan: Modules with 'MYMETA' files are now supported (#573, Michael Donlon)
160
+
161
+ 0.4.42 (July 23, 2013)
162
+ - dir: make source=destination mappings behave the same way 'rsync -a' does
163
+ with respect to source and destination paths.
164
+
165
+ 0.4.41 (July 17, 2013)
166
+ - cpan: handle cases where modules don't specify a license
167
+ - deb: support multiple init scripts (#487, patch by Kristian Glass)
168
+
169
+ 0.4.40 (July 12, 2013)
170
+ - dir: supports mapping one path to another.
171
+ You set mappings by using 'source=destination' syntax. For example:
172
+ % fpm -s dir -t deb -n example /home/jls/.zshrc=/etc/skel/
173
+ The key above is the '=' symbol. The result of the above will be a package
174
+ containing only /etc/skel/.zshrc
175
+ For more, see https://github.com/jordansissel/fpm/wiki/Source:-dir#mapping
176
+ - python: the default scripts location is now chosen by python itself. The
177
+ previous default was "/usr/bin" and was not a good default. (#480)
178
+ - rpm: config files should have attributes (#484, patch by adamcstephens)
179
+ - python: correctly log the python setup.py exit code (#481, patch by Derek
180
+ Ludwig)
181
+
182
+ 0.4.39 (June 27, 2013)
183
+ - cpan: support more complex dependency specifications (reported by Mabi
184
+ Knittel)
185
+
186
+ 0.4.38 (June 24, 2013)
187
+ - cpan: fpm's cpan code now works under ruby 1.8.7
188
+ - python: fix a bug in dependency handling (#461, Pranay Kanwar)
189
+ - pear: Added --pear-data-dir flag (#465, Zsolt Takács)
190
+ - cpan: fix a bug with some clean up on certain 64bit systems
191
+ - gem: improve detection of the gem bin install path (#476, Tray Torrance)
192
+ - rpm: fix bug when calling using --rpm-use-file-permissions
193
+ (#464, Rich Horwood)
194
+
195
+ 0.4.37 (May 30, 2013)
196
+ - deb: fix creation failures on OS X (#450, patch by Anthony Scalisi and
197
+ Matthew M. Boedicker)
198
+ - deb: you can now set --deb-build-depends. This is generally for extremely
199
+ rare use cases. (#451, patch by torrancew)
200
+ - perl: add --cpan-perl-lib-path for a custom perl library installation path
201
+ (#447, patch by Brett Gailey)
202
+
203
+ 0.4.36 (May 15, 2013)
204
+ - pear: only do channel-discover if necessary (#438, patch by Hatt)
205
+ - cpan: now supports cpan modules that use Module::Build
206
+ - cpan: --no-cpan-test now skips tests for build/configure dependencies
207
+ - rpm: Add --rpm-defattrfile and --rpm-defattrdir flags (#428, patch
208
+ by phrawzty)
209
+
210
+ 0.4.35 -- was not announced
211
+
212
+ 0.4.34 (May 7, 2013)
213
+ - Now supports CPAN - Perl mongers rejoice! For example:
214
+ 'fpm -s cpan -t deb DBI'
215
+ - deb: fixed some additional complaints by lintian (#420, patch by Pranay
216
+ Kanwar)
217
+ - rpm: add flags --rpm-autoreqprov, --rpm-autoreq, and --rpm-autoprov
218
+ to tell rpm to enable that feature in the rpm spec. (#416, patch by Adam
219
+ Stephens)
220
+
221
+ 0.4.33 (April 9, 2013)
222
+ - Now supports npm, the node package manager. For example:
223
+ 'fpm -s npm -t deb express'
224
+
225
+ 0.4.32 (April 9, 2013)
226
+ - COMPATIBILITY WARNING: rpm: The default epoch is now nothing because this
227
+ aligns more closely with typical rpm packages in the real world. This
228
+ decision was reached in #381. If you need the previous behavior, you
229
+ must now specify '--epoch 1' (#388, patch by Pranay Kanwar)
230
+ - python: new flag --python-obey-requirements-txt which makes a
231
+ requirements.txt file from the python package used for the package
232
+ dependencies instead of the usual setup.py dependencies. The default
233
+ behavior without this flag is to respect setup.py. (#384)
234
+ - deb: new flag --deb-shlibs to specify the content of the 'shlibs' file
235
+ in the debian package (#405, patch by Aman Gupta)
236
+ - deb: fixed a few lintian errors (empty conffiles, md5sums on symlinks, etc)
237
+ - Add '-f' / '--force' flag to force overwriting an existing package output
238
+ path (#385, Timothy Sutton)
239
+ - New flag: --no-auto-depends flag to skip any automatic dependencies
240
+ that would normally be added by gem, python, deb, and rpms input packages.
241
+ (#386, #374; patch by Pranay Kanwar)
242
+ - gem: Use 'gem' command to download gems and read gem package information.
243
+ (#389, #394, #378, #233; patches by Pranay Kanwar and Chris Roberts)
244
+ - rpm: dashes are now replaced with underscores in rpm version strings
245
+ (#395, #393, #399; patches by Jeff Terrace and Richard Guest)
246
+ - python: Only use the first line of a license; some python packages (like
247
+ 'requests') embed their full license copy into the license field. For
248
+ the sake of sanity and function with most packaging systems, fpm only
249
+ uses the first line of that license.
250
+ - rpm: Add new 'none' option to --rpm-compression to disable compression
251
+ entirely. (#398, patch by Richard Guest)
252
+ - deb: Make dependencies using the '!=' operator represented as "Breaks"
253
+ in the deb package (previously used "Conflicts"). (#400)
254
+ - deb: Add md5sums to the debian packages which improves correctness
255
+ of the package. (#403, #401; patch by Pranay Kanwar)
256
+ - rpm: Convert all '!=' dependency operators to 'Conflicts'. Previously,
257
+ this only applied to packages converting from python to rpm.
258
+ (#404, #396; patch by Pranay Kanwar)
259
+
260
+ 0.4.31 (March 21, 2013)
261
+ - rpm: new flag --rpm-use-file-permissions which try to create an rpm
262
+ that has file ownership/modes that exactly mirror how they are on
263
+ the filesystem at package time. (#377, patch by Paul Rhodes)
264
+ - general: remove empty directories only when they match the exclude
265
+ pattern (#323, patch by Pranay Kanwar)
266
+
267
+ 0.4.30 (March 21, 2013)
268
+ - Solaris: --solaris-user and --solaris-group flags to specify
269
+ the owner of files in a package. (#342, patch by Derek Olsen)
270
+ - rpm: (bug fix) epoch of 0 is permitted now (#343, patch by Ben Hughes)
271
+ - pear: add flags --pear-bin-dir --pear-php-bin --pear-php-dir (#358, patch
272
+ by Zsolt Takács)
273
+ - New 'source' type: empty. Allows you to create packages without any files
274
+ in them (sometimes called 'meta packages'). Useful when you want to have
275
+ one package be simply dependencies or when you want to spoof a package
276
+ you don't want installed, etc. (#359, 349; patch by Pranay Kanwar)
277
+ - solaris: Add --solaris-user and --solaris-group flags (#342, Patch by Derek
278
+ Olsen)
279
+ - gem: new flag --env-shebang; default true (disable with --no-env-shebang).
280
+ Lets you disable #! (shebang) mangling done by gem installation. (#363,
281
+ patch by Grier Johnson)
282
+ - deb: fix bug on changelog handling (#376, patch by mbakke)
283
+ - rpm: fix --rpm-rpmbuild-define (#383, patch by Eric Merritt)
284
+
285
+ 0.4.29 (January 22, 2013)
286
+ - Copy links literally, not what they point at (#337, patch by Dane Knecht)
287
+
288
+ 0.4.28 (January 21, 2013)
289
+ - Fix a dependency on the 'cabin' gem. (#344, reported by Jay Buffington)
290
+
291
+ 0.4.27 (January 16, 2013)
292
+ - Make all fpm output go through the logger (#329; patch by jaybuff)
293
+ - New package type: osxpkg, for building packages installable on OS X. (#332,
294
+ patch by Timothy Sutton)
295
+ - Fix crash bug when converting rpms to something else (#316, #325; patch by
296
+ rtucker-mozilla)
297
+ - deb: Add --deb-field for setting a custom field in the control file.
298
+ For more information on this setting, see section 5.7 "User-defined fields"
299
+ of the debian policy manual:
300
+ http://www.debian.org/doc/debian-policy/ch-controlfields.html#s5.7
301
+ - deb: Add --deb-recommends and --deb-suggests (#285, #310; patch by Pranay
302
+ Kanwar)
303
+ - python to rpm: convert "!=" dependency operators in python to "Conflicts"
304
+ in rpm. (#263, #312; patch by Pranay Kanwar)
305
+ - python: fix bug - ignore blank lines in requirements.txt (#312, patch by
306
+ Pranay Kanwar)
307
+
308
+ 0.4.26 (December 27, 2012)
309
+ - rpm: add --rpm-sign flag to sign packages using the 'rpmbuild --sign' flag.
310
+ (#311, Patch by Pranay Kanwar)
311
+ - rpm: fix flag ordering when calling rpmbuild (#309, #315, patch by Trotter
312
+ Cashion)
313
+ - deb: re-enable "Predepends" support (#319, #320, patch by Pranay Kanwar)
314
+ - rpm: fix default 'rpm os' value (#321, 314, 309)
315
+
316
+ 0.4.25 (December 7, 2012)
317
+ - Added --deb-changelog and --rpm-changelog support flags. Both take a path to
318
+ a changelog file. Both must be valid changelog formats for their respective
319
+ package types. (#300, patch by Pranay Kanwar)
320
+ - deb: Multiple "provides" are now supported. (#301, patch by Pranay Kanwar)
321
+ - rpm: Added --rpm-os flag to set the OS target for the rpm. This lets you build
322
+ rpms for linux on OS X and other platforms (with --rpm-os linux). (#309)
323
+ - rpm: Avoid platform-dependent commands in the %install phase (#309, fixes
324
+ 'cp -d' on OSX)
325
+ - python: ignore comments in requirements.txt (#304, patch by Pranay Kanwar)
326
+ - Fixed warning 'already initialized constant' (#274)
327
+
328
+ 0.4.24 (November 30, 2012)
329
+ - Don't include an empty url in rpm spec (#296, #276; patch by Pranay Kanwar)
330
+ - Don't require extra parameters if you use --inputs (#278, #297; Patch by
331
+ Pranay Kanwar)
332
+ - python: supports requirements.txt now for dependency information.
333
+ - python: supports pip now. Use '--python-pip path/to/pip' to have fpm use
334
+ it instead of easy_install.
335
+ - solaris: package building works again (#216, #299, patch by Pierre-Yves
336
+ Ritschard)
337
+
338
+ 0.4.23 (November 26, 2012)
339
+ - The --directories flag is now recursive when the output package is rpm.
340
+ This makes all directories under a given path as owned by the package
341
+ so they'll be removed when the package is uninstalled (#245, #293, #294,
342
+ patch by Justin Ellison)
343
+ - Add fpm version info to '--help' output (#281)
344
+ - gem to rpm: Use 'rubygem(gemname)' for dependencies (#284, patch by
345
+ Jan Vansteenkiste)
346
+ - Fix a bug in gem version mangling (#292, #291; patch by Pranay Kanwar)
347
+ - Fix compatibility with Python 2.5 (#279, patch by Denis Bilenko)
348
+
349
+ 0.4.22 (November 15, 2012)
350
+ - Add --no-depends flag for creating packages with no dependencies listed
351
+ (#289, patch by Brett Gailey)
352
+ - Fix a bug where blank lines were present in a debian control file.
353
+ (#288, patch by Andrew Bunday)
354
+
355
+ 0.4.21 (November 8, 2012)
356
+ - gem: remove restriction on expected gem names (#287)
357
+ - add --directory flag; lets you mark a directory as being owned by a
358
+ package. (#260, #245, patch by ajf8)
359
+ - deb: don't include a version in the Provides field (#280)
360
+ - gem: if the version is '1.1' make it imply '1.1.0' (#269, patch by
361
+ Radim Marek)
362
+
363
+ 0.4.20 (October 5, 2012)
364
+ - python: only specify --install-{scripts,lib,data} flags to setup.py if
365
+ they were given on the command line to fpm. Fixes #273.
366
+
367
+ 0.4.19 (September 26, 2012)
368
+ - Escape '%' characters in file names (#266, #222. Patch by John Wittkoski)
369
+
370
+ 0.4.18 (September 25, 2012)
371
+ - Fix regression in rpm building where the epoch in was missing in the rpm,
372
+ but prior fpm versions defaulted it to 1. This caused rpms built with newer
373
+ fpms to appear "older" than older rpms. Tests added to ensure this regression
374
+ is caught prior to future releases! (Reported by eliklein)
375
+
376
+ 0.4.17 (September 12, 2012)
377
+ - Remove accidental JSON warning when using '-s python'
378
+
379
+ 0.4.16 (September 6, 2012)
380
+ - Fix compatibility with Ruby 1.8.7 (broken in 0.4.15)
381
+
382
+ 0.4.15 (September 6, 2012)
383
+ - pear: support custom channels with --pear-channel <channel> (#207)
384
+ Example: fpm -s pear -t deb --pear-channel pear.drush.org drush
385
+ - permit literal '\n' in --description, fpm will replace with a newline
386
+ character. Example: fpm --description "line one\nline two" (#251)
387
+ - improve error messaging when trying to output a package to a directory that
388
+ doesn't exist (#244)
389
+ - deb: convert '>' and '<' dependency operators to the correct '>>' and '<<'
390
+ debian version operators (#250, patch by Thomas Meson).
391
+ - deb: add --deb-priority flag (#232) for setting the debian 'priority'
392
+ value for your package.
393
+ - add --template-value. Used to expose arbitrary values to script templates.
394
+ If you do --template-value hello=world, in your template you can do
395
+ <%= hello %> to get 'world' to show up in your maintainer scripts.
396
+ - python: add --python-install-data flag to set the --install-data option to
397
+ setup.py (#255, patch by Thomas Meson)
398
+ - Reject bad dependency flags (ones containing commas) and offer alternative.
399
+ (#257)
400
+ - Try to copy a file if hardlinking fails with permission problems (#253,
401
+ patch by Jacek Lach)
402
+ - Make --exclude, if a directory, include itself and any children, recursive.
403
+ (#248)
404
+
405
+ 0.4.14 (August 24, 2012)
406
+ - rpm: Replace newlines with space in any license setting. (#252)
407
+
408
+ 0.4.13 (August 14, 2012)
409
+ - Make --exclude accept path prefixes as well. If you have a files in
410
+ 'usr/share/man' in your package, you can now exclude all of a subdir
411
+ by doing '--exclude usr/share/man'
412
+
413
+ 0.4.12 (August 10, 2012)
414
+ - Fix a major bug introduced in 0.4.11 that caused all deb packages to
415
+ contain empty maintainer scripts if not otherwise specified, which made
416
+ apt/dpkg quite unhappy
417
+
418
+ 0.4.11 (August 7, 2012)
419
+ - Fix some symlink handling to prevent links from being followed during
420
+ cleanup (#228, patch by sbuss)
421
+ - rpm: 'vendor' in rpm spec is now omitted if empty or nil. This fixes a bug
422
+ where rpmbuild fails due to empty 'Vendor' tag if you convert rpm to rpm.
423
+ - internal: remove empty directories marked by --exclude (#205, patch by
424
+ jimbrowne)
425
+ - dir: don't try to set utime on symlinks (#234, #240, patch by ctgswallow)
426
+ - rpm: relocatable rpms now supported when using the '--prefix' flag.
427
+ Example: fpm -s dir -t rpm --prefix /usr/local -n example /etc/motd
428
+ (patch by jkoppe)
429
+ - deb: --deb-compression flag: Support different compression methods.
430
+ Default continues to be gzip.
431
+ - new flag: --template-scripts. This lets you write script templates for
432
+ --after-install, etc. Templates are ERB, so you can do things like
433
+ '<%= name %>' to get the package name in the script, etc.
434
+ - warn on command invocations that appear to have stray flags to try and
435
+ help users who have complex command lines that are failling.
436
+
437
+ 0.4.10 (May 25, 2012)
438
+ - Fix python package support for python3 (#212, patch by Slezhuk Evgeniy)
439
+ - Preserve file metadata (time, owner, etc) when copying with the dir
440
+ package. (#217, patch by Marshall T. Vandegrift)
441
+ - Missing executables will now error more readably in fpm.
442
+ - Fix gem and python 'version' selection (#215, #204)
443
+ - Dependencies using '!=' will now map to 'Conflicts' in deb packages. (#221,
444
+ patch by Sven Fischer)
445
+ - Allow setting default user/group for files in rpm packages (#208, patch by
446
+ Jason Rogers). Note: This adds --user and --group flags to effect this.
447
+ These flags may go away in the future, but if they do, they will be
448
+ - In python packages set 'install-data' correctly. (#223, patch by Jamie
449
+ Scheinblum)
450
+
451
+ 0.4.9 (April 25, 2012)
452
+ - Fix --prefix support when building gems (#213, patch by Jan Vansteenkiste)
453
+
454
+ 0.4.8 (April 25, 2012)
455
+ - RPM: use 'noreplace' option for config files (#194, patch by Steve Lum)
456
+ - Python: Fix bug around exact dependency versions (#206, patch by Lars van
457
+ de Kerkhof)
458
+ - Gem->RPM: Make 'provides' "rubygem(thegemname)" instead of "rubygem-thegemname"
459
+ - Fix oddity where Ruby would complain about constant redefinition (#198,
460
+ patch by Marcus Vinicius Ferreira)
461
+
462
+ 0.4.7 skipped.
463
+
464
+ 0.4.6 (April 10, 2012)
465
+ - Work around more problems in RPM with respect to file listing (#202)
466
+
467
+ 0.4.5 (April 3, 2012)
468
+ - Fix gem->rpm conversion where the '~>' rubygem version operator (#193,
469
+ patch by antoncohen)
470
+ - Escape filenames RPM install process (permits files with spaces, dollar signs, etc)
471
+ (#196, reported by pspiertz)
472
+
473
+ 0.4.4 (March 30, 2012)
474
+ - Fix a bug in gem bin_dir handling (Calen Pennington)
475
+ - The --config-files flag should work again (Brian Akins)
476
+ - Fix syntax error when using --deb-pre-depends (Andrew Bennett)
477
+ - Make --exclude work again (#185, #186) (Calen Pennington)
478
+ - Fix file listing so that rpm packages don't declare ownership on / and
479
+ /usr, etc.
480
+ - make --deb-custom-control to work again (Tor Arne Vestbø)
481
+ - Add --rpm-digest flag to allow selection of the rpm 'file name' digest
482
+ algorithm. Default is 'md5' since it works on the most rpm systems.
483
+ - Reimplement old behavior assuming "." as the input when using '-s dir' and
484
+ also setting -C (#187)
485
+ - Set BuildRoot on rpm to work around an rpmbuild bug(?) on CentOS 5 (#191)
486
+ - Add --rpm-compression flag to allow selection of the rpm payload
487
+ compression. Default is 'gzip' since it works on the most rpm systems
488
+ - Specs now pass on ubuntu/32bit systems (found by travis-ci.org's test runner)
489
+ - Improve default values of iteration and epoch (#190)
490
+ - Make FPM::Package#files list only 'leaf' nodes (files, empty directories,
491
+ symlinks, etc).
492
+
493
+ 0.4.3 (March 21, 2012)
494
+ - Fix bug in python packaging when invoked with a relative path to a setup.py
495
+ (Reported by Thomas Meson, https://github.com/jordansissel/fpm/pull/180)
496
+
497
+ 0.4.2 (March 21, 2012)
498
+ - Set default temporary directory to /tmp
499
+ (https://github.com/jordansissel/fpm/issues/174)
500
+ - Improve symlink handling (patch by Aleix Conchillo Flaqué, pull/177))
501
+ - Python package support changes (thanks to input by Luke Macken):
502
+ * New flag: --python-install-bin. Sets the location for python package
503
+ scripts (default: /usr/bin)
504
+ * New flag: --python-install-lib. Sets the location for the python
505
+ package to install libs to, default varies by system. Usually something
506
+ like /usr/lib/python2.7/site-packages.
507
+ * Fix up --prefix support
508
+ * Improve staged package installation
509
+
510
+ 0.4.1 (March 19, 2012)
511
+ - Fix fpm so it works in ruby 1.8 again.
512
+ Tests run, and passing:
513
+ rvm 1.8.7,1.9.2,1.9.3 do bundle exec rspec
514
+
515
+ 0.4.0 (March 18, 2012)
516
+ - Complete rewrite of pretty much everything.
517
+ * Otherwise, the 'fpm' command functionality should be the same
518
+ * Please let me know if something broke!
519
+ - Now has an API (see examples/api directory)
520
+ - Also has a proper test suite
521
+ - Updated the rpm spec generator to disable all the ways I've found rpmbuild
522
+ to molest packages. This means that fpm-generated rpms will no longer
523
+ strip libraries, move files around, randomly mutate jar files, etc.
524
+ - Add --license and --vendor settings (via Pieter Loubser)
525
+ - python support: try to name python packages sanely. Some pypi packages
526
+ are literally called 'python-foo' so make sure we generate packages named
527
+ 'python-foo' and not 'python-python-foo' (via Thomas Meson)
528
+ - rpm support: Add --rpm-rpmbuild-define for passing a --define flag to rpmbuild
529
+ (via Naresh V)
530
+ - PHP pear source support (fpm -s pear ...) (via Andrew Gaffney)
531
+
532
+ 0.3.10 (Oct 10, 2011)
533
+ - Allow taking a list of files/inputs on stdin with '-' or with the --inputs
534
+ flag. (Matt Patterson)
535
+ - (python) pass -U to easy_install (Khalid Goudeaux)
536
+ - (debian) quote paths in md5sum calls (Matt Patterson)
537
+ - (debian) quiet stderr from dpkg --print-architecture
538
+
539
+ 0.3.9 (Sep 8, 2011)
540
+ - Fix bug in 'dir' source that breaks full paths
541
+ - Added a bunch of tests (yaay)
542
+
543
+ 0.3.8 and earlier: I have not kept this file up to date very well... Sorry :(
544
+
545
+ 0.2.29 (May 20, 2011)
546
+ - Add 'tar' source support. Useful for binary releases to repackage as rpms
547
+ and debs. Example:
548
+ fpm -s tar -t rpm -n firefox -v 4.0.1 \
549
+ --prefix /opt/firefox/4.0.1 firefox-4.0.1.tar.bz2
550
+
551
+ 0.2.28 (May 18, 2011)
552
+ - Use --replaces as "Obsoletes" in rpms.
553
+
554
+ 0.2.27 (May 18, 2011)
555
+ - If present, DEBEMAIL and DEBFULLNAME environment variables will be used as
556
+ the default maintainer. Previously the default was simply <$user@$hostname>
557
+ https://github.com/jordansissel/fpm/issues/37
558
+ - Add '--replaces' flag for specifying packages replaced by the one you are
559
+ building. This only functions in .deb packages now until I find a suitable
560
+ synonym in RPM.
561
+ - Add --python-bin and --python-easyinstall flags. This lets you choose specific
562
+ python and easy_install tools to use when building. Default is simply
563
+ 'python' and 'easy_install' respectively.
564
+ - Add support for ~/.fpmrc - The format of this file is the same as the flags.
565
+ One flag per line. https://github.com/jordansissel/fpm/issues/38
566
+ Example:
567
+ --python-bin=/usr/bin/python2.7
568
+ --python-easyinstall=/usr/bin/easy_install2.7
569
+
570
+ 0.2.26 and earlier
571
+ No changelist tracked. My bad, yo.