nerd_dice 0.2.0 → 0.2.1

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
2
  SHA256:
3
- metadata.gz: 7a931b4532dcafcb4ce3aeddf3ac30399bb9334d25bf78671a0811366670d719
4
- data.tar.gz: 970d96a32b68dc1fc75618376bf059707c5c711441d30edd6302dcd37e831c8b
3
+ metadata.gz: 88266e9421830d581588170f03cab85b95f95b0f3727c943ae36aa590c6ef338
4
+ data.tar.gz: 98e7fdc98609de1776400f3b4e8d04bbeff92fb0ef06814c06c967abcfd68a48
5
5
  SHA512:
6
- metadata.gz: 5cdbd36e786d2c4e6f8950f4486119548bb1a62babdbf3c9ae4fadba095170b9300461411926d19ca50e5e8d277804c3f8cb61e28d96605fd5fad8b7e9c9b700
7
- data.tar.gz: 21b2b92dbf7ad4060a888d267383e9c87b3e310dff4931bb1853f401fb417f480a2bea7cca859ad75d3eac83608a4631541a36afc7449955a68ea8ff84c319c7
6
+ metadata.gz: 8e0622aaeee447750ab14395eae84241ced009ff12986c29cb44c903669c7d0e5caed1916dd9693db1fc6da9c9af67bbe9ce2c845f9fa17d85c6a9614e9d9d2b
7
+ data.tar.gz: c9b50c852027d64160a294aaca650ab882423984a8e79159214dc1ec5e8dd5ce7daa3b13507c616b2c8f218f1ade1f752890080ce7e16b52922992d3c8d49b51
checksums.yaml.gz.sig CHANGED
Binary file
@@ -0,0 +1,67 @@
1
+ # This is a basic workflow to help you get started with Actions
2
+
3
+ name: Nerd Dice CI
4
+
5
+ # Controls when the action will run.
6
+ on: [push, pull_request]
7
+
8
+ # Allows you to run this workflow manually from the Actions tab
9
+ # workflow_dispatch:
10
+
11
+ jobs:
12
+ test_rspec:
13
+
14
+ runs-on: ubuntu-latest
15
+ strategy:
16
+ matrix:
17
+ ruby-version: ['3.0', '3.1', '3.2']
18
+
19
+ steps:
20
+ - uses: actions/checkout@v2
21
+ - name: Set up Ruby
22
+ uses: ruby/setup-ruby@v1
23
+ with:
24
+ ruby-version: ${{ matrix.ruby-version }}
25
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
26
+ - name: Run tests
27
+ run: bundle exec rake
28
+ - name: Coveralls Parallel
29
+ uses: coverallsapp/github-action@master
30
+ with:
31
+ github-token: ${{ secrets.github_token }}
32
+ flag-name: run-${{ matrix.test_number }}
33
+ parallel: true
34
+
35
+ rubocop:
36
+ runs-on: ubuntu-latest
37
+ steps:
38
+ - uses: actions/checkout@v2
39
+ - name: Set up Ruby
40
+ uses: ruby/setup-ruby@v1
41
+ with:
42
+ ruby-version: '3.2'
43
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
44
+ - name: Run rubocop
45
+ run: bundle exec rubocop --parallel
46
+
47
+ benchmark:
48
+ runs-on: ubuntu-latest
49
+ steps:
50
+ - uses: actions/checkout@v2
51
+ - name: Set up Ruby
52
+ uses: ruby/setup-ruby@v1
53
+ with:
54
+ ruby-version: '3.2'
55
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
56
+ - name: Run benchmark script
57
+ run: bin/nerd_dice_benchmark
58
+
59
+ finish:
60
+ needs: test_rspec
61
+ runs-on: ubuntu-latest
62
+ steps:
63
+ - name: Coveralls Finished
64
+ uses: coverallsapp/github-action@master
65
+ with:
66
+ github-token: ${{ secrets.github_token }}
67
+ parallel-finished: true
data/.rubocop.yml CHANGED
@@ -1,3 +1,11 @@
1
+ # RuboCop configuration file for NerdDice gem
2
+ #
3
+ # This is the RuboCop configuration for the gem. By default new cops are enabled
4
+ # by default when the RuboCop gems are updated in the bundle. Before the would
5
+ # show up as warnings until they were added to the configuration file. Now they
6
+ # will be enabled by default, and a case-by-case descision can be made whether
7
+ # to exclude new violations in the configuration explicitly or update the
8
+ # codebase to the gem to conform to the new standard.
1
9
  require:
2
10
  - rubocop-performance
3
11
  - rubocop-rake
@@ -8,14 +16,12 @@ AllCops:
8
16
  # RuboCop has a bunch of cops enabled by default. This setting tells RuboCop
9
17
  # to ignore them, so only the ones explicitly set in this file are enabled.
10
18
  #DisabledByDefault: true
19
+
20
+ # New cops are now enabled by default as of 2023-02-20
21
+ NewCops: enable
11
22
  Exclude:
12
23
  - '**/templates/**/*'
13
24
  - '**/vendor/**/*'
14
- - 'node_modules/**/*'
15
-
16
- Performance:
17
- Exclude:
18
- - '**/test/**/*'
19
25
 
20
26
  # Prefer &&/|| over and/or.
21
27
  Style/AndOr:
@@ -111,15 +117,6 @@ Style/MethodDefParentheses:
111
117
  Style/FrozenStringLiteralComment:
112
118
  Enabled: true
113
119
  EnforcedStyle: always
114
- Exclude:
115
- - 'actionview/test/**/*.builder'
116
- - 'actionview/test/**/*.ruby'
117
- - 'actionpack/test/**/*.builder'
118
- - 'actionpack/test/**/*.ruby'
119
- - 'activestorage/db/migrate/**/*.rb'
120
- - 'activestorage/db/update_migrate/**/*.rb'
121
- - 'actionmailbox/db/migrate/**/*.rb'
122
- - 'actiontext/db/migrate/**/*.rb'
123
120
 
124
121
  Style/RedundantFreeze:
125
122
  Enabled: true
@@ -191,30 +188,6 @@ Lint/UselessAssignment:
191
188
  Lint/DeprecatedClassMethods:
192
189
  Enabled: true
193
190
 
194
- Lint/DuplicateBranch: # (new in 1.3)
195
- Enabled: true
196
-
197
- Lint/DuplicateRegexpCharacterClassElement: # (new in 1.1)
198
- Enabled: true
199
-
200
- Lint/EmptyBlock: # (new in 1.1)
201
- Enabled: true
202
-
203
- Lint/EmptyClass: # (new in 1.3)
204
- Enabled: true
205
-
206
- Lint/NoReturnInBeginEndBlocks: # (new in 1.2)
207
- Enabled: true
208
-
209
- Lint/ToEnumArguments: # (new in 1.1)
210
- Enabled: true
211
-
212
- Lint/UnexpectedBlockArity: # (new in 1.5)
213
- Enabled: true
214
-
215
- Lint/UnmodifiedReduceAccumulator: # (new in 1.1)
216
- Enabled: true
217
-
218
191
  Style/ParenthesesAroundCondition:
219
192
  Enabled: true
220
193
 
@@ -236,27 +209,6 @@ Style/ColonMethodCall:
236
209
  Style/TrivialAccessors:
237
210
  Enabled: true
238
211
 
239
- Style/ArgumentsForwarding: # (new in 1.1)
240
- Enabled: true
241
-
242
- Style/CollectionCompact: # (new in 1.2)
243
- Enabled: true
244
-
245
- Style/DocumentDynamicEvalDefinition: # (new in 1.1)
246
- Enabled: true
247
-
248
- Style/NegatedIfElseCondition: # (new in 1.2)
249
- Enabled: true
250
-
251
- Style/NilLambda: # (new in 1.3)
252
- Enabled: true
253
-
254
- Style/RedundantArgument: # (new in 1.4)
255
- Enabled: true
256
-
257
- Style/SwapValues: # (new in 1.1)
258
- Enabled: true
259
-
260
212
  Performance/FlatMap:
261
213
  Enabled: true
262
214
 
@@ -275,62 +227,9 @@ Performance/RegexpMatch:
275
227
  Performance/UnfreezeString:
276
228
  Enabled: true
277
229
 
278
- Performance/AncestorsInclude: # (new in 1.7)
279
- Enabled: true
280
-
281
- Performance/BigDecimalWithNumericArgument: # (new in 1.7)
282
- Enabled: true
283
-
284
- Performance/BlockGivenWithExplicitBlock: # (new in 1.9)
285
- Enabled: true
286
-
287
- Performance/CollectionLiteralInLoop: # (new in 1.8)
288
- Enabled: true
289
-
290
- Performance/ConstantRegexp: # (new in 1.9)
291
- Enabled: true
292
-
293
- Performance/MethodObjectAsBlock: # (new in 1.9)
294
- Enabled: true
295
-
296
- Performance/RedundantSortBlock: # (new in 1.7)
297
- Enabled: true
298
-
299
- Performance/RedundantStringChars: # (new in 1.7)
300
- Enabled: true
301
-
302
- Performance/ReverseFirst: # (new in 1.7)
303
- Enabled: true
304
-
305
- Performance/SortReverse: # (new in 1.7)
306
- Enabled: true
307
-
308
- Performance/Squeeze: # (new in 1.7)
309
- Enabled: true
310
-
311
- Performance/StringInclude: # (new in 1.7)
312
- Enabled: true
313
-
314
- Performance/Sum: # (new in 1.8)
315
- Enabled: true
316
-
317
- Layout/SpaceBeforeBrackets: # (new in 1.7)
318
- Enabled: true
319
-
320
- Lint/AmbiguousAssignment: # (new in 1.7)
321
- Enabled: true
230
+ RSpec/MessageSpies:
231
+ EnforcedStyle: receive
322
232
 
323
- Lint/DeprecatedConstants: # (new in 1.8)
324
- Enabled: true
325
-
326
- Lint/LambdaWithoutLiteralBlock: # (new in 1.8)
327
- Enabled: true
328
-
329
- Lint/RedundantDirGlobSort: # (new in 1.8)
330
- Enabled: true
331
-
332
- Style/EndlessMethod: # (new in 1.8)
333
- Enabled: true
334
-
335
- Style/HashExcept: # (new in 1.7)
336
- Enabled: true
233
+ # Disable inclusive language cop. None of RuboCop's business
234
+ Naming/InclusiveLanguage:
235
+ Enabled: false
data/CHANGELOG.md CHANGED
@@ -1,42 +1,8 @@
1
1
  # Nerd Dice Changelog
2
2
 
3
- ## master \(unreleased\)
4
- ### Added
5
- ### Changed
6
- ### Fixed
3
+ <img src="https://i.kym-cdn.com/photos/images/newsfeed/000/186/610/thankyou.png?1318726198" alt="Our CHANGELOG is in another castle" />
7
4
 
8
- ## 0.2.0 \(2020-12-12\)
9
- ### Added
10
- * Add ability to configure with `NerdDice.configure` block or `NerdDice.configuration`
11
- - Configure `randomization_technique` as `:random_rand`, `:securerandom`, `:random_object`, or `randomized`
12
- - Configure `refresh_seed_interval` to allow a periodic refresh of the seed
13
- * Add `randomization_technique` option to `NerdDice.total_dice` method keyword arguments
14
- * Add a lower-level `execute_die_roll` method that allows you to roll a single die with a generator specified
15
- * Add ability to manually refresh or specify seed with `:refresh_seed!` method
16
- ### Changed
17
- * Change `opts = {}` final argument to use keyword args `**opts` in the `NerdDice.total_dice` method. Now the method can be called as follows:
18
- ```ruby
19
- # old
20
- NerdDice.total_dice(20, 1, {bonus: 5})
21
- NerdDice.total_dice(6, 3, {bonus: 1})
5
+ ## Legacy Branch: See master
6
+ This is a legacy maintenance branch.
22
7
 
23
- # new
24
- NerdDice.total_dice(20, bonus: 5)
25
- NerdDice.total_dice(6, 3, bonus: 1)
26
- ```
27
- * Call `:to_i` on bonus instead of using `:is_a?` and raise ArgumentError in the `NerdDice.total_dice` method if it doesn't respond to `:to_i`
28
- * Added `securerandom` as an explicit dependency due to Ruby 3.x change to bundled gem
29
- * `total_dice` no longer calls unqualified `.rand` which improves performance on all generators except for `:securerandom`
30
- ### Fixed
31
-
32
- ## 0.1.1 \(2020-12-12\)
33
- ### Added
34
- ### Changed
35
- ### Fixed
36
- * Fix broken link to CHANGELOG in gemspec
37
- * Fix rubocop offenses from 0.1.0 and refactor specs
38
-
39
- ## 0.1.0 \(2020-12-07\)
40
-
41
- ### Added
42
- * Add NerdDice.total_dice class method with the ability to roll multiple polyhedral dice and add a bonus
8
+ The [authoritative version of the CHANGELOG](https://github.com/statelesscode/nerd_dice/blob/master/CHANGELOG.md) is found on the master branch. All other release and maintenance branches are updated to point to master after being created.
data/Gemfile CHANGED
@@ -5,5 +5,5 @@ source "https://rubygems.org"
5
5
  # Specify your gem's dependencies in nerd_dice.gemspec
6
6
  gemspec
7
7
 
8
- gem "rake", "~> 12.0"
9
- gem "rspec", "~> 3.0"
8
+ gem "rake", "~> 13.0"
9
+ gem "rspec", "~> 3.12"
data/Gemfile.lock CHANGED
@@ -1,68 +1,93 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nerd_dice (0.2.0)
5
- securerandom (~> 0.1, >= 0.1.0)
4
+ nerd_dice (0.2.1)
5
+ securerandom (~> 0.2, >= 0.2.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
10
  ast (2.4.2)
11
- diff-lcs (1.4.4)
12
- parallel (1.20.1)
13
- parser (3.0.0.0)
11
+ coveralls_reborn (0.27.0)
12
+ simplecov (~> 0.22.0)
13
+ term-ansicolor (~> 1.7)
14
+ thor (~> 1.2)
15
+ tins (~> 1.32)
16
+ diff-lcs (1.5.0)
17
+ docile (1.4.0)
18
+ json (2.6.3)
19
+ parallel (1.22.1)
20
+ parser (3.2.1.0)
14
21
  ast (~> 2.4.1)
15
- rainbow (3.0.0)
16
- rake (12.3.3)
17
- regexp_parser (2.0.3)
18
- rexml (3.2.4)
19
- rspec (3.10.0)
20
- rspec-core (~> 3.10.0)
21
- rspec-expectations (~> 3.10.0)
22
- rspec-mocks (~> 3.10.0)
23
- rspec-core (3.10.1)
24
- rspec-support (~> 3.10.0)
25
- rspec-expectations (3.10.1)
22
+ rainbow (3.1.1)
23
+ rake (13.0.6)
24
+ regexp_parser (2.7.0)
25
+ rexml (3.2.5)
26
+ rspec (3.12.0)
27
+ rspec-core (~> 3.12.0)
28
+ rspec-expectations (~> 3.12.0)
29
+ rspec-mocks (~> 3.12.0)
30
+ rspec-core (3.12.1)
31
+ rspec-support (~> 3.12.0)
32
+ rspec-expectations (3.12.2)
26
33
  diff-lcs (>= 1.2.0, < 2.0)
27
- rspec-support (~> 3.10.0)
28
- rspec-mocks (3.10.1)
34
+ rspec-support (~> 3.12.0)
35
+ rspec-mocks (3.12.3)
29
36
  diff-lcs (>= 1.2.0, < 2.0)
30
- rspec-support (~> 3.10.0)
31
- rspec-support (3.10.1)
32
- rubocop (1.8.1)
37
+ rspec-support (~> 3.12.0)
38
+ rspec-support (3.12.0)
39
+ rubocop (1.46.0)
40
+ json (~> 2.3)
33
41
  parallel (~> 1.10)
34
- parser (>= 3.0.0.0)
42
+ parser (>= 3.2.0.0)
35
43
  rainbow (>= 2.2.2, < 4.0)
36
44
  regexp_parser (>= 1.8, < 3.0)
37
- rexml
38
- rubocop-ast (>= 1.2.0, < 2.0)
45
+ rexml (>= 3.2.5, < 4.0)
46
+ rubocop-ast (>= 1.26.0, < 2.0)
39
47
  ruby-progressbar (~> 1.7)
40
- unicode-display_width (>= 1.4.0, < 3.0)
41
- rubocop-ast (1.4.1)
42
- parser (>= 2.7.1.5)
43
- rubocop-performance (1.9.2)
44
- rubocop (>= 0.90.0, < 2.0)
48
+ unicode-display_width (>= 2.4.0, < 3.0)
49
+ rubocop-ast (1.26.0)
50
+ parser (>= 3.2.1.0)
51
+ rubocop-capybara (2.17.1)
52
+ rubocop (~> 1.41)
53
+ rubocop-performance (1.16.0)
54
+ rubocop (>= 1.7.0, < 2.0)
45
55
  rubocop-ast (>= 0.4.0)
46
- rubocop-rake (0.5.1)
47
- rubocop
48
- rubocop-rspec (2.1.0)
56
+ rubocop-rake (0.6.0)
49
57
  rubocop (~> 1.0)
50
- rubocop-ast (>= 1.1.0)
58
+ rubocop-rspec (2.18.1)
59
+ rubocop (~> 1.33)
60
+ rubocop-capybara (~> 2.17)
51
61
  ruby-progressbar (1.11.0)
52
- securerandom (0.1.0)
53
- unicode-display_width (2.0.0)
62
+ securerandom (0.2.2)
63
+ simplecov (0.22.0)
64
+ docile (~> 1.1)
65
+ simplecov-html (~> 0.11)
66
+ simplecov_json_formatter (~> 0.1)
67
+ simplecov-html (0.12.3)
68
+ simplecov-lcov (0.8.0)
69
+ simplecov_json_formatter (0.1.4)
70
+ sync (0.5.0)
71
+ term-ansicolor (1.7.1)
72
+ tins (~> 1.0)
73
+ thor (1.2.1)
74
+ tins (1.32.1)
75
+ sync
76
+ unicode-display_width (2.4.2)
54
77
 
55
78
  PLATFORMS
56
79
  ruby
57
80
 
58
81
  DEPENDENCIES
82
+ coveralls_reborn (~> 0.27.0)
59
83
  nerd_dice!
60
- rake (~> 12.0)
61
- rspec (~> 3.0)
62
- rubocop (~> 1.8, >= 1.8.1)
63
- rubocop-performance (~> 1.9, >= 1.9.1)
64
- rubocop-rake (~> 0.5, >= 0.5.1)
65
- rubocop-rspec (~> 2.1, >= 2.1.0)
84
+ rake (~> 13.0)
85
+ rspec (~> 3.12)
86
+ rubocop (~> 1.46, >= 1.46.0)
87
+ rubocop-performance (~> 1.16, >= 1.16.0)
88
+ rubocop-rake (~> 0.6, >= 0.6.0)
89
+ rubocop-rspec (~> 2.18, >= 2.18.1)
90
+ simplecov-lcov (~> 0.8.0)
66
91
 
67
92
  BUNDLED WITH
68
- 2.2.3
93
+ 2.2.22
data/README.md CHANGED
@@ -1,3 +1,6 @@
1
+ [![Coverage Status](https://coveralls.io/repos/github/statelesscode/nerd_dice/badge.svg?branch=master)](https://coveralls.io/github/statelesscode/nerd_dice?branch=master)
2
+ ![Build](https://github.com/statelesscode/nerd_dice/actions/workflows/main.yml/badge.svg)
3
+ [![Maintainability](https://api.codeclimate.com/v1/badges/721f587b792d583065be/maintainability)](https://codeclimate.com/github/statelesscode/nerd_dice/maintainability)
1
4
  # NerdDice
2
5
  Nerd dice allows you to roll polyhedral dice and add bonuses as you would in a tabletop roleplaying game. You can choose to roll multiple dice and keep a specified number of dice such as rolling 4d6 and dropping the lowest for ability scores or rolling with advantage and disadvantage if those mechanics exist in your game.
3
6
 
@@ -85,8 +88,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
85
88
 
86
89
  ## Contributing
87
90
 
88
- Bug reports and pull requests are welcome on GitHub at https://github.com/statelesscode/nerd_dice/issues. We welcome and encourage your participation in this open-source project. We welcome those of all backgrounds and abilities, but we refuse to adopt the Contributor Covenant for reasons outlined in [BURN_THE_CONTRIBUTOR_COVENANT_WITH_FIRE.md](https://github.com/statelesscode/nerd_dice/blob/master/BURN_THE_CONTRIBUTOR_COVENANT_WITH_FIRE.md)
89
-
91
+ Bug reports and pull requests are welcome on GitHub at https://github.com/statelesscode/nerd_dice/issues. We welcome and encourage your participation in this open-source project. We welcome those of all backgrounds and abilities, but we refuse to adopt the Contributor Covenant for reasons outlined in [BURN_THE_CONTRIBUTOR_COVENANT_WITH_FIRE.md](BURN_THE_CONTRIBUTOR_COVENANT_WITH_FIRE.md)
90
92
 
91
93
  ## Unlicense, License, and Copyright
92
94
 
@@ -7,7 +7,7 @@ version = ARGV[0]
7
7
  built_gem_path = "pkg/nerd_dice-#{version}.gem"
8
8
  checksum = Digest::SHA512.new.hexdigest(File.read(built_gem_path))
9
9
  checksum_path = "checksum/nerd_dice-#{version}.gem.sha512"
10
- File.open(checksum_path, "w") { |f| f.write(checksum) }
10
+ File.write(checksum_path, checksum)
11
11
  sha256 = Digest::SHA256.new.hexdigest(File.read(built_gem_path))
12
12
  checksum_256_path = "checksum/nerd_dice-#{version}.gem.sha256"
13
- File.open(checksum_256_path, "w") { |f| f.write(sha256) }
13
+ File.write(checksum_256_path, sha256)
@@ -0,0 +1,108 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require "bundler/setup"
5
+ require "benchmark"
6
+ require "nerd_dice"
7
+
8
+ n = 50_000
9
+
10
+ RATIOS = {
11
+ nerd_dice_securerandom: 1.7,
12
+ nerd_dice_random_rand: 11.1,
13
+ nerd_dice_random_object: 13.0,
14
+ nerd_dice_randomized: 5.5,
15
+ nerd_dice_securerandom_3d6: 5.5,
16
+ nerd_dice_random_rand_3d6: 25.0,
17
+ nerd_dice_random_object_3d6: 25.5,
18
+ nerd_dice_randomized_3d6: 14.5
19
+ }.freeze
20
+
21
+ def check_against_baseline!(baseline_value, test_value)
22
+ ratio = RATIOS[test_value.label.to_sym]
23
+ error_message = "Failed benchmark for #{test_value.label}. "
24
+ error_message += "Allowed ratio was #{ratio} actual ratio was #{test_value.real / baseline_value}"
25
+ raise NerdDice::Error, error_message if test_value.real > baseline_value * ratio
26
+ end
27
+
28
+ puts "Set baseline"
29
+ baselines = Benchmark.bmbm do |x|
30
+ # Random.rand()
31
+ x.report("Random.rand") do # standard rand()
32
+ n.times { Random.rand(1000) }
33
+ end
34
+
35
+ # SecureRandom.rand()
36
+ x.report("Sec.rand") do
37
+ n.times { SecureRandom.rand(1000) }
38
+ end
39
+ end
40
+
41
+ random_rand_baseline = baselines[0].real
42
+ securerandom_baseline = baselines[1].real
43
+
44
+ puts "Roll d1000s"
45
+ total_dice_d1000_results = Benchmark.bmbm do |x|
46
+ # NerdDice.total_dice securerandom
47
+ x.report("nerd_dice_securerandom") do
48
+ NerdDice.configuration.randomization_technique = :securerandom
49
+ n.times { NerdDice.total_dice(1000) }
50
+ end
51
+
52
+ x.report("nerd_dice_random_rand") do
53
+ NerdDice.configuration.randomization_technique = :random_rand
54
+ n.times { NerdDice.total_dice(1000) }
55
+ end
56
+
57
+ x.report("nerd_dice_random_object") do
58
+ NerdDice.configuration.randomization_technique = :random_object
59
+ n.times { NerdDice.total_dice(1000) }
60
+ end
61
+
62
+ x.report("nerd_dice_randomized") do
63
+ NerdDice.configuration.randomization_technique = :randomized
64
+ n.times { NerdDice.total_dice(1000) }
65
+ end
66
+ end
67
+
68
+ total_dice_securerandom = total_dice_d1000_results[0]
69
+ check_against_baseline! securerandom_baseline, total_dice_securerandom
70
+ total_dice_random_rand = total_dice_d1000_results[1]
71
+ check_against_baseline! random_rand_baseline, total_dice_random_rand
72
+ total_dice_random_object = total_dice_d1000_results[2]
73
+ check_against_baseline! random_rand_baseline, total_dice_random_object
74
+ total_dice_randomized = total_dice_d1000_results[3]
75
+ check_against_baseline! ((random_rand_baseline * 0.75) + (securerandom_baseline * 0.25)), total_dice_randomized
76
+
77
+ puts "Roll 3d6"
78
+ total_dice_3d6_results = Benchmark.bmbm do |x|
79
+ # NerdDice.total_dice securerandom
80
+ x.report("nerd_dice_securerandom_3d6") do
81
+ NerdDice.configuration.randomization_technique = :securerandom
82
+ n.times { NerdDice.total_dice(6, 3) }
83
+ end
84
+
85
+ x.report("nerd_dice_random_rand_3d6") do
86
+ NerdDice.configuration.randomization_technique = :random_rand
87
+ n.times { NerdDice.total_dice(6, 3) }
88
+ end
89
+
90
+ x.report("nerd_dice_random_object_3d6") do
91
+ NerdDice.configuration.randomization_technique = :random_object
92
+ n.times { NerdDice.total_dice(6, 3) }
93
+ end
94
+
95
+ x.report("nerd_dice_randomized_3d6") do
96
+ NerdDice.configuration.randomization_technique = :randomized
97
+ n.times { NerdDice.total_dice(6, 3) }
98
+ end
99
+ end
100
+
101
+ total_dice_3d6_securerandom = total_dice_3d6_results[0]
102
+ check_against_baseline! securerandom_baseline, total_dice_3d6_securerandom
103
+ total_dice_3d6_random_rand = total_dice_3d6_results[1]
104
+ check_against_baseline! random_rand_baseline, total_dice_3d6_random_rand
105
+ total_dice_3d6_random_object = total_dice_3d6_results[2]
106
+ check_against_baseline! random_rand_baseline, total_dice_3d6_random_object
107
+ total_dice_3d6_randomized = total_dice_3d6_results[3]
108
+ check_against_baseline! ((random_rand_baseline * 0.75) + (securerandom_baseline * 0.25)), total_dice_3d6_randomized
@@ -1,26 +1,27 @@
1
1
  -----BEGIN CERTIFICATE-----
2
- MIIETTCCArWgAwIBAgIBATANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDDB1zdGF0
3
- ZWxlc3Njb2RlL0RDPWdtYWlsL0RDPWNvbTAeFw0yMDEyMDYyMzQ1NTZaFw0yMTEy
4
- MDYyMzQ1NTZaMCgxJjAkBgNVBAMMHXN0YXRlbGVzc2NvZGUvREM9Z21haWwvREM9
5
- Y29tMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAyHIMJi0o3bwBZsx5
6
- TQ35XByFsdDRsro3T+0NY7EAILtOiU04o9C2NPOp/RQE7BXQgMjGebwp6bT6QvzN
7
- 6noV4jPL7Fi5pWw08QygG7f+73YUBb+8d8o+3xGrC+UO5h1PZEtVcZwUWUG18QBE
8
- fbDinQT6P4IDQoZwhfrPCB+aBfUyQp4Ok7oD7MEWqsq9SjrSxqxfk4+oZdXUySe7
9
- Vi5vnzVQ5uFf56NHwWnNKCzJzmH84mBO5MzHaQpHNzKGJPoUmzLU5RBlCH6YXqBG
10
- KhXTMUDBWKJmJ3RDry/FpGgJLKu4wzFRYjXla6IjeKozWGuPNNJ+2mesXKhsX7bo
11
- vVCzRxPEupbEg/0FkJiWpiGlSPOdd6oJiwX8E6rlEeV605xrbOQewkbovHkYTMtG
12
- +NH+u08x0z4Oj71kmDLwuj812uS0mtrCg2VhiYO0ZCQ4XrwBsBfK+/MtMlR+o6sG
13
- /zvz/vHVJKaLTQxRp5oGo4QH6HfbOnwzTkXdZnt5AlN31ErJAgMBAAGjgYEwfzAJ
14
- BgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUC7seYydsGO6O1qT4nVVD
15
- G/LkiHYwIgYDVR0RBBswGYEXc3RhdGVsZXNzY29kZUBnbWFpbC5jb20wIgYDVR0S
16
- BBswGYEXc3RhdGVsZXNzY29kZUBnbWFpbC5jb20wDQYJKoZIhvcNAQELBQADggGB
17
- ADPRFRB1cjqdcE2O0jtqiDRmrR62uEYBiUbkRPVhyoEp/cK0TVhAs9mGWAyCWu0M
18
- LewUeqNTUvQ9MgvagcKcnxa2RTjdrP3nGnwpStMr9bm3ArNJEzvWEs0Eusk9y73x
19
- fjy0qH2pw5WPfWcKYlDehMXqOP+a4udYsz0YSNiI8qEfkDCSqTJN11d5kSjVjwGB
20
- xkauxDT68j1JZRjPmQl3dl+DCgxkoziWX2mFTPLfGg5vZ0t6gmhdUtLvJtNIo0IX
21
- 477E5UjmE1+rULQp/fsH6n5+H+t2eCED41ST+gkKbaQBUfIuUaCmdHz9sJaIIBw2
22
- 6ordFa1nrLV4w5Uf6qYFnWVhIWX4GToyZSPO2s0DPYp3PWFJ4VtzKa2vp1TR5ZEA
23
- dkij2eQ9M8bzWWmW+A7RNaI0CzLl967bKGBSaMVCsZGBarggWD8UwJnBhTuOPZGR
24
- WQ4faXJSevxT+x9TgyUNJINPkz/KqreClzdL83cwxPzFFQto7zF6zMCsj0slqJjW
25
- EQ==
2
+ MIIEhTCCAu2gAwIBAgIBATANBgkqhkiG9w0BAQsFADBEMRYwFAYDVQQDDA1zdGF0
3
+ ZWxlc3Njb2RlMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJk/IsZAEZ
4
+ FgNjb20wHhcNMjMwMjIzMjMyMTQwWhcNMjQwMjIzMjMyMTQwWjBEMRYwFAYDVQQD
5
+ DA1zdGF0ZWxlc3Njb2RlMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJ
6
+ k/IsZAEZFgNjb20wggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCxVzHS
7
+ gYszan//tjTSO0z59UO1rUiT5G0//iyhiaYIiuwxhYFbfD+wOCou4M18pQtEb4qx
8
+ o67tPfGimBAVak6fGfo8fo1ByHiKCvx3jgOjxNifT9pRFlBSr6ZvyXeu7zA0ddLr
9
+ slw92DNqeRlZXqB0mxDtpKWONGc1XhAqEjEP3VL7g7x0xPQShcpXg/OyRPR5vyv8
10
+ 66pXdFrXYZGrySfIB6ZOWFV6wGBj603rPdXOeYVeks6hKvw3wb4G1s7tvwTA5MWI
11
+ otw6Mp9TaMdms9zTc5A3N58pueKfBJfwkICkdAGJDWC6sIXECoaTDRqVK96RSH/1
12
+ 8tEPDoFYpJDOa5byX1j7srwO0B6WOtPxix7gW1wBbEp7eWSQf1k3k9XEh32SRsPq
13
+ NJObRfhkzoa9p1tPkVP3nasDTK5gtisolwhb7Vimeup54yKfT/THv2iNEnGTvK1P
14
+ sV4vC8nch88lBI1mIecmSh/mwED4Mb1dNtcyuB/+XnSI8vIzXJKAAKaT0eMCAwEA
15
+ AaOBgTB/MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBRP42hSa0JV
16
+ QGDSobiGTYyfM570hjAiBgNVHREEGzAZgRdzdGF0ZWxlc3Njb2RlQGdtYWlsLmNv
17
+ bTAiBgNVHRIEGzAZgRdzdGF0ZWxlc3Njb2RlQGdtYWlsLmNvbTANBgkqhkiG9w0B
18
+ AQsFAAOCAYEANtaR6OV7p1IJOsvVgGQzVg88NIOeXrfOaEDUPb6eg4JMOSL0Cvvl
19
+ 2F7lB/ykbQcO4Oe7NucuavC7ClyG3c/V5eQ5TtPNWkMbVN9ESVR8wk5SjhiI8L35
20
+ MBxJ6YU27eyDmazQJ7eCYcRJkuyWt3KcqgsEh7JyNnKcJ/3rgf1QW0IyJiGsXM1I
21
+ SssQ/t7Ia2tVMrVMsvs834v9FRpVbO3dHdCO4t7zQBIADVcj4NqCDV10D6aji/Aa
22
+ 35YJHwlkhuZH6AYC45QHt9dW0/OLmbFwoJqW7syrso2PParyMr4YcJwucXViRiL7
23
+ l5aVpYdz/RTqdB92Mmud5Hj5zkuEE4CHBh8L8AJC5kZu/YUXXDtuECSMVhg5O84h
24
+ QsdcuygyVASmw2aliMAFXfIBDYelduG0XwjdOREN3q4SDTKP+pfBxx6OdD1RfsYF
25
+ /9HhtVbKLq34iQftF4oIH66bYDEyG5y4CLKQ8Nq0WDWq50OcaP9KpDiS21BC43SW
26
+ t+NX7PDOWx4k
26
27
  -----END CERTIFICATE-----
@@ -0,0 +1 @@
1
+ 0a2d4765e24c21fecf99229b0cc4fad806ca256d2187c45c442b25771af1b9cc
@@ -0,0 +1 @@
1
+ e345190f870eabd2a4fd6993f1a1d70d008ef8e6464767ba5697a46f7c4d6912c78a18039cec06c18dd6f0ee9f425453c078f780d36ccf65043ec3f7fba790a2
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NerdDice
4
- VERSION = "0.2.0"
4
+ VERSION = "0.2.1"
5
5
  end
data/nerd_dice.gemspec CHANGED
@@ -28,6 +28,7 @@ Gem::Specification.new do |spec|
28
28
  spec.metadata["bug_tracker_uri"] = "https://github.com/statelesscode/nerd_dice/issues"
29
29
  spec.metadata["documentation_uri"] = "https://github.com/statelesscode/nerd_dice/README.md"
30
30
  spec.metadata["github_repo"] = "https://github.com/statelesscode/nerd_dice"
31
+ spec.metadata["rubygems_mfa_required"] = "true"
31
32
 
32
33
  # Specify which files should be added to the gem when it is released.
33
34
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -43,11 +44,13 @@ Gem::Specification.new do |spec|
43
44
  spec.signing_key = File.expand_path("~/.ssh/gem-private_key.pem") if $PROGRAM_NAME.end_with?("gem")
44
45
 
45
46
  # Dependencies
46
- spec.add_dependency "securerandom", "~> 0.1", ">= 0.1.0"
47
+ spec.add_dependency "securerandom", "~> 0.2", ">= 0.2.2"
47
48
 
48
49
  # Development Dependencies
49
- spec.add_development_dependency "rubocop", "~> 1.8", ">= 1.8.1"
50
- spec.add_development_dependency "rubocop-performance", "~> 1.9", ">= 1.9.1"
51
- spec.add_development_dependency "rubocop-rake", "~> 0.5", ">= 0.5.1"
52
- spec.add_development_dependency "rubocop-rspec", "~> 2.1", ">= 2.1.0"
50
+ spec.add_development_dependency "coveralls_reborn", "~> 0.27.0"
51
+ spec.add_development_dependency "rubocop", "~> 1.46", ">= 1.46.0"
52
+ spec.add_development_dependency "rubocop-performance", "~> 1.16", ">= 1.16.0"
53
+ spec.add_development_dependency "rubocop-rake", "~> 0.6", ">= 0.6.0"
54
+ spec.add_development_dependency "rubocop-rspec", "~> 2.18", ">= 2.18.1"
55
+ spec.add_development_dependency "simplecov-lcov", "~> 0.8.0"
53
56
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nerd_dice
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Duchemin
@@ -10,32 +10,33 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIETTCCArWgAwIBAgIBATANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDDB1zdGF0
14
- ZWxlc3Njb2RlL0RDPWdtYWlsL0RDPWNvbTAeFw0yMDEyMDYyMzQ1NTZaFw0yMTEy
15
- MDYyMzQ1NTZaMCgxJjAkBgNVBAMMHXN0YXRlbGVzc2NvZGUvREM9Z21haWwvREM9
16
- Y29tMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAyHIMJi0o3bwBZsx5
17
- TQ35XByFsdDRsro3T+0NY7EAILtOiU04o9C2NPOp/RQE7BXQgMjGebwp6bT6QvzN
18
- 6noV4jPL7Fi5pWw08QygG7f+73YUBb+8d8o+3xGrC+UO5h1PZEtVcZwUWUG18QBE
19
- fbDinQT6P4IDQoZwhfrPCB+aBfUyQp4Ok7oD7MEWqsq9SjrSxqxfk4+oZdXUySe7
20
- Vi5vnzVQ5uFf56NHwWnNKCzJzmH84mBO5MzHaQpHNzKGJPoUmzLU5RBlCH6YXqBG
21
- KhXTMUDBWKJmJ3RDry/FpGgJLKu4wzFRYjXla6IjeKozWGuPNNJ+2mesXKhsX7bo
22
- vVCzRxPEupbEg/0FkJiWpiGlSPOdd6oJiwX8E6rlEeV605xrbOQewkbovHkYTMtG
23
- +NH+u08x0z4Oj71kmDLwuj812uS0mtrCg2VhiYO0ZCQ4XrwBsBfK+/MtMlR+o6sG
24
- /zvz/vHVJKaLTQxRp5oGo4QH6HfbOnwzTkXdZnt5AlN31ErJAgMBAAGjgYEwfzAJ
25
- BgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUC7seYydsGO6O1qT4nVVD
26
- G/LkiHYwIgYDVR0RBBswGYEXc3RhdGVsZXNzY29kZUBnbWFpbC5jb20wIgYDVR0S
27
- BBswGYEXc3RhdGVsZXNzY29kZUBnbWFpbC5jb20wDQYJKoZIhvcNAQELBQADggGB
28
- ADPRFRB1cjqdcE2O0jtqiDRmrR62uEYBiUbkRPVhyoEp/cK0TVhAs9mGWAyCWu0M
29
- LewUeqNTUvQ9MgvagcKcnxa2RTjdrP3nGnwpStMr9bm3ArNJEzvWEs0Eusk9y73x
30
- fjy0qH2pw5WPfWcKYlDehMXqOP+a4udYsz0YSNiI8qEfkDCSqTJN11d5kSjVjwGB
31
- xkauxDT68j1JZRjPmQl3dl+DCgxkoziWX2mFTPLfGg5vZ0t6gmhdUtLvJtNIo0IX
32
- 477E5UjmE1+rULQp/fsH6n5+H+t2eCED41ST+gkKbaQBUfIuUaCmdHz9sJaIIBw2
33
- 6ordFa1nrLV4w5Uf6qYFnWVhIWX4GToyZSPO2s0DPYp3PWFJ4VtzKa2vp1TR5ZEA
34
- dkij2eQ9M8bzWWmW+A7RNaI0CzLl967bKGBSaMVCsZGBarggWD8UwJnBhTuOPZGR
35
- WQ4faXJSevxT+x9TgyUNJINPkz/KqreClzdL83cwxPzFFQto7zF6zMCsj0slqJjW
36
- EQ==
13
+ MIIEhTCCAu2gAwIBAgIBATANBgkqhkiG9w0BAQsFADBEMRYwFAYDVQQDDA1zdGF0
14
+ ZWxlc3Njb2RlMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJk/IsZAEZ
15
+ FgNjb20wHhcNMjMwMjIzMjMyMTQwWhcNMjQwMjIzMjMyMTQwWjBEMRYwFAYDVQQD
16
+ DA1zdGF0ZWxlc3Njb2RlMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJ
17
+ k/IsZAEZFgNjb20wggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCxVzHS
18
+ gYszan//tjTSO0z59UO1rUiT5G0//iyhiaYIiuwxhYFbfD+wOCou4M18pQtEb4qx
19
+ o67tPfGimBAVak6fGfo8fo1ByHiKCvx3jgOjxNifT9pRFlBSr6ZvyXeu7zA0ddLr
20
+ slw92DNqeRlZXqB0mxDtpKWONGc1XhAqEjEP3VL7g7x0xPQShcpXg/OyRPR5vyv8
21
+ 66pXdFrXYZGrySfIB6ZOWFV6wGBj603rPdXOeYVeks6hKvw3wb4G1s7tvwTA5MWI
22
+ otw6Mp9TaMdms9zTc5A3N58pueKfBJfwkICkdAGJDWC6sIXECoaTDRqVK96RSH/1
23
+ 8tEPDoFYpJDOa5byX1j7srwO0B6WOtPxix7gW1wBbEp7eWSQf1k3k9XEh32SRsPq
24
+ NJObRfhkzoa9p1tPkVP3nasDTK5gtisolwhb7Vimeup54yKfT/THv2iNEnGTvK1P
25
+ sV4vC8nch88lBI1mIecmSh/mwED4Mb1dNtcyuB/+XnSI8vIzXJKAAKaT0eMCAwEA
26
+ AaOBgTB/MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBRP42hSa0JV
27
+ QGDSobiGTYyfM570hjAiBgNVHREEGzAZgRdzdGF0ZWxlc3Njb2RlQGdtYWlsLmNv
28
+ bTAiBgNVHRIEGzAZgRdzdGF0ZWxlc3Njb2RlQGdtYWlsLmNvbTANBgkqhkiG9w0B
29
+ AQsFAAOCAYEANtaR6OV7p1IJOsvVgGQzVg88NIOeXrfOaEDUPb6eg4JMOSL0Cvvl
30
+ 2F7lB/ykbQcO4Oe7NucuavC7ClyG3c/V5eQ5TtPNWkMbVN9ESVR8wk5SjhiI8L35
31
+ MBxJ6YU27eyDmazQJ7eCYcRJkuyWt3KcqgsEh7JyNnKcJ/3rgf1QW0IyJiGsXM1I
32
+ SssQ/t7Ia2tVMrVMsvs834v9FRpVbO3dHdCO4t7zQBIADVcj4NqCDV10D6aji/Aa
33
+ 35YJHwlkhuZH6AYC45QHt9dW0/OLmbFwoJqW7syrso2PParyMr4YcJwucXViRiL7
34
+ l5aVpYdz/RTqdB92Mmud5Hj5zkuEE4CHBh8L8AJC5kZu/YUXXDtuECSMVhg5O84h
35
+ QsdcuygyVASmw2aliMAFXfIBDYelduG0XwjdOREN3q4SDTKP+pfBxx6OdD1RfsYF
36
+ /9HhtVbKLq34iQftF4oIH66bYDEyG5y4CLKQ8Nq0WDWq50OcaP9KpDiS21BC43SW
37
+ t+NX7PDOWx4k
37
38
  -----END CERTIFICATE-----
38
- date: 2021-01-28 00:00:00.000000000 Z
39
+ date: 2023-02-24 00:00:00.000000000 Z
39
40
  dependencies:
40
41
  - !ruby/object:Gem::Dependency
41
42
  name: securerandom
@@ -43,100 +44,128 @@ dependencies:
43
44
  requirements:
44
45
  - - "~>"
45
46
  - !ruby/object:Gem::Version
46
- version: '0.1'
47
+ version: '0.2'
47
48
  - - ">="
48
49
  - !ruby/object:Gem::Version
49
- version: 0.1.0
50
+ version: 0.2.2
50
51
  type: :runtime
51
52
  prerelease: false
52
53
  version_requirements: !ruby/object:Gem::Requirement
53
54
  requirements:
54
55
  - - "~>"
55
56
  - !ruby/object:Gem::Version
56
- version: '0.1'
57
+ version: '0.2'
57
58
  - - ">="
58
59
  - !ruby/object:Gem::Version
59
- version: 0.1.0
60
+ version: 0.2.2
61
+ - !ruby/object:Gem::Dependency
62
+ name: coveralls_reborn
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: 0.27.0
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: 0.27.0
60
75
  - !ruby/object:Gem::Dependency
61
76
  name: rubocop
62
77
  requirement: !ruby/object:Gem::Requirement
63
78
  requirements:
64
79
  - - "~>"
65
80
  - !ruby/object:Gem::Version
66
- version: '1.8'
81
+ version: '1.46'
67
82
  - - ">="
68
83
  - !ruby/object:Gem::Version
69
- version: 1.8.1
84
+ version: 1.46.0
70
85
  type: :development
71
86
  prerelease: false
72
87
  version_requirements: !ruby/object:Gem::Requirement
73
88
  requirements:
74
89
  - - "~>"
75
90
  - !ruby/object:Gem::Version
76
- version: '1.8'
91
+ version: '1.46'
77
92
  - - ">="
78
93
  - !ruby/object:Gem::Version
79
- version: 1.8.1
94
+ version: 1.46.0
80
95
  - !ruby/object:Gem::Dependency
81
96
  name: rubocop-performance
82
97
  requirement: !ruby/object:Gem::Requirement
83
98
  requirements:
84
99
  - - "~>"
85
100
  - !ruby/object:Gem::Version
86
- version: '1.9'
101
+ version: '1.16'
87
102
  - - ">="
88
103
  - !ruby/object:Gem::Version
89
- version: 1.9.1
104
+ version: 1.16.0
90
105
  type: :development
91
106
  prerelease: false
92
107
  version_requirements: !ruby/object:Gem::Requirement
93
108
  requirements:
94
109
  - - "~>"
95
110
  - !ruby/object:Gem::Version
96
- version: '1.9'
111
+ version: '1.16'
97
112
  - - ">="
98
113
  - !ruby/object:Gem::Version
99
- version: 1.9.1
114
+ version: 1.16.0
100
115
  - !ruby/object:Gem::Dependency
101
116
  name: rubocop-rake
102
117
  requirement: !ruby/object:Gem::Requirement
103
118
  requirements:
104
119
  - - "~>"
105
120
  - !ruby/object:Gem::Version
106
- version: '0.5'
121
+ version: '0.6'
107
122
  - - ">="
108
123
  - !ruby/object:Gem::Version
109
- version: 0.5.1
124
+ version: 0.6.0
110
125
  type: :development
111
126
  prerelease: false
112
127
  version_requirements: !ruby/object:Gem::Requirement
113
128
  requirements:
114
129
  - - "~>"
115
130
  - !ruby/object:Gem::Version
116
- version: '0.5'
131
+ version: '0.6'
117
132
  - - ">="
118
133
  - !ruby/object:Gem::Version
119
- version: 0.5.1
134
+ version: 0.6.0
120
135
  - !ruby/object:Gem::Dependency
121
136
  name: rubocop-rspec
122
137
  requirement: !ruby/object:Gem::Requirement
123
138
  requirements:
124
139
  - - "~>"
125
140
  - !ruby/object:Gem::Version
126
- version: '2.1'
141
+ version: '2.18'
127
142
  - - ">="
128
143
  - !ruby/object:Gem::Version
129
- version: 2.1.0
144
+ version: 2.18.1
130
145
  type: :development
131
146
  prerelease: false
132
147
  version_requirements: !ruby/object:Gem::Requirement
133
148
  requirements:
134
149
  - - "~>"
135
150
  - !ruby/object:Gem::Version
136
- version: '2.1'
151
+ version: '2.18'
137
152
  - - ">="
138
153
  - !ruby/object:Gem::Version
139
- version: 2.1.0
154
+ version: 2.18.1
155
+ - !ruby/object:Gem::Dependency
156
+ name: simplecov-lcov
157
+ requirement: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - "~>"
160
+ - !ruby/object:Gem::Version
161
+ version: 0.8.0
162
+ type: :development
163
+ prerelease: false
164
+ version_requirements: !ruby/object:Gem::Requirement
165
+ requirements:
166
+ - - "~>"
167
+ - !ruby/object:Gem::Version
168
+ version: 0.8.0
140
169
  description: |2
141
170
  Nerd dice allows you to roll polyhedral dice and add bonuses as you would in
142
171
  a tabletop roleplaying game. You can choose to roll multiple dice and keep a
@@ -148,14 +177,15 @@ email:
148
177
  executables:
149
178
  - console
150
179
  - generate_checksums
180
+ - nerd_dice_benchmark
151
181
  - setup
152
182
  extensions: []
153
183
  extra_rdoc_files: []
154
184
  files:
185
+ - ".github/workflows/main.yml"
155
186
  - ".gitignore"
156
187
  - ".rspec"
157
188
  - ".rubocop.yml"
158
- - ".travis.yml"
159
189
  - BURN_THE_CONTRIBUTOR_COVENANT_WITH_FIRE.md
160
190
  - CHANGELOG.md
161
191
  - Gemfile
@@ -166,12 +196,15 @@ files:
166
196
  - UNLICENSE.txt
167
197
  - bin/console
168
198
  - bin/generate_checksums
199
+ - bin/nerd_dice_benchmark
169
200
  - bin/setup
170
201
  - certs/msducheminjr.pem
171
202
  - checksum/nerd_dice-0.1.0.gem.sha256
172
203
  - checksum/nerd_dice-0.1.0.gem.sha512
173
204
  - checksum/nerd_dice-0.1.1.gem.sha256
174
205
  - checksum/nerd_dice-0.1.1.gem.sha512
206
+ - checksum/nerd_dice-0.2.0.gem.sha256
207
+ - checksum/nerd_dice-0.2.0.gem.sha512
175
208
  - lib/nerd_dice.rb
176
209
  - lib/nerd_dice/configuration.rb
177
210
  - lib/nerd_dice/version.rb
@@ -188,6 +221,7 @@ metadata:
188
221
  bug_tracker_uri: https://github.com/statelesscode/nerd_dice/issues
189
222
  documentation_uri: https://github.com/statelesscode/nerd_dice/README.md
190
223
  github_repo: https://github.com/statelesscode/nerd_dice
224
+ rubygems_mfa_required: 'true'
191
225
  post_install_message:
192
226
  rdoc_options: []
193
227
  require_paths:
@@ -203,7 +237,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
203
237
  - !ruby/object:Gem::Version
204
238
  version: '0'
205
239
  requirements: []
206
- rubygems_version: 3.2.3
240
+ rubygems_version: 3.4.7
207
241
  signing_key:
208
242
  specification_version: 4
209
243
  summary: A Ruby Gem for rolling polyhedral dice.
metadata.gz.sig CHANGED
Binary file
data/.travis.yml DELETED
@@ -1,6 +0,0 @@
1
- ---
2
- language: ruby
3
- cache: bundler
4
- rvm:
5
- - 2.7.2
6
- before_install: gem install bundler -v 2.1.4