fpm 1.12.0 → 1.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.rst +15 -0
- data/lib/fpm/package/deb.rb +9 -2
- data/lib/fpm/package/freebsd.rb +14 -19
- data/lib/fpm/package/gem.rb +1 -1
- data/lib/fpm/package/rpm.rb +5 -2
- data/lib/fpm/util.rb +29 -46
- data/lib/fpm/version.rb +1 -1
- data/templates/deb/postinst_upgrade.sh.erb +1 -0
- data/templates/rpm.erb +4 -4
- metadata +22 -51
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f231a03d2baac73ae0f4f8f15094237ca94ec43de51ef0b86dde886a8647efa2
|
4
|
+
data.tar.gz: 91666a6a7b09b6f3ab3bb6dccf32e647d58a43754d2163a4748ae8a2e14515e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b21d482730c5e532f9bf6f9e7faf51bf712aa9f75ebab9b8453d1f1b9cd9f1e0ef5a32bb84f18808bc5bc8c15a8e1c47546ad1d474e9c3c581eaa7afe85e80b9
|
7
|
+
data.tar.gz: 72963da4b7601fa8d416ab20ce26e15838960b7dca9c364b38312266857e3beb9b11b32a9c708ff393a612f0e5ff350b6098fd794c4b5b05fe767c0a4323dfdd
|
data/CHANGELOG.rst
CHANGED
@@ -1,6 +1,21 @@
|
|
1
1
|
Release Notes and Change Log
|
2
2
|
============================
|
3
3
|
|
4
|
+
1.13.0 (June 19, 2021)
|
5
|
+
^^^^^^^^^^^^^^^^^^^^^^
|
6
|
+
* Apple M1 users should now work (`#1772`_, `#1785`_, `#1786`_; Jordan Sissel)
|
7
|
+
* Removed `ffi` ruby library as a dependency. This should make it easier to support a wider range of Ruby versions (Ruby 2.2, 3.0, etc) and platforms (like arm64, Apple M1, etc) in the future. (`#1785`_, `#1786`_; Jordan Sissel)
|
8
|
+
* Now uses the correct architecture synonym for ARM 64 systems. Debian uses `arm64` as a synonym for what other systems call `aarch64` (linux kernel, RPM, Arch Linux). (`#1775`_; Steve Kamerman)
|
9
|
+
* Docs: Fix a typo in an example (`#1785`_; Zoe O'Connell)
|
10
|
+
* rpm: File paths can now contain single-quote characters (`#1774`_; Jordan Sissel)
|
11
|
+
* rpm: Use correct SPEC syntax when using --after-upgrade or similar features (`#1761`_; Jo Vandeginste. Robert Fielding)
|
12
|
+
* Ruby 3.0 support: Added `rexml` as a runtime dependency. In Ruby 2.0, `rexml` came by default, but in Ruby 3.0, `rexml` is now a bundled gem and some distributiosn do not include it by default. (`#1794`_; Jordan Sissel)
|
13
|
+
* Fix error "git: not found (Git::GitExecuteError)". Now loads `git` library only when using git features. (`#1753`_, `#1748`_, `#1751`_, `#1766`_; Jordan Sissel, Cameron Nemo, Jason Rogers, Luke Short)
|
14
|
+
* deb: Fix syntax error in `postinst` (`--after-install`) script. (`#1752`_, `#1749`_, `#1764`_; rmanus, Adam Mohammed, Elliot Murphy, kimw, Jordan Sissel)
|
15
|
+
* deb: --deb-compression now uses the same compression and file suffix on the control.tar file (`#1760`_; Philippe Poilbarbe
|
16
|
+
)
|
17
|
+
|
18
|
+
|
4
19
|
1.12.0 (January 19, 2021)
|
5
20
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
6
21
|
|
data/lib/fpm/package/deb.rb
CHANGED
@@ -178,7 +178,7 @@ class FPM::Package::Deb < FPM::Package
|
|
178
178
|
end
|
179
179
|
|
180
180
|
option "--systemd", "FILEPATH", "Add FILEPATH as a systemd script",
|
181
|
-
|
181
|
+
:multivalued => true do |file|
|
182
182
|
next File.expand_path(file)
|
183
183
|
end
|
184
184
|
|
@@ -228,6 +228,9 @@ class FPM::Package::Deb < FPM::Package
|
|
228
228
|
when "x86_64"
|
229
229
|
# Debian calls x86_64 "amd64"
|
230
230
|
@architecture = "amd64"
|
231
|
+
when "aarch64"
|
232
|
+
# Debian calls aarch64 "arm64"
|
233
|
+
@architecture = "arm64"
|
231
234
|
when "noarch"
|
232
235
|
# Debian calls noarch "all"
|
233
236
|
@architecture = "all"
|
@@ -588,15 +591,19 @@ class FPM::Package::Deb < FPM::Package
|
|
588
591
|
case self.attributes[:deb_compression]
|
589
592
|
when "gz", nil
|
590
593
|
datatar = build_path("data.tar.gz")
|
594
|
+
controltar = build_path("control.tar.gz")
|
591
595
|
compression = "-z"
|
592
596
|
when "bzip2"
|
593
597
|
datatar = build_path("data.tar.bz2")
|
598
|
+
controltar = build_path("control.tar.bz2")
|
594
599
|
compression = "-j"
|
595
600
|
when "xz"
|
596
601
|
datatar = build_path("data.tar.xz")
|
602
|
+
controltar = build_path("control.tar.xz")
|
597
603
|
compression = "-J"
|
598
604
|
when "none"
|
599
605
|
datatar = build_path("data.tar")
|
606
|
+
controltar = build_path("control.tar")
|
600
607
|
compression = ""
|
601
608
|
else
|
602
609
|
raise FPM::InvalidPackageConfiguration,
|
@@ -616,7 +623,7 @@ class FPM::Package::Deb < FPM::Package
|
|
616
623
|
# the 'debian-binary' file has to be first
|
617
624
|
File.expand_path(output_path).tap do |output_path|
|
618
625
|
::Dir.chdir(build_path) do
|
619
|
-
safesystem(*ar_cmd, output_path, "debian-binary",
|
626
|
+
safesystem(*ar_cmd, output_path, "debian-binary", controltar, datatar)
|
620
627
|
end
|
621
628
|
end
|
622
629
|
|
data/lib/fpm/package/freebsd.rb
CHANGED
@@ -17,10 +17,6 @@ class FPM::Package::FreeBSD < FPM::Package
|
|
17
17
|
:default => "fpm/<name>"
|
18
18
|
|
19
19
|
def output(output_path)
|
20
|
-
# See https://github.com/jordansissel/fpm/issues/1090
|
21
|
-
# require xz later, because this triggers a load of liblzma.so.5 that is
|
22
|
-
# unavailable on older CentOS/RH distros.
|
23
|
-
require "xz"
|
24
20
|
output_check(output_path)
|
25
21
|
|
26
22
|
# Build the packaging metadata files.
|
@@ -80,22 +76,19 @@ class FPM::Package::FreeBSD < FPM::Package
|
|
80
76
|
file.write(pkgdata.to_json + "\n")
|
81
77
|
end
|
82
78
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
FPM::Util::TarWriter.new(xz) do |tar|
|
87
|
-
# The manifests must come first for pkg.
|
88
|
-
add_path(tar, "+COMPACT_MANIFEST",
|
89
|
-
File.join(staging_path, "+COMPACT_MANIFEST"))
|
90
|
-
add_path(tar, "+MANIFEST",
|
91
|
-
File.join(staging_path, "+MANIFEST"))
|
92
|
-
|
93
|
-
checksums.keys.each do |path|
|
94
|
-
add_path(tar, "/" + path, File.join(staging_path, path))
|
95
|
-
end
|
96
|
-
end
|
97
|
-
end
|
79
|
+
file_list = File.new(build_path("file_list"), "w")
|
80
|
+
files.each do |i|
|
81
|
+
file_list.puts(i)
|
98
82
|
end
|
83
|
+
file_list.close
|
84
|
+
|
85
|
+
# Create the .txz package archive from the files in staging_path.
|
86
|
+
# We use --files-from here to keep the tar entries from having `./` as the prefix.
|
87
|
+
# This is done as a best effor to mimic what FreeBSD packages do, having everything at the top-level as
|
88
|
+
# file names, like "+MANIFEST" instead of "./+MANIFEST"
|
89
|
+
# Note: This will include top-level files like "/usr/bin/foo" listed in the tar as "usr/bin/fo" without
|
90
|
+
# a leading slash. I don't know if this has any negative impact on freebsd packages.
|
91
|
+
safesystem("tar", "-Jcf", output_path, "-C", staging_path, "--files-from", build_path("file_list"))
|
99
92
|
end # def output
|
100
93
|
|
101
94
|
# Handle architecture naming conversion:
|
@@ -110,6 +103,8 @@ class FPM::Package::FreeBSD < FPM::Package
|
|
110
103
|
wordsize = case @architecture
|
111
104
|
when nil, 'native'
|
112
105
|
%x{getconf LONG_BIT}.chomp # 'native' is current arch
|
106
|
+
when 'arm64'
|
107
|
+
'64'
|
113
108
|
when 'amd64'
|
114
109
|
'64'
|
115
110
|
when 'i386'
|
data/lib/fpm/package/gem.rb
CHANGED
@@ -4,7 +4,6 @@ require "rubygems"
|
|
4
4
|
require "fileutils"
|
5
5
|
require "fpm/util"
|
6
6
|
require "yaml"
|
7
|
-
require "git"
|
8
7
|
|
9
8
|
# A rubygems package.
|
10
9
|
#
|
@@ -105,6 +104,7 @@ class FPM::Package::Gem < FPM::Package
|
|
105
104
|
FileUtils.mkdir(download_dir) unless File.directory?(download_dir)
|
106
105
|
|
107
106
|
if attributes[:gem_git_repo]
|
107
|
+
require "git"
|
108
108
|
logger.debug("Git cloning in directory #{download_dir}")
|
109
109
|
g = Git.clone(attributes[:gem_git_repo],gem_name,:path => download_dir)
|
110
110
|
if attributes[:gem_git_branch]
|
data/lib/fpm/package/rpm.rb
CHANGED
@@ -190,14 +190,15 @@ class FPM::Package::RPM < FPM::Package
|
|
190
190
|
# Replace ? with [?] to make rpm not use globs
|
191
191
|
# Replace % with [%] to make rpm not expand macros
|
192
192
|
def rpm_fix_name(name)
|
193
|
-
name = name.gsub(/(\ |\[|\]
|
193
|
+
name = name.gsub(/(\ |\[|\]|\*|\?|\%|\$|')/, {
|
194
194
|
' ' => '?',
|
195
195
|
'%' => '[%]',
|
196
196
|
'$' => '[$]',
|
197
197
|
'?' => '[?]',
|
198
198
|
'*' => '[*]',
|
199
199
|
'[' => '[\[]',
|
200
|
-
']' => '[\]]'
|
200
|
+
']' => '[\]]',
|
201
|
+
"'" => "\\'",
|
201
202
|
})
|
202
203
|
end
|
203
204
|
|
@@ -239,6 +240,8 @@ class FPM::Package::RPM < FPM::Package
|
|
239
240
|
return %x{uname -m}.chomp # default to current arch
|
240
241
|
when "amd64" # debian and redhat disagree on architecture names
|
241
242
|
return "x86_64"
|
243
|
+
when "arm64" # debian and redhat disagree on architecture names
|
244
|
+
return "aarch64"
|
242
245
|
when "native"
|
243
246
|
return %x{uname -m}.chomp # 'native' is current arch
|
244
247
|
when "all"
|
data/lib/fpm/util.rb
CHANGED
@@ -1,21 +1,8 @@
|
|
1
1
|
require "fpm/namespace"
|
2
|
-
require "childprocess"
|
3
|
-
require "ffi"
|
4
2
|
require "fileutils"
|
5
3
|
|
6
4
|
# Some utility functions
|
7
5
|
module FPM::Util
|
8
|
-
extend FFI::Library
|
9
|
-
ffi_lib FFI::Library::LIBC
|
10
|
-
|
11
|
-
# mknod is __xmknod in glibc a wrapper around mknod to handle
|
12
|
-
# various stat struct formats. See bits/stat.h in glibc source
|
13
|
-
begin
|
14
|
-
attach_function :mknod, :mknod, [:string, :uint, :ulong], :int
|
15
|
-
rescue FFI::NotFoundError
|
16
|
-
# glibc/io/xmknod.c int __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
|
17
|
-
attach_function :xmknod, :__xmknod, [:int, :string, :uint, :pointer], :int
|
18
|
-
end
|
19
6
|
|
20
7
|
# Raised if safesystem cannot find the program to run.
|
21
8
|
class ExecutableNotFound < StandardError; end
|
@@ -23,6 +10,12 @@ module FPM::Util
|
|
23
10
|
# Raised if a safesystem program exits nonzero
|
24
11
|
class ProcessFailed < StandardError; end
|
25
12
|
|
13
|
+
# Raised when a named pipe cannot be copied due to missing functions in fpm and ruby.
|
14
|
+
class NamedPipeCannotBeCopied < StandardError; end
|
15
|
+
|
16
|
+
# Raised when an attempting to copy a special file such as a block device.
|
17
|
+
class UnsupportedSpecialFile < StandardError; end
|
18
|
+
|
26
19
|
# Is the given program in the system's PATH?
|
27
20
|
def program_in_path?(program)
|
28
21
|
# return false if path is not set
|
@@ -146,31 +139,22 @@ module FPM::Util
|
|
146
139
|
|
147
140
|
stdout_r, stdout_w = IO.pipe
|
148
141
|
stderr_r, stderr_w = IO.pipe
|
142
|
+
stdin_r, stdin_w = IO.pipe
|
149
143
|
|
150
|
-
|
151
|
-
process.environment.merge!(env)
|
152
|
-
|
153
|
-
process.io.stdout = stdout_w
|
154
|
-
process.io.stderr = stderr_w
|
155
|
-
|
156
|
-
if block_given? and opts[:stdin]
|
157
|
-
process.duplex = true
|
158
|
-
end
|
159
|
-
|
160
|
-
process.start
|
144
|
+
pid = Process.spawn(env, *args2, :out => stdout_w, :err => stderr_w, :in => stdin_r)
|
161
145
|
|
162
146
|
stdout_w.close; stderr_w.close
|
163
|
-
logger.debug("Process is running", :pid =>
|
147
|
+
logger.debug("Process is running", :pid => pid)
|
164
148
|
if block_given?
|
165
149
|
args3 = []
|
166
150
|
args3.push(process) if opts[:process]
|
167
|
-
args3.push(
|
151
|
+
args3.push(stdin_w) if opts[:stdin]
|
168
152
|
args3.push(stdout_r) if opts[:stdout]
|
169
153
|
args3.push(stderr_r) if opts[:stderr]
|
170
154
|
|
171
155
|
yield(*args3)
|
172
156
|
|
173
|
-
|
157
|
+
stdin_w_close if opts[:stdin] and not stdin_w.closed?
|
174
158
|
stdout_r.close unless stdout_r.closed?
|
175
159
|
stderr_r.close unless stderr_r.closed?
|
176
160
|
else
|
@@ -179,9 +163,10 @@ module FPM::Util
|
|
179
163
|
logger.pipe(stdout_r => :info, stderr_r => :info)
|
180
164
|
end
|
181
165
|
|
182
|
-
|
166
|
+
Process.waitpid(pid)
|
167
|
+
status = $?
|
183
168
|
|
184
|
-
return
|
169
|
+
return status.exitstatus
|
185
170
|
end # def execmd
|
186
171
|
|
187
172
|
# Run a command safely in a way that gets reports useful errors.
|
@@ -316,19 +301,6 @@ module FPM::Util
|
|
316
301
|
return @@tar_cmd_deterministic
|
317
302
|
end
|
318
303
|
|
319
|
-
# wrapper around mknod ffi calls
|
320
|
-
def mknod_w(path, mode, dev)
|
321
|
-
rc = -1
|
322
|
-
case %x{uname -s}.chomp
|
323
|
-
when 'Linux'
|
324
|
-
# bits/stat.h #define _MKNOD_VER_LINUX 0
|
325
|
-
rc = xmknod(0, path, mode, FFI::MemoryPointer.new(dev))
|
326
|
-
else
|
327
|
-
rc = mknod(path, mode, dev)
|
328
|
-
end
|
329
|
-
rc
|
330
|
-
end
|
331
|
-
|
332
304
|
def copy_metadata(source, destination)
|
333
305
|
source_stat = File::lstat(source)
|
334
306
|
dest_stat = File::lstat(destination)
|
@@ -354,10 +326,21 @@ module FPM::Util
|
|
354
326
|
|
355
327
|
def copy_entry(src, dst, preserve=false, remove_destination=false)
|
356
328
|
case File.ftype(src)
|
357
|
-
when 'fifo'
|
358
|
-
|
359
|
-
|
360
|
-
|
329
|
+
when 'fifo'
|
330
|
+
if File.respond_to?(:mkfifo)
|
331
|
+
File.mkfifo(dst)
|
332
|
+
elsif program_exists?("mkfifo")
|
333
|
+
safesystem("mkfifo", dst)
|
334
|
+
else
|
335
|
+
raise NamedPipeCannotBeCopied("Unable to copy. Cannot find program 'mkfifo' and Ruby is missing the 'File.mkfifo' method: #{src}")
|
336
|
+
end
|
337
|
+
when 'socket'
|
338
|
+
require "socket"
|
339
|
+
# In 2019, Ruby's FileUtils added this as a way to "copy" a unix socket.
|
340
|
+
# Reference: https://github.com/ruby/fileutils/pull/36/files
|
341
|
+
UNIXServer.new(dst).close()
|
342
|
+
when 'characterSpecial', 'blockSpecial'
|
343
|
+
raise UnsupportedSpecialFile.new("File is device which fpm doesn't know how to copy (#{File.ftype(src)}): #{src}")
|
361
344
|
when 'directory'
|
362
345
|
FileUtils.mkdir(dst) unless File.exists? dst
|
363
346
|
else
|
data/lib/fpm/version.rb
CHANGED
@@ -20,6 +20,7 @@ debsystemctl=$(command -v deb-systemd-invoke || echo systemctl)
|
|
20
20
|
<% attributes[:deb_systemd].each do |service| -%>
|
21
21
|
if ! systemctl is-enabled <%= service %> >/dev/null
|
22
22
|
then
|
23
|
+
: # Ensure this if-clause is not empty. If it were empty, and we had an 'else', then it is an error in shell syntax
|
23
24
|
<% if attributes[:deb_systemd_enable?]-%>
|
24
25
|
systemctl enable <%= service %> >/dev/null || true
|
25
26
|
<% end -%>
|
data/templates/rpm.erb
CHANGED
@@ -126,7 +126,7 @@ Obsoletes: <%= repl %>
|
|
126
126
|
-%>
|
127
127
|
<% if script?(:before_upgrade) or script?(:after_upgrade) -%>
|
128
128
|
<% if script?(:before_upgrade) or script?(:before_install) -%>
|
129
|
-
%pre <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end
|
129
|
+
%pre <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end %>
|
130
130
|
upgrade() {
|
131
131
|
<%# Making sure that at least one command is in the function -%>
|
132
132
|
<%# avoids a lot of potential errors, including the case that -%>
|
@@ -156,7 +156,7 @@ then
|
|
156
156
|
fi
|
157
157
|
<% end -%>
|
158
158
|
<% if script?(:after_upgrade) or script?(:after_install) -%>
|
159
|
-
%post <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end
|
159
|
+
%post <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end %>
|
160
160
|
upgrade() {
|
161
161
|
<%# Making sure that at least one command is in the function -%>
|
162
162
|
<%# avoids a lot of potential errors, including the case that -%>
|
@@ -186,7 +186,7 @@ then
|
|
186
186
|
fi
|
187
187
|
<% end -%>
|
188
188
|
<% if script?(:before_remove) -%>
|
189
|
-
%preun <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end
|
189
|
+
%preun <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end %>
|
190
190
|
if [ "${1}" -eq 0 ]
|
191
191
|
then
|
192
192
|
<%# Making sure that at least one command is in the function -%>
|
@@ -197,7 +197,7 @@ then
|
|
197
197
|
fi
|
198
198
|
<% end -%>
|
199
199
|
<% if script?(:after_remove) -%>
|
200
|
-
%postun <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end
|
200
|
+
%postun <% if attributes[:rpm_macro_expansion?] -%><%= " -e " %> <% end %>
|
201
201
|
if [ "${1}" -eq 0 ]
|
202
202
|
then
|
203
203
|
<%# Making sure that at least one command is in the function -%>
|
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.
|
4
|
+
version: 1.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jordan Sissel
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-06-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -64,14 +64,14 @@ dependencies:
|
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: 0.0.
|
67
|
+
version: 0.0.11
|
68
68
|
type: :runtime
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: 0.0.
|
74
|
+
version: 0.0.11
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: clamp
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,34 +86,6 @@ dependencies:
|
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: 1.0.0
|
89
|
-
- !ruby/object:Gem::Dependency
|
90
|
-
name: childprocess
|
91
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - "<"
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: 1.0.0
|
96
|
-
type: :runtime
|
97
|
-
prerelease: false
|
98
|
-
version_requirements: !ruby/object:Gem::Requirement
|
99
|
-
requirements:
|
100
|
-
- - "<"
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version: 1.0.0
|
103
|
-
- !ruby/object:Gem::Dependency
|
104
|
-
name: ffi
|
105
|
-
requirement: !ruby/object:Gem::Requirement
|
106
|
-
requirements:
|
107
|
-
- - "~>"
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: 1.12.0
|
110
|
-
type: :runtime
|
111
|
-
prerelease: false
|
112
|
-
version_requirements: !ruby/object:Gem::Requirement
|
113
|
-
requirements:
|
114
|
-
- - "~>"
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
version: 1.12.0
|
117
89
|
- !ruby/object:Gem::Dependency
|
118
90
|
name: rake
|
119
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -128,20 +100,6 @@ dependencies:
|
|
128
100
|
- - "~>"
|
129
101
|
- !ruby/object:Gem::Version
|
130
102
|
version: '10'
|
131
|
-
- !ruby/object:Gem::Dependency
|
132
|
-
name: ruby-xz
|
133
|
-
requirement: !ruby/object:Gem::Requirement
|
134
|
-
requirements:
|
135
|
-
- - "~>"
|
136
|
-
- !ruby/object:Gem::Version
|
137
|
-
version: 0.2.3
|
138
|
-
type: :runtime
|
139
|
-
prerelease: false
|
140
|
-
version_requirements: !ruby/object:Gem::Requirement
|
141
|
-
requirements:
|
142
|
-
- - "~>"
|
143
|
-
- !ruby/object:Gem::Version
|
144
|
-
version: 0.2.3
|
145
103
|
- !ruby/object:Gem::Dependency
|
146
104
|
name: pleaserun
|
147
105
|
requirement: !ruby/object:Gem::Requirement
|
@@ -190,6 +148,20 @@ dependencies:
|
|
190
148
|
- - ">="
|
191
149
|
- !ruby/object:Gem::Version
|
192
150
|
version: '0'
|
151
|
+
- !ruby/object:Gem::Dependency
|
152
|
+
name: rexml
|
153
|
+
requirement: !ruby/object:Gem::Requirement
|
154
|
+
requirements:
|
155
|
+
- - ">="
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
158
|
+
type: :runtime
|
159
|
+
prerelease: false
|
160
|
+
version_requirements: !ruby/object:Gem::Requirement
|
161
|
+
requirements:
|
162
|
+
- - ">="
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '0'
|
193
165
|
- !ruby/object:Gem::Dependency
|
194
166
|
name: rspec
|
195
167
|
requirement: !ruby/object:Gem::Requirement
|
@@ -306,7 +278,7 @@ homepage: https://github.com/jordansissel/fpm
|
|
306
278
|
licenses:
|
307
279
|
- MIT-like
|
308
280
|
metadata: {}
|
309
|
-
post_install_message:
|
281
|
+
post_install_message:
|
310
282
|
rdoc_options: []
|
311
283
|
require_paths:
|
312
284
|
- lib
|
@@ -322,9 +294,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
322
294
|
- !ruby/object:Gem::Version
|
323
295
|
version: '0'
|
324
296
|
requirements: []
|
325
|
-
|
326
|
-
|
327
|
-
signing_key:
|
297
|
+
rubygems_version: 3.2.15
|
298
|
+
signing_key:
|
328
299
|
specification_version: 4
|
329
300
|
summary: fpm - package building and mangling
|
330
301
|
test_files: []
|