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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.github/workflows/main.yml +67 -0
- data/.rubocop.yml +16 -117
- data/CHANGELOG.md +4 -38
- data/Gemfile +2 -2
- data/Gemfile.lock +67 -42
- data/README.md +4 -2
- data/bin/generate_checksums +2 -2
- data/bin/nerd_dice_benchmark +108 -0
- data/certs/msducheminjr.pem +25 -24
- data/checksum/nerd_dice-0.2.0.gem.sha256 +1 -0
- data/checksum/nerd_dice-0.2.0.gem.sha512 +1 -0
- data/lib/nerd_dice/version.rb +1 -1
- data/nerd_dice.gemspec +8 -5
- data.tar.gz.sig +0 -0
- metadata +82 -48
- metadata.gz.sig +0 -0
- data/.travis.yml +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88266e9421830d581588170f03cab85b95f95b0f3727c943ae36aa590c6ef338
|
4
|
+
data.tar.gz: 98e7fdc98609de1776400f3b4e8d04bbeff92fb0ef06814c06c967abcfd68a48
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
-
|
279
|
-
|
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
|
-
|
324
|
-
|
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
|
-
|
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
|
-
##
|
9
|
-
|
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
|
-
|
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
data/Gemfile.lock
CHANGED
@@ -1,68 +1,93 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
nerd_dice (0.2.
|
5
|
-
securerandom (~> 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
|
-
|
12
|
-
|
13
|
-
|
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.
|
16
|
-
rake (
|
17
|
-
regexp_parser (2.0
|
18
|
-
rexml (3.2.
|
19
|
-
rspec (3.
|
20
|
-
rspec-core (~> 3.
|
21
|
-
rspec-expectations (~> 3.
|
22
|
-
rspec-mocks (~> 3.
|
23
|
-
rspec-core (3.
|
24
|
-
rspec-support (~> 3.
|
25
|
-
rspec-expectations (3.
|
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.
|
28
|
-
rspec-mocks (3.
|
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.
|
31
|
-
rspec-support (3.
|
32
|
-
rubocop (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.
|
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.
|
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 (>=
|
41
|
-
rubocop-ast (1.
|
42
|
-
parser (>= 2.
|
43
|
-
rubocop-
|
44
|
-
rubocop (
|
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.
|
47
|
-
rubocop
|
48
|
-
rubocop-rspec (2.1.0)
|
56
|
+
rubocop-rake (0.6.0)
|
49
57
|
rubocop (~> 1.0)
|
50
|
-
|
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.
|
53
|
-
|
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 (~>
|
61
|
-
rspec (~> 3.
|
62
|
-
rubocop (~> 1.
|
63
|
-
rubocop-performance (~> 1.
|
64
|
-
rubocop-rake (~> 0.
|
65
|
-
rubocop-rspec (~> 2.
|
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.
|
93
|
+
2.2.22
|
data/README.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
[](https://coveralls.io/github/statelesscode/nerd_dice?branch=master)
|
2
|
+

|
3
|
+
[](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](
|
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
|
|
data/bin/generate_checksums
CHANGED
@@ -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.
|
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.
|
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
|
data/certs/msducheminjr.pem
CHANGED
@@ -1,26 +1,27 @@
|
|
1
1
|
-----BEGIN CERTIFICATE-----
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
/
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
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
|
data/lib/nerd_dice/version.rb
CHANGED
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.
|
47
|
+
spec.add_dependency "securerandom", "~> 0.2", ">= 0.2.2"
|
47
48
|
|
48
49
|
# Development Dependencies
|
49
|
-
spec.add_development_dependency "
|
50
|
-
spec.add_development_dependency "rubocop
|
51
|
-
spec.add_development_dependency "rubocop-
|
52
|
-
spec.add_development_dependency "rubocop-
|
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.
|
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
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
/
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
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:
|
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.
|
47
|
+
version: '0.2'
|
47
48
|
- - ">="
|
48
49
|
- !ruby/object:Gem::Version
|
49
|
-
version: 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.
|
57
|
+
version: '0.2'
|
57
58
|
- - ">="
|
58
59
|
- !ruby/object:Gem::Version
|
59
|
-
version: 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.
|
81
|
+
version: '1.46'
|
67
82
|
- - ">="
|
68
83
|
- !ruby/object:Gem::Version
|
69
|
-
version: 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.
|
91
|
+
version: '1.46'
|
77
92
|
- - ">="
|
78
93
|
- !ruby/object:Gem::Version
|
79
|
-
version: 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.
|
101
|
+
version: '1.16'
|
87
102
|
- - ">="
|
88
103
|
- !ruby/object:Gem::Version
|
89
|
-
version: 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.
|
111
|
+
version: '1.16'
|
97
112
|
- - ">="
|
98
113
|
- !ruby/object:Gem::Version
|
99
|
-
version: 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.
|
121
|
+
version: '0.6'
|
107
122
|
- - ">="
|
108
123
|
- !ruby/object:Gem::Version
|
109
|
-
version: 0.
|
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.
|
131
|
+
version: '0.6'
|
117
132
|
- - ">="
|
118
133
|
- !ruby/object:Gem::Version
|
119
|
-
version: 0.
|
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.
|
141
|
+
version: '2.18'
|
127
142
|
- - ">="
|
128
143
|
- !ruby/object:Gem::Version
|
129
|
-
version: 2.1
|
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.
|
151
|
+
version: '2.18'
|
137
152
|
- - ">="
|
138
153
|
- !ruby/object:Gem::Version
|
139
|
-
version: 2.1
|
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.
|
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
|