fpm 1.13.1 → 1.14.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 +21 -8
- data/CONTRIBUTORS +1 -0
- data/lib/fpm/package/deb.rb +83 -6
- data/lib/fpm/package/empty.rb +12 -0
- data/lib/fpm/package/freebsd.rb +1 -3
- data/lib/fpm/package/pyfpm/get_metadata.py +5 -0
- data/lib/fpm/package/python.rb +22 -11
- data/lib/fpm/package/rpm.rb +6 -0
- data/lib/fpm/version.rb +1 -1
- metadata +3 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '0970e7bbf6bfc2becbfc2c4ed787bb08eb8eef555b6cc969f219685dc67c8056'
|
4
|
+
data.tar.gz: 1472f32b8133588cb6ce39311c1f2e16fbbe86204c65b4ec5fc9ed7181fd6550
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 336e859e103edc0c76fa9f89f4dbfc1d9c9a183d7314e405ff8ddafe24134655cfb90c8121566173a4986ad72064b108d89d81e06426e2b3586ec0110d132f9e
|
7
|
+
data.tar.gz: 1e7e9fb8f0eff4dcbf4aa45c526b5295b8534c83d97555d7322e69b6b6a6738494a6fac872aec85a3c94b0b5c86720bef52271d2ae75bb2e8916c4978968ed9f
|
data/CHANGELOG.rst
CHANGED
@@ -1,11 +1,25 @@
|
|
1
1
|
Release Notes and Change Log
|
2
2
|
============================
|
3
3
|
|
4
|
+
1.14.0 (November 9, 2021)
|
5
|
+
^^^^^^^^^^^^^^^^^^^^^^^^^
|
6
|
+
* python: Use pip by default for fetching Python packages. This matches the Python 3 "installation" docs which recommend calling pip as ``python -m pip`` where ``python`` depends on ``--python-bin`` (default "python"). Previous default was to use `easy_install` which is no longer available on many newer systems. To use easy_install, you can set ``--no-python-internal-pip`` to revert this pip default. Further, you can specify your own pip path instead of using ``python -m pip`` with the ``--python-pip /path/to/pip`` flag. (`#1820`_, `#1821`_; Jordan Sissel)
|
7
|
+
* python: Support extras_require build markers in python packages (`#1307`_, `#1816`_; Joris Vandermeersch)
|
8
|
+
* freebsd: Fix bug which caused fpm to generate incorrect FreeBSD packages "missing leading `/`" (`#1811`_, `#1812`_, `#1844`_, `#1832`_, `#1845`_; Vlastimil Holer, Clayton Wong, Markus Ueberall, Jordan Sissel)
|
9
|
+
* deb: In order to only allow fpm to create valid packages, fpm now rejects packages with invalid "provides" (``--provides``) values. (`#1829`_, `#1825`_; Jordan Sissel, Peter Teichman)
|
10
|
+
* deb: Only show a warning about /etc and config files if there are files in /etc (`#1852`_, `#1851`_; Jordan Sissel)
|
11
|
+
|
12
|
+
* rpm: replace dash with underscore in rpm's "Release" field aka what fpm calls ``--iteration``. (`#1834`_, `#1833`_; Jordan Sissel)
|
13
|
+
* empty: `fpm -s empty ...` now defaults to "all" architecture instead of "native". (`#1850`_, `#1846`_; Jordan Sissel)
|
14
|
+
* Significant documentation improvements rewriting most of the documentation. New overview pages, full CLI flag listing, and new sections dedicated package types (rpm, cpan, deb, etc). (`#1815`_, `#1817`_, `#1838`_; Vedant K, Jordan Sissel)
|
15
|
+
* Typo fixes in documentation are always appreciated! (`#1842`_; Clayton Wong)
|
16
|
+
* fpm can now (we hope!) now be tested more easily from docker (`#1818`_, `#1682`_, `#1453`_; @directionless, Jordan Sissel, Douglas Muth)
|
17
|
+
|
4
18
|
1.13.1 (July 6, 2021)
|
5
19
|
^^^^^^^^^^^^^^^^^^^^^
|
6
20
|
* deb: The `--provides` flag now allows for versions. Previously, fpm would
|
7
21
|
remove the version part of a provides field when generating deb packages.
|
8
|
-
(`#1788`_, `#1803`_; Jordan Sissel, Phil
|
22
|
+
(`#1788`_, `#1803`_; Jordan Sissel, Phil Schwartz, tympanix)
|
9
23
|
* osxpkg: Update documentation to include installing `rpm` tools on OSX
|
10
24
|
(`#1797`_; allen joslin)
|
11
25
|
|
@@ -20,8 +34,7 @@ Release Notes and Change Log
|
|
20
34
|
* 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)
|
21
35
|
* 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)
|
22
36
|
* deb: Fix syntax error in `postinst` (`--after-install`) script. (`#1752`_, `#1749`_, `#1764`_; rmanus, Adam Mohammed, Elliot Murphy, kimw, Jordan Sissel)
|
23
|
-
* deb: --deb-compression now uses the same compression and file suffix on the control.tar file (`#1760`_; Philippe Poilbarbe
|
24
|
-
)
|
37
|
+
* deb: --deb-compression now uses the same compression and file suffix on the control.tar file (`#1760`_; Philippe Poilbarbe)
|
25
38
|
|
26
39
|
|
27
40
|
1.12.0 (January 19, 2021)
|
@@ -59,7 +72,7 @@ Release Notes and Change Log
|
|
59
72
|
* cpan: Adds `--[no-]cpan-verbose` flag which, when set, runs `cpanm` with the `--verbose` flag (`#1511`_; William N. Braswell, Jr)
|
60
73
|
|
61
74
|
1.10.0 (May 21, 2018)
|
62
|
-
|
75
|
+
^^^^^^^^^^^^^^^^^^^^^
|
63
76
|
|
64
77
|
* Pin `ruby-xz` dependency to one which allows Ruby versions older than 2.3.0 (`#1494`_; Marat Sharafutdinov)
|
65
78
|
* Documentation improvements: `#1488`_; Arthur Burkart. `#1384`_; Justin Kolberg. `#1452`_; Anatoli Babenia.
|
@@ -87,7 +100,7 @@ Release Notes and Change Log
|
|
87
100
|
* rpm: Fix `--config-files` handling (`#1390`_, `#1391`_; Jordan Sissel)
|
88
101
|
|
89
102
|
1.9.1 (July 28, 2017) happy sysadmin day!
|
90
|
-
|
103
|
+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
91
104
|
|
92
105
|
* Documentation improvements: `#1291`_; Pablo Castellano. `#1321`_; ge-fa. `#1309`_; jesusbagpuss. `#1349`_; Perry Stole. `#1352`_, Jordan Sissel. `#1384`_; Justin Kolberg.
|
93
106
|
* Testing improvements: `#1320`_; Rob Young. `#1266`_; Ryan Parman. `#1374`_; Thiago Figueiró.
|
@@ -116,9 +129,9 @@ Release Notes and Change Log
|
|
116
129
|
* Other: Remove unused archive-tar-minitar as a dependency of fpm (`#1355`_; Diego Martins)
|
117
130
|
* Other: Add stud as a runtime dependency (`#1354`_; Elan Ruusamäe)
|
118
131
|
|
119
|
-
.. _reproducible_builds
|
120
|
-
.. _path mapping
|
121
|
-
.. _Deterministic output
|
132
|
+
.. _reproducible_builds: https://reproducible-builds.org/
|
133
|
+
.. _path mapping: source/dir.html#path-mapping
|
134
|
+
.. _Deterministic output: source/gem.html
|
122
135
|
|
123
136
|
1.9.0 (July 28, 2017)
|
124
137
|
^^^^^^^^^^^^^^^^^^^^^
|
data/CONTRIBUTORS
CHANGED
@@ -21,6 +21,7 @@ sbuss
|
|
21
21
|
Brett Gailey (github: dnbert)
|
22
22
|
Daniel Haskin (github: djhaskin987)
|
23
23
|
Richard Grainger (github: liger1978)
|
24
|
+
seph (github: directionless)
|
24
25
|
|
25
26
|
If you have contributed (bug reports, feature requests, help in IRC, blog
|
26
27
|
posts, code, etc) and aren't listed here, please let me know if you wish to be
|
data/lib/fpm/package/deb.rb
CHANGED
@@ -25,6 +25,17 @@ class FPM::Package::Deb < FPM::Package
|
|
25
25
|
# The list of supported compression types. Default is gz (gzip)
|
26
26
|
COMPRESSION_TYPES = [ "gz", "bzip2", "xz", "none" ]
|
27
27
|
|
28
|
+
# https://www.debian.org/doc/debian-policy/ch-relationships.html#syntax-of-relationship-fields
|
29
|
+
# Example value with version relationship: libc6 (>= 2.2.1)
|
30
|
+
# Example value: libc6
|
31
|
+
|
32
|
+
# Version string docs here: https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-version
|
33
|
+
# The format is: [epoch:]upstream_version[-debian_revision].
|
34
|
+
# epoch - This is a single (generally small) unsigned integer
|
35
|
+
# upstream_version - must contain only alphanumerics 6 and the characters . + - ~
|
36
|
+
# debian_revision - only alphanumerics and the characters + . ~
|
37
|
+
RELATIONSHIP_FIELD_PATTERN = /^(?<name>[A-z0-9_-]+)(?: *\((?<relation>[<>=]+) *(?<version>(?:[0-9]+:)?[0-9A-Za-z+~.-]+(?:-[0-9A-Za-z+~.]+)?)\))?$/
|
38
|
+
|
28
39
|
option "--ignore-iteration-in-dependencies", :flag,
|
29
40
|
"For '=' (equal) dependencies, allow iterations on the specified " \
|
30
41
|
"version. Default is to be specific. This option allows the same " \
|
@@ -427,6 +438,12 @@ class FPM::Package::Deb < FPM::Package
|
|
427
438
|
|
428
439
|
def output(output_path)
|
429
440
|
self.provides = self.provides.collect { |p| fix_provides(p) }
|
441
|
+
|
442
|
+
self.provides.each do |provide|
|
443
|
+
if !valid_provides_field?(provide)
|
444
|
+
raise FPM::InvalidPackageConfiguration, "Found invalid Provides field values (#{provide.inspect}). This is not valid in a Debian package."
|
445
|
+
end
|
446
|
+
end
|
430
447
|
output_check(output_path)
|
431
448
|
# Abort if the target path already exists.
|
432
449
|
|
@@ -595,7 +612,7 @@ class FPM::Package::Deb < FPM::Package
|
|
595
612
|
compression = "-z"
|
596
613
|
when "bzip2"
|
597
614
|
datatar = build_path("data.tar.bz2")
|
598
|
-
controltar = build_path("control.tar.
|
615
|
+
controltar = build_path("control.tar.gz")
|
599
616
|
compression = "-j"
|
600
617
|
when "xz"
|
601
618
|
datatar = build_path("data.tar.xz")
|
@@ -660,6 +677,43 @@ class FPM::Package::Deb < FPM::Package
|
|
660
677
|
fix_provides(provides)
|
661
678
|
end.flatten
|
662
679
|
|
680
|
+
if origin == FPM::Package::CPAN
|
681
|
+
# The fpm cpan code presents dependencies and provides fields as perl(ModuleName)
|
682
|
+
# so we'll need to convert them to something debian supports.
|
683
|
+
|
684
|
+
# Replace perl(ModuleName) > 1.0 with Debian-style perl-ModuleName (> 1.0)
|
685
|
+
perldepfix = lambda do |dep|
|
686
|
+
m = dep.match(/perl\((?<name>[A-Za-z0-9_:]+)\)\s*(?<op>.*$)/)
|
687
|
+
if m.nil?
|
688
|
+
# 'dep' syntax didn't look like 'perl(Name) > 1.0'
|
689
|
+
dep
|
690
|
+
else
|
691
|
+
# Also replace '::' in the perl module name with '-'
|
692
|
+
modulename = m["name"].gsub("::", "-")
|
693
|
+
|
694
|
+
# Fix any upper-casing or other naming concerns Debian has about packages
|
695
|
+
name = "#{attributes[:cpan_package_name_prefix]}-#{modulename}"
|
696
|
+
|
697
|
+
if m["op"].empty?
|
698
|
+
name
|
699
|
+
else
|
700
|
+
# 'dep' syntax was like this (version constraint): perl(Module) > 1.0
|
701
|
+
"#{name} (#{m["op"]})"
|
702
|
+
end
|
703
|
+
end
|
704
|
+
end
|
705
|
+
|
706
|
+
rejects = [ "perl(vars)", "perl(warnings)", "perl(strict)", "perl(Config)" ]
|
707
|
+
self.dependencies = self.dependencies.reject do |dep|
|
708
|
+
# Reject non-module Perl dependencies like 'vars' and 'warnings'
|
709
|
+
rejects.include?(dep)
|
710
|
+
end.collect(&perldepfix).collect(&method(:fix_dependency))
|
711
|
+
|
712
|
+
# Also fix the Provides field 'perl(ModuleName) = version' to be 'perl-modulename (= version)'
|
713
|
+
self.provides = self.provides.collect(&perldepfix).collect(&method(:fix_provides))
|
714
|
+
|
715
|
+
end # if origin == FPM::Packagin::CPAN
|
716
|
+
|
663
717
|
if origin == FPM::Package::Deb
|
664
718
|
changelog_path = staging_path("usr/share/doc/#{name}/changelog.Debian.gz")
|
665
719
|
if File.exists?(changelog_path)
|
@@ -774,6 +828,32 @@ class FPM::Package::Deb < FPM::Package
|
|
774
828
|
end
|
775
829
|
end # def fix_dependency
|
776
830
|
|
831
|
+
def valid_provides_field?(text)
|
832
|
+
m = RELATIONSHIP_FIELD_PATTERN.match(text)
|
833
|
+
if m.nil?
|
834
|
+
logger.error("Invalid relationship field for debian package: #{text}")
|
835
|
+
return false
|
836
|
+
end
|
837
|
+
|
838
|
+
# Per Debian Policy manual, https://www.debian.org/doc/debian-policy/ch-relationships.html#syntax-of-relationship-fields
|
839
|
+
# >> The relations allowed are <<, <=, =, >= and >> for strictly earlier, earlier or equal,
|
840
|
+
# >> exactly equal, later or equal and strictly later, respectively. The exception is the
|
841
|
+
# >> Provides field, for which only = is allowed
|
842
|
+
if m["relation"] == "=" || m["relation"] == nil
|
843
|
+
return true
|
844
|
+
end
|
845
|
+
return false
|
846
|
+
end
|
847
|
+
|
848
|
+
def valid_relationship_field?(text)
|
849
|
+
m = RELATIONSHIP_FIELD_PATTERN.match(text)
|
850
|
+
if m.nil?
|
851
|
+
logger.error("Invalid relationship field for debian package: #{text}")
|
852
|
+
return false
|
853
|
+
end
|
854
|
+
return true
|
855
|
+
end
|
856
|
+
|
777
857
|
def fix_provides(provides)
|
778
858
|
name_re = /^[^ \(]+/
|
779
859
|
name = provides[name_re]
|
@@ -820,12 +900,9 @@ class FPM::Package::Deb < FPM::Package
|
|
820
900
|
|
821
901
|
# Tar up the staging_path into control.tar.{compression type}
|
822
902
|
case self.attributes[:deb_compression]
|
823
|
-
when "gz", nil
|
903
|
+
when "gz", "bzip2", nil
|
824
904
|
controltar = "control.tar.gz"
|
825
905
|
compression = "-z"
|
826
|
-
when "bzip2"
|
827
|
-
controltar = "control.tar.bz2"
|
828
|
-
compression = "-j"
|
829
906
|
when "xz"
|
830
907
|
controltar = "control.tar.xz"
|
831
908
|
compression = "-J"
|
@@ -930,7 +1007,7 @@ class FPM::Package::Deb < FPM::Package
|
|
930
1007
|
etcfiles = []
|
931
1008
|
# Add everything in /etc
|
932
1009
|
begin
|
933
|
-
if !attributes[:deb_no_default_config_files?]
|
1010
|
+
if !attributes[:deb_no_default_config_files?] && File.exists?(staging_path("/etc"))
|
934
1011
|
logger.warn("Debian packaging tools generally labels all files in /etc as config files, " \
|
935
1012
|
"as mandated by policy, so fpm defaults to this behavior for deb packages. " \
|
936
1013
|
"You can disable this default behavior with --deb-no-default-config-files flag")
|
data/lib/fpm/package/empty.rb
CHANGED
@@ -4,6 +4,18 @@ require "backports/latest"
|
|
4
4
|
# Empty Package type. For strict/meta/virtual package creation
|
5
5
|
|
6
6
|
class FPM::Package::Empty < FPM::Package
|
7
|
+
def initialize(*args)
|
8
|
+
super(*args)
|
9
|
+
|
10
|
+
# Override FPM::Package's default "native" architecture value
|
11
|
+
# This feels like the right default because an empty package has no
|
12
|
+
# architecture-specific files, and in most cases an empty package should be
|
13
|
+
# installable anywhere.
|
14
|
+
#
|
15
|
+
# https://github.com/jordansissel/fpm/issues/1846
|
16
|
+
@architecture = "all"
|
17
|
+
end
|
18
|
+
|
7
19
|
def output(output_path)
|
8
20
|
logger.warn("Your package has gone into the void.")
|
9
21
|
end
|
data/lib/fpm/package/freebsd.rb
CHANGED
@@ -86,9 +86,7 @@ class FPM::Package::FreeBSD < FPM::Package
|
|
86
86
|
# We use --files-from here to keep the tar entries from having `./` as the prefix.
|
87
87
|
# This is done as a best effor to mimic what FreeBSD packages do, having everything at the top-level as
|
88
88
|
# file names, like "+MANIFEST" instead of "./+MANIFEST"
|
89
|
-
|
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"))
|
89
|
+
safesystem("tar", "-Jcf", output_path, "-C", staging_path, "--files-from", build_path("file_list"), "--transform", 's|^\([^+]\)|/\1|')
|
92
90
|
end # def output
|
93
91
|
|
94
92
|
# Handle architecture naming conversion:
|
@@ -90,6 +90,11 @@ class get_metadata(Command):
|
|
90
90
|
for dep in pkg_resources.parse_requirements(
|
91
91
|
self.distribution.install_requires):
|
92
92
|
final_deps.extend(self.process_dep(dep))
|
93
|
+
if getattr(self.distribution, 'extras_require', None):
|
94
|
+
for dep in pkg_resources.parse_requirements(
|
95
|
+
v for k, v in self.distribution.extras_require.items()
|
96
|
+
if k.startswith(':') and pkg_resources.evaluate_marker(k[1:])):
|
97
|
+
final_deps.extend(self.process_dep(dep))
|
93
98
|
|
94
99
|
data["dependencies"] = final_deps
|
95
100
|
|
data/lib/fpm/package/python.rb
CHANGED
@@ -79,7 +79,11 @@ class FPM::Package::Python < FPM::Package
|
|
79
79
|
option "--setup-py-arguments", "setup_py_argument",
|
80
80
|
"Arbitrary argument(s) to be passed to setup.py",
|
81
81
|
:multivalued => true, :attribute_name => :python_setup_py_arguments,
|
82
|
-
:default => []
|
82
|
+
:default => []
|
83
|
+
option "--internal-pip", :flag,
|
84
|
+
"Use the pip module within python to install modules - aka 'python -m pip'. This is the recommended usage since Python 3.4 (2014) instead of invoking the 'pip' script",
|
85
|
+
:attribute_name => :python_internal_pip,
|
86
|
+
:default => true
|
83
87
|
|
84
88
|
private
|
85
89
|
|
@@ -130,23 +134,24 @@ class FPM::Package::Python < FPM::Package
|
|
130
134
|
target = build_path(package)
|
131
135
|
FileUtils.mkdir(target) unless File.directory?(target)
|
132
136
|
|
133
|
-
if attributes[:
|
134
|
-
#
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
137
|
+
if attributes[:python_internal_pip?]
|
138
|
+
# XXX: Should we detect if internal pip is available?
|
139
|
+
attributes[:python_pip] = [ attributes[:python_bin], "-m", "pip"]
|
140
|
+
end
|
141
|
+
|
142
|
+
# attributes[:python_pip] -- expected to be a path
|
143
|
+
if attributes[:python_pip]
|
140
144
|
logger.debug("using pip", :pip => attributes[:python_pip])
|
141
145
|
# TODO: Support older versions of pip
|
142
146
|
|
147
|
+
pip = [attributes[:python_pip]] if pip.is_a?(String)
|
143
148
|
setup_cmd = [
|
144
|
-
attributes[:python_pip],
|
149
|
+
*attributes[:python_pip],
|
145
150
|
"download",
|
146
151
|
"--no-clean",
|
147
152
|
"--no-deps",
|
148
|
-
"--no-binary",
|
149
|
-
"
|
153
|
+
"--no-binary", ":all:",
|
154
|
+
"-d", build_path,
|
150
155
|
"-i", attributes[:python_pypi],
|
151
156
|
]
|
152
157
|
|
@@ -164,6 +169,12 @@ class FPM::Package::Python < FPM::Package
|
|
164
169
|
]
|
165
170
|
|
166
171
|
safesystem(*setup_cmd)
|
172
|
+
else
|
173
|
+
# no pip, use easy_install
|
174
|
+
logger.debug("no pip, defaulting to easy_install", :easy_install => attributes[:python_easyinstall])
|
175
|
+
safesystem(attributes[:python_easyinstall], "-i",
|
176
|
+
attributes[:python_pypi], "--editable", "-U",
|
177
|
+
"--build-directory", target, want_pkg)
|
167
178
|
end
|
168
179
|
|
169
180
|
# easy_install will put stuff in @tmpdir/packagename/, so find that:
|
data/lib/fpm/package/rpm.rb
CHANGED
@@ -254,6 +254,12 @@ class FPM::Package::RPM < FPM::Package
|
|
254
254
|
|
255
255
|
# This method ensures a default value for iteration if none is provided.
|
256
256
|
def iteration
|
257
|
+
if @iteration.kind_of?(String) and @iteration.include?("-")
|
258
|
+
logger.warn("Package iteration '#{@iteration}' includes dashes, converting" \
|
259
|
+
" to underscores. rpmbuild does not allow the dashes in the package iteration (called 'Release' in rpm)")
|
260
|
+
@iteration = @iteration.gsub(/-/, "_")
|
261
|
+
end
|
262
|
+
|
257
263
|
return @iteration ? @iteration : 1
|
258
264
|
end # def iteration
|
259
265
|
|
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.
|
4
|
+
version: 1.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jordan Sissel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -86,20 +86,6 @@ dependencies:
|
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: 1.0.0
|
89
|
-
- !ruby/object:Gem::Dependency
|
90
|
-
name: rake
|
91
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - "~>"
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: '10'
|
96
|
-
type: :development
|
97
|
-
prerelease: false
|
98
|
-
version_requirements: !ruby/object:Gem::Requirement
|
99
|
-
requirements:
|
100
|
-
- - "~>"
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version: '10'
|
103
89
|
- !ruby/object:Gem::Dependency
|
104
90
|
name: pleaserun
|
105
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -294,7 +280,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
294
280
|
- !ruby/object:Gem::Version
|
295
281
|
version: '0'
|
296
282
|
requirements: []
|
297
|
-
rubygems_version: 3.2.
|
283
|
+
rubygems_version: 3.2.31
|
298
284
|
signing_key:
|
299
285
|
specification_version: 4
|
300
286
|
summary: fpm - package building and mangling
|