fpm 1.14.1 → 1.14.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.rst +9 -0
- data/lib/fpm/package/deb.rb +9 -10
- data/lib/fpm/package/pacman.rb +1 -1
- data/lib/fpm/package/rpm.rb +19 -10
- data/lib/fpm/version.rb +1 -1
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8d9090d2dd285f34892443936dfd389afe4f566eadc9cc3eb8cdc2103f93f712
|
4
|
+
data.tar.gz: 44e67a378384be66baddf1c5dfcb1a2ed88f1b512ed84b9bba7c823866e71e31
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 68e628235ec80373159575e51ece876047f12fc9a149c03c4652424ad29605059e83483e0d1dcae2e85fba9bbe53989a6489d9b18f23e699afd787401c215264
|
7
|
+
data.tar.gz: 873f374ccb59dcdd95bf0f586a007a46cc0a4a9d28ebdb616dc829d8b3f8fbf80b9231b0625050d4d1b6e0153ee0df168eaac712c436a6724cd70d7116311b7d
|
data/CHANGELOG.rst
CHANGED
@@ -1,6 +1,15 @@
|
|
1
1
|
Release Notes and Change Log
|
2
2
|
============================
|
3
3
|
|
4
|
+
1.14.2 (March 30, 2022)
|
5
|
+
^^^^^^^^^^^^^^^^^^^^^^^
|
6
|
+
* deb: fix bug causing ``--deb-compression none`` to invoke ``tar`` incorrectly (`#1879`_; John Howard)
|
7
|
+
* rpm: Better support for paths that have spaces and mixed quotation marks in them. (`#1882`_, `#1886`_, `#1385`_; John Bollinger and Jordan Sissel)
|
8
|
+
* pacman: Fix typo preventing the use of ``--pacman-compression xz`` (`#1876`_; mszprejda)
|
9
|
+
* docs: All supported package types now have dedicated documentation pages. Some pages are small stubs and would benefit from future improvement. (`#1884`_; mcandre, Jordan Sissel)
|
10
|
+
* docs: Small but lovely documentation fixes (`#1875`_ by Corey Quinn, `#1864`_ by Geoff Beier)
|
11
|
+
* Fixed mistake causing the test suite to fail when ``rake`` wasn't available. (`#1877`_; Jordan Sissel)
|
12
|
+
|
4
13
|
1.14.1 (November 10, 2021)
|
5
14
|
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
6
15
|
* Fix a bug that impacted fpm api usage (from other ruby programs) that caused an error "NameError: uninitialized constant FPM::Package::CPAN" when trying to output a Deb package. (`#1854`_, `#1856`_; Karol Bucek, Jordan Sissel)
|
data/lib/fpm/package/deb.rb
CHANGED
@@ -613,25 +613,24 @@ class FPM::Package::Deb < FPM::Package
|
|
613
613
|
when "gz", nil
|
614
614
|
datatar = build_path("data.tar.gz")
|
615
615
|
controltar = build_path("control.tar.gz")
|
616
|
-
|
616
|
+
compression_flags = ["-z"]
|
617
617
|
when "bzip2"
|
618
618
|
datatar = build_path("data.tar.bz2")
|
619
619
|
controltar = build_path("control.tar.gz")
|
620
|
-
|
620
|
+
compression_flags = ["-j"]
|
621
621
|
when "xz"
|
622
622
|
datatar = build_path("data.tar.xz")
|
623
623
|
controltar = build_path("control.tar.xz")
|
624
|
-
|
624
|
+
compression_flags = ["-J"]
|
625
625
|
when "none"
|
626
626
|
datatar = build_path("data.tar")
|
627
627
|
controltar = build_path("control.tar")
|
628
|
-
|
628
|
+
compression_flags = []
|
629
629
|
else
|
630
630
|
raise FPM::InvalidPackageConfiguration,
|
631
631
|
"Unknown compression type '#{self.attributes[:deb_compression]}'"
|
632
632
|
end
|
633
|
-
|
634
|
-
args = [ tar_cmd, "-C", staging_path, compression ] + data_tar_flags + [ "-cf", datatar, "." ]
|
633
|
+
args = [ tar_cmd, "-C", staging_path ] + compression_flags + data_tar_flags + [ "-cf", datatar, "." ]
|
635
634
|
if tar_cmd_supports_sort_names_and_set_mtime? and not attributes[:source_date_epoch].nil?
|
636
635
|
# Use gnu tar options to force deterministic file order and timestamp
|
637
636
|
args += ["--sort=name", ("--mtime=@%s" % attributes[:source_date_epoch])]
|
@@ -906,13 +905,13 @@ class FPM::Package::Deb < FPM::Package
|
|
906
905
|
case self.attributes[:deb_compression]
|
907
906
|
when "gz", "bzip2", nil
|
908
907
|
controltar = "control.tar.gz"
|
909
|
-
|
908
|
+
compression_flags = ["-z"]
|
910
909
|
when "xz"
|
911
910
|
controltar = "control.tar.xz"
|
912
|
-
|
911
|
+
compression_flags = ["-J"]
|
913
912
|
when "none"
|
914
913
|
controltar = "control.tar"
|
915
|
-
|
914
|
+
compression_flags = []
|
916
915
|
else
|
917
916
|
raise FPM::InvalidPackageConfiguration,
|
918
917
|
"Unknown compression type '#{self.attributes[:deb_compression]}'"
|
@@ -922,7 +921,7 @@ class FPM::Package::Deb < FPM::Package
|
|
922
921
|
build_path(controltar).tap do |controltar|
|
923
922
|
logger.info("Creating", :path => controltar, :from => control_path)
|
924
923
|
|
925
|
-
args = [ tar_cmd, "-C", control_path
|
924
|
+
args = [ tar_cmd, "-C", control_path ] + compression_flags + [ "-cf", controltar,
|
926
925
|
"--owner=0", "--group=0", "--numeric-owner", "." ]
|
927
926
|
if tar_cmd_supports_sort_names_and_set_mtime? and not attributes[:source_date_epoch].nil?
|
928
927
|
# Force deterministic file order and timestamp
|
data/lib/fpm/package/pacman.rb
CHANGED
data/lib/fpm/package/rpm.rb
CHANGED
@@ -192,17 +192,26 @@ class FPM::Package::RPM < FPM::Package
|
|
192
192
|
# Replace * with [*] to make rpm not use globs
|
193
193
|
# Replace ? with [?] to make rpm not use globs
|
194
194
|
# Replace % with [%] to make rpm not expand macros
|
195
|
+
# Replace whitespace with ? to make rpm not split the filename
|
196
|
+
# If and only if any of the above are done, then also replace ' with \', " with \", and \ with \\\\
|
197
|
+
# to accommodate escape and quote processing that rpm will perform in that case (but not otherwise)
|
195
198
|
def rpm_fix_name(name)
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
199
|
+
if name.match?(/[ \t*?%$\[\]]/)
|
200
|
+
name = name.gsub(/(\ |\t|\[|\]|\*|\?|\%|\$|'|"|\\)/, {
|
201
|
+
' ' => '?',
|
202
|
+
"\t" => '?',
|
203
|
+
'%' => '[%]',
|
204
|
+
'$' => '[$]',
|
205
|
+
'?' => '[?]',
|
206
|
+
'*' => '[*]',
|
207
|
+
'[' => '[\[]',
|
208
|
+
']' => '[\]]',
|
209
|
+
'"' => '\\"',
|
210
|
+
"'" => "\\'",
|
211
|
+
'\\' => '\\\\\\\\',
|
212
|
+
})
|
213
|
+
end
|
214
|
+
name
|
206
215
|
end
|
207
216
|
|
208
217
|
def rpm_file_entry(file)
|
data/lib/fpm/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fpm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.14.
|
4
|
+
version: 1.14.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jordan Sissel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-03-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -190,6 +190,20 @@ dependencies:
|
|
190
190
|
- - ">="
|
191
191
|
- !ruby/object:Gem::Version
|
192
192
|
version: '0'
|
193
|
+
- !ruby/object:Gem::Dependency
|
194
|
+
name: rake
|
195
|
+
requirement: !ruby/object:Gem::Requirement
|
196
|
+
requirements:
|
197
|
+
- - ">="
|
198
|
+
- !ruby/object:Gem::Version
|
199
|
+
version: '0'
|
200
|
+
type: :development
|
201
|
+
prerelease: false
|
202
|
+
version_requirements: !ruby/object:Gem::Requirement
|
203
|
+
requirements:
|
204
|
+
- - ">="
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
version: '0'
|
193
207
|
description: Convert directories, rpms, python eggs, rubygems, and more to rpms, debs,
|
194
208
|
solaris packages and more. Win at package management without wasting pointless hours
|
195
209
|
debugging bad rpm specs!
|