persistent-dmnd 1.0.4 β†’ 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a228a85f6cadec6bd32f55fe63ace7e4bab3730e
4
- data.tar.gz: 38c412c8cf521f6037bc22a464b2a04e3d75da74
2
+ SHA256:
3
+ metadata.gz: 18107d065489d459738d19e722215ff48026e05cfada3ebc4b715cd23f581dd1
4
+ data.tar.gz: c017264cb8f9fa3b34e6e18840010a9f89167b0ec0dbdbe16a7e25910c97118a
5
5
  SHA512:
6
- metadata.gz: 65995fa64a7235d818d2ddbf35f7e7aad9c9b9f949550751bafda35bb38e47a2802880b726b40894751564f4fdc7c741aa2445c896fcc5b4935cdcae9b3c3fb0
7
- data.tar.gz: 299055aa31c6588ffc77d58ed115a362214c849c34485f14ea92d19f6ed5f0b13e0bc9438eacff5361f4d46df010911df6866d01a07f0bed4eb1ddb06e15979e
6
+ metadata.gz: 024bb094f00a73684868a10c1f44b082d3d19d67cbcec299771ce6b3d00c990d85fd636b8a5ae5e0f0f36309bce3e2d242c43dd32238a566f481dd1a7c3208a0
7
+ data.tar.gz: aa5d1cb013ba88de17850d4cb599f08f1d925f20f5bfbdacc976758472e4ca67838d44317f1d9cde1b79b56276165d102ab2b180f6acb44682fd3bb10d371f40
@@ -10,6 +10,7 @@ testruby_1_9_3:
10
10
  - vendor/ruby
11
11
 
12
12
  before_script:
13
+ - printf "deb http://archive.debian.org/debian/ jessie main\ndeb-src http://archive.debian.org/debian/ jessie main\ndeb http://security.debian.org jessie/updates main\ndeb-src http://security.debian.org jessie/updates main" > /etc/apt/sources.list
13
14
  - apt-get update >/dev/null # Add UTF-8 support
14
15
  - apt-get install -y locales >/dev/null # |
15
16
  - echo "en_US UTF-8" > /etc/locale.gen # |
@@ -18,7 +19,7 @@ testruby_1_9_3:
18
19
  - export LANGUAGE=en_US:en # |
19
20
  - export LC_ALL=en_US.UTF-8 # v
20
21
  - ruby -v # Print out ruby version for debugging
21
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
22
+ - gem install bundler -v '< 2' # Bundler is not installed with the image
22
23
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
23
24
 
24
25
  script:
@@ -33,6 +34,7 @@ testruby_2_0:
33
34
  - vendor/ruby
34
35
 
35
36
  before_script:
37
+ - printf "deb http://archive.debian.org/debian/ jessie main\ndeb-src http://archive.debian.org/debian/ jessie main\ndeb http://security.debian.org jessie/updates main\ndeb-src http://security.debian.org jessie/updates main" > /etc/apt/sources.list
36
38
  - apt-get update >/dev/null # Add UTF-8 support
37
39
  - apt-get install -y locales >/dev/null # |
38
40
  - echo "en_US UTF-8" > /etc/locale.gen # |
@@ -41,7 +43,7 @@ testruby_2_0:
41
43
  - export LANGUAGE=en_US:en # |
42
44
  - export LC_ALL=en_US.UTF-8 # v
43
45
  - ruby -v # Print out ruby version for debugging
44
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
46
+ - gem install bundler:'< 2' # Bundler is not installed with the image
45
47
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
46
48
 
47
49
  script:
@@ -56,6 +58,7 @@ testruby_2_1:
56
58
  - vendor/ruby
57
59
 
58
60
  before_script:
61
+ - printf "deb http://archive.debian.org/debian/ jessie main\ndeb-src http://archive.debian.org/debian/ jessie main\ndeb http://security.debian.org jessie/updates main\ndeb-src http://security.debian.org jessie/updates main" > /etc/apt/sources.list
59
62
  - apt-get update >/dev/null # Add UTF-8 support
60
63
  - apt-get install -y locales >/dev/null # |
61
64
  - echo "en_US UTF-8" > /etc/locale.gen # |
@@ -64,7 +67,7 @@ testruby_2_1:
64
67
  - export LANGUAGE=en_US:en # |
65
68
  - export LC_ALL=en_US.UTF-8 # v
66
69
  - ruby -v # Print out ruby version for debugging
67
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
70
+ - gem install bundler:'< 2' # Bundler is not installed with the image
68
71
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
69
72
 
70
73
  script:
@@ -79,6 +82,7 @@ testruby_2_2:
79
82
  - vendor/ruby
80
83
 
81
84
  before_script:
85
+ - printf "deb http://archive.debian.org/debian/ jessie main\ndeb-src http://archive.debian.org/debian/ jessie main\ndeb http://security.debian.org jessie/updates main\ndeb-src http://security.debian.org jessie/updates main" > /etc/apt/sources.list
82
86
  - apt-get update >/dev/null # Add UTF-8 support
83
87
  - apt-get install -y locales >/dev/null # |
84
88
  - echo "en_US UTF-8" > /etc/locale.gen # |
@@ -87,7 +91,7 @@ testruby_2_2:
87
91
  - export LANGUAGE=en_US:en # |
88
92
  - export LC_ALL=en_US.UTF-8 # v
89
93
  - ruby -v # Print out ruby version for debugging
90
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
94
+ - gem install bundler:'< 2' # Bundler is not installed with the image
91
95
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
92
96
 
93
97
  script:
@@ -110,7 +114,7 @@ testruby_2_3:
110
114
  - export LANGUAGE=en_US:en # |
111
115
  - export LC_ALL=en_US.UTF-8 # v
112
116
  - ruby -v # Print out ruby version for debugging
113
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
117
+ - gem install bundler:'< 2' # Bundler is not installed with the image
114
118
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
115
119
 
116
120
  script:
@@ -133,7 +137,7 @@ testruby_2_4:
133
137
  - export LANGUAGE=en_US:en # |
134
138
  - export LC_ALL=en_US.UTF-8 # v
135
139
  - ruby -v # Print out ruby version for debugging
136
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
140
+ - gem install bundler:'< 2' # Bundler is not installed with the image
137
141
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
138
142
 
139
143
  script:
@@ -156,14 +160,59 @@ testruby_2_5:
156
160
  - export LANGUAGE=en_US:en # |
157
161
  - export LC_ALL=en_US.UTF-8 # v
158
162
  - ruby -v # Print out ruby version for debugging
159
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
163
+ - gem install bundler:'< 2' # Bundler is not installed with the image
160
164
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
161
165
 
162
166
  script:
163
167
  - bin/rspec
164
168
 
165
169
  testruby_2_6:
166
- image: "ruby:2.6.0-preview2"
170
+ image: "ruby:2.6"
171
+
172
+ # Cache gems in between builds
173
+ cache:
174
+ paths:
175
+ - vendor/ruby
176
+
177
+ before_script:
178
+ - apt-get update >/dev/null # Add UTF-8 support
179
+ - apt-get install -y locales >/dev/null # |
180
+ - echo "en_US UTF-8" > /etc/locale.gen # |
181
+ - locale-gen en_US.UTF-8 # |
182
+ - export LANG=en_US.UTF-8 # |
183
+ - export LANGUAGE=en_US:en # |
184
+ - export LC_ALL=en_US.UTF-8 # v
185
+ - ruby -v # Print out ruby version for debugging
186
+ - gem install bundler:'< 2' # Bundler is not installed with the image
187
+ - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
188
+
189
+ script:
190
+ - bin/rspec
191
+
192
+ testruby_2_7:
193
+ image: "ruby:2.7"
194
+
195
+ # Cache gems in between builds
196
+ cache:
197
+ paths:
198
+ - vendor/ruby
199
+
200
+ before_script:
201
+ - apt-get update >/dev/null # Add UTF-8 support
202
+ - apt-get install -y locales >/dev/null # |
203
+ - echo "en_US UTF-8" > /etc/locale.gen # |
204
+ - locale-gen en_US.UTF-8 # |
205
+ - export LANG=en_US.UTF-8 # |
206
+ - export LANGUAGE=en_US:en # |
207
+ - export LC_ALL=en_US.UTF-8 # v
208
+ - ruby -v # Print out ruby version for debugging
209
+ - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
210
+
211
+ script:
212
+ - bin/rspec
213
+
214
+ testruby_3_0:
215
+ image: "ruby:3.0.0"
167
216
 
168
217
  # Cache gems in between builds
169
218
  cache:
@@ -179,7 +228,6 @@ testruby_2_6:
179
228
  - export LANGUAGE=en_US:en # |
180
229
  - export LC_ALL=en_US.UTF-8 # v
181
230
  - ruby -v # Print out ruby version for debugging
182
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
183
231
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
184
232
 
185
233
  script:
@@ -204,14 +252,43 @@ testjruby_1_7:
204
252
  - apt-get install -y git >/dev/null # Add git binary
205
253
  - export JRUBY_OPTS=--dev # Faster test runs
206
254
  - ruby -v # Print out ruby version for debugging
207
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
255
+ - gem install bundler:'< 2' # Bundler is not installed with the image
208
256
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
209
257
 
210
258
  script:
211
259
  - bin/rspec
212
260
 
213
- testjruby_9_0_1_0:
214
- image: "jruby:9.0.1.0"
261
+ testjruby_9_0:
262
+ image: "jruby:9.0"
263
+
264
+ # Cache gems in between builds
265
+ cache:
266
+ paths:
267
+ - vendor/ruby
268
+
269
+ before_script:
270
+ - rm /etc/apt/sources.list.d/jessie-backports.list
271
+ - apt-get update # Add UTF-8 support
272
+ - apt-get install -y locales >/dev/null # |
273
+ - echo "en_US UTF-8" > /etc/locale.gen # |
274
+ - locale-gen en_US.UTF-8 # |
275
+ - export LANG=en_US.UTF-8 # |
276
+ - export LANGUAGE=en_US:en # |
277
+ - export LC_ALL=en_US.UTF-8 # v
278
+ - apt-get install -y git >/dev/null # Add git binary
279
+ - export JRUBY_OPTS=--dev # Faster test runs
280
+ - ruby -v # Print out ruby version for debugging
281
+ - wget https://rubygems.org/downloads/jruby-openssl-0.9.21-java.gem # Needed to support newer ciphers when connecting to rubygems.org (otherwise gem downloads fail)
282
+ - gem install jruby-openssl-0.9.21-java.gem # Install the newer gem
283
+ - gem uninstall -x -i /opt/jruby/lib/ruby/gems/shared bundler # Remove any pre-existing bundler
284
+ - gem install bundler:'< 2' # Install latest bundler 1.x
285
+ - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
286
+
287
+ script:
288
+ - bin/rspec
289
+
290
+ testjruby_9_1:
291
+ image: "jruby:9.1"
215
292
 
216
293
  # Cache gems in between builds
217
294
  cache:
@@ -229,7 +306,8 @@ testjruby_9_0_1_0:
229
306
  - apt-get install -y git >/dev/null # Add git binary
230
307
  - export JRUBY_OPTS=--dev # Faster test runs
231
308
  - ruby -v # Print out ruby version for debugging
232
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
309
+ - gem uninstall -x -i /opt/jruby/lib/ruby/gems/shared bundler # Remove any pre-existing bundler
310
+ - gem install bundler:'< 2' # Bundler is not installed with the image
233
311
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
234
312
 
235
313
  script:
@@ -254,7 +332,8 @@ testjruby_9_1:
254
332
  - apt-get install -y git >/dev/null # Add git binary
255
333
  - export JRUBY_OPTS=--dev # Faster test runs
256
334
  - ruby -v # Print out ruby version for debugging
257
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
335
+ - gem uninstall -x -i /opt/jruby/lib/ruby/gems/shared bundler # Remove any pre-existing bundler
336
+ - gem install bundler:'< 2' # Bundler is not installed with the image
258
337
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
259
338
 
260
339
  script:
@@ -281,7 +360,7 @@ testjruby9_2_0_0:
281
360
  - apt-get install -y git >/dev/null # Add git binary
282
361
  - export JRUBY_OPTS=--dev # Faster test runs
283
362
  - ruby -v # Print out ruby version for debugging
284
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
363
+ - gem install bundler:'< 2' # Bundler is not installed with the image
285
364
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
286
365
 
287
366
  script:
@@ -306,7 +385,8 @@ testjruby_9_2:
306
385
  - apt-get install -y git >/dev/null # Add git binary
307
386
  - export JRUBY_OPTS=--dev # Faster test runs
308
387
  - ruby -v # Print out ruby version for debugging
309
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
388
+ - gem uninstall -a -x -i /opt/jruby/lib/ruby/gems/shared bundler # Remove any pre-existing bundler
389
+ - gem install bundler:'< 2' # Bundler is not installed with the image
310
390
  - bundle install -j $(nproc) --path vendor # Install dependencies into ./vendor/ruby
311
391
 
312
392
  script:
@@ -328,7 +408,6 @@ testtruffleruby:
328
408
  - /graalvm*/jre/languages/ruby/lib/truffle/post_install_hook.sh # Rebuild openssl extension, as suggested by install
329
409
  # notes
330
410
  - ruby -v # Print out ruby version for debugging
331
- - gem install bundler --no-ri --no-rdoc # Bundler is not installed with the image
332
411
  - bundle install -j $(nproc) # Install dependencies
333
412
 
334
413
  script:
@@ -1 +1 @@
1
- ruby-2.5.1
1
+ ruby-3.0.0
@@ -4,7 +4,7 @@
4
4
  :toclevels: 4
5
5
  :toc-title:
6
6
 
7
- // image:https://travis-ci.org/ivoanjo/persistent-dmnd.svg?branch=master["Build Status", link="https://travis-ci.org/ivoanjo/persistent-dmnd"]
7
+ image:https://badge.fury.io/rb/persistent-dmnd.svg["Gem Version", link="https://badge.fury.io/rb/persistent-dmnd"]
8
8
 
9
9
  Are you tired of calling `.freeze` on your data structures (or your colleagues forgetting to do so)? +
10
10
  Do you wish Ruby had a literal for creating immutable arrays?
@@ -97,8 +97,9 @@ It also (_optionally!_) interoperates with the https://github.com/ruby-concurren
97
97
  Underneath the covers, persistent-πŸ’Ž mostly builds atop the awesome https://github.com/hamstergem/hamster[hamster gem].
98
98
  Big thanks to its equally-awesome authors!
99
99
 
100
- Persistent-πŸ’Ž is fully supported and tested on Ruby versions 1.9.3 to 2.6.0-preview2, JRuby 1.7 to 9.2, and TruffleRuby 1.0 (latest RC) πŸŽ‰.
101
- If we don't support your Ruby, it's probably a Python binary instead. Keep calm and πŸ’Ž away!
100
+ Persistent-πŸ’Ž is fully supported and tested on Ruby versions 1.9.3 to 3.0.0, JRuby 1.7 to 9.2, and TruffleRuby 1.0+ πŸŽ‰.
101
+ If we don't support your Ruby, it's probably a Python binary instead (or a potato?).
102
+ Keep calm and πŸ’Ž away!
102
103
 
103
104
  [discrete]
104
105
  == Contents
@@ -373,7 +374,7 @@ When you need to go from thread-safe immutable data structures to thread-safe mu
373
374
 
374
375
  You'll need to install concurrent-ruby first, see https://github.com/ruby-concurrency/concurrent-ruby#installation for instructions.
375
376
 
376
- NOTE: If you're using TruffleRuby, you'll need to use concurrent-ruby >= 1.1.0.pre2, as older versions do not work correctly on TruffleRuby.
377
+ NOTE: If you're using TruffleRuby, you'll need to use concurrent-ruby >= 1.1.0, as older versions did not work correctly on TruffleRuby.
377
378
 
378
379
  After that, you'll be able to:
379
380
 
data/gems.rb CHANGED
@@ -1,3 +1,6 @@
1
+ # encoding: UTF-8
2
+ # typed: false
3
+
1
4
  source 'https://rubygems.org'
2
5
 
3
6
  gemspec
@@ -6,12 +9,3 @@ gemspec
6
9
  # and JRuby with the same gems.lock
7
10
  # Only used in development
8
11
  gem 'ffi', '~> 1.9.18'
9
-
10
- # As of this writing, the latest available version of concurrent-ruby on
11
- # rubygems.org is 1.1.0.pre1, which is broken on TruffleRuby -- at least version
12
- # 1.1.0.pre2 is needed to support it.
13
- # So for now, let's use the git version of concurrent-ruby in development, so we
14
- # can run the full test suite for the gem locally and in CI.
15
- if RUBY_ENGINE == 'truffleruby'
16
- gem 'concurrent-ruby', git: 'https://github.com/ruby-concurrency/concurrent-ruby'
17
- end
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: strong
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: false
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: ignore
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: false
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: false
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017-2018 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: false
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: true
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -64,9 +65,17 @@ module PersistentπŸ’Ž
64
65
  ::Set.new(self)
65
66
  end
66
67
 
67
- # Default behavior from Kernel#<=>
68
+ # Note: Behavior changed from Ruby < 3 (returned 0/nil) to match Ruby 3.0 Set#<=> (returns 0/nil/-1/+1);
69
+ # see also https://rubyreferences.github.io/rubychanges/3.0.html#standard-library for details
68
70
  def <=>(other)
69
- self == other ? 0 : nil
71
+ case size <=> other.size
72
+ when (-1)
73
+ (-1) if self < other
74
+ when (+1)
75
+ (+1) if self > other
76
+ else
77
+ 0 if self == other
78
+ end
70
79
  end
71
80
 
72
81
  def to_aπŸ’Ž
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # typed: strong
2
3
 
3
4
  # Persistent-πŸ’Ž: Ruby gem for easily creating immutable data structures
4
5
  # Copyright (c) 2017 Ivo Anjo <ivo.anjo@ist.utl.pt>
@@ -30,5 +31,5 @@
30
31
  # frozen_string_literal: true
31
32
 
32
33
  module PersistentπŸ’Ž
33
- VERSION = '1.0.4'
34
+ VERSION = '2.0.0'
34
35
  end
@@ -37,7 +37,7 @@ Gem::Specification.new do |spec|
37
37
  spec.name = 'persistent-dmnd'
38
38
  spec.version = PersistentπŸ’Ž::VERSION
39
39
  spec.authors = 'Ivo Anjo'
40
- spec.email = 'ivo.anjo@ist.utl.pt'
40
+ spec.email = 'ivo@ivoanjo.me'
41
41
 
42
42
  spec.summary = 'Persistent-πŸ’Ž: Because Immutable Data Is Forever'
43
43
  spec.description = 'A tiny ruby gem that gives you a beautiful short-hand syntax for creating immutable arrays, hashes and sets'
@@ -51,15 +51,15 @@ Gem::Specification.new do |spec|
51
51
 
52
52
  spec.required_ruby_version = '>= 1.9.3'
53
53
 
54
- spec.add_development_dependency 'bundler', '~> 1.16'
55
- spec.add_development_dependency 'rake', '~> 12.2'
56
- spec.add_development_dependency 'rspec', '~> 3.7'
57
- spec.add_development_dependency 'concurrent-ruby', '~> 1.0' unless RUBY_ENGINE == 'truffleruby'
58
- spec.add_development_dependency 'concurrent-ruby', '~> 1.1' if RUBY_ENGINE == 'truffleruby'
59
- spec.add_development_dependency 'rufo', '~> 0.2'
60
- spec.add_development_dependency 'pry'
61
- spec.add_development_dependency 'pry-byebug' if RUBY_ENGINE == 'ruby' && !RUBY_VERSION.start_with?('1.9.')
54
+ spec.add_development_dependency 'bundler', '~> 1.16' if RUBY_VERSION < '2.7'
55
+ spec.add_development_dependency 'rake', '~> 12.2' # Note: Rake 12.2 is the last that supports Ruby 1.9
56
+ spec.add_development_dependency 'rspec', '~> 3.8'
57
+ spec.add_development_dependency 'concurrent-ruby', '~> 1.1'
58
+ spec.add_development_dependency 'rufo', '~> 0.7' if RUBY_VERSION >= '2.4.5'
59
+ spec.add_development_dependency 'pry' if RUBY_VERSION >= '2.0.0'
60
+ spec.add_development_dependency 'pry-byebug' if RUBY_ENGINE == 'ruby' && RUBY_VERSION >= '2.4'
62
61
  spec.add_development_dependency 'pry-debugger-jruby' if RUBY_ENGINE == 'jruby' && !JRUBY_VERSION.start_with?('1.7.')
62
+ spec.add_development_dependency 'sorbet' if RUBY_VERSION < '2.7'
63
63
 
64
64
  spec.add_dependency 'hamster', '~> 3.0'
65
65
  end