persistent-dmnd 1.0.4 β†’ 2.0.0

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.
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