MonkeyEngine 2.0.2 → 2.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e6999ecf2d6d8a4c2f0db40d32f38d619a40c55ce53e6616c381650f650500d3
4
- data.tar.gz: 21b27a1563e5c59d980c980e4e6c3a6d5bf2c79c0d6c607109a0f165566126dd
3
+ metadata.gz: b0ca0e2d0bd1bc980afad43250bd1e3f736ee8e1cafe442c25ba213c623b604b
4
+ data.tar.gz: dab1d3474a450607207ae25ea8f1c439da095e199b60108c91175a6671edb671
5
5
  SHA512:
6
- metadata.gz: 0c2f2e708dbc90200c22f3d54267724ccaa881d16a21f6628249b11c02a465ae3442b05d8d9a5161ea7b9b02ca66b386f1c4ce378ecd34020effd98795fd99fd
7
- data.tar.gz: 02fb5c756fd169cd9c5f4c90d578c7fcac045a0a2406e4c4e202fe154ecf2270ebaab9103470269de1e861851da9ff53cf01e3b816a28154bcfa0c369dd0dc71
6
+ metadata.gz: 64277975b02e8b3b1919b65774d7f0656841b6fa91a4b23a890c4f3f074e1d1eda606451d951a2a510145d88b670040323f1f808fd4931160dbf24bb9707b8ca
7
+ data.tar.gz: 9180881257c44897367811b0c6b5de26e58c15a4c966d8fac01dd2dbac9e56df8757e317923cd59542dfde4cd7b3d87de48d77c98dcfcf3843fa68b75ef82835
@@ -0,0 +1,43 @@
1
+ # This workflow uses actions that are not certified by GitHub.
2
+ # They are provided by a third-party and are governed by
3
+ # separate terms of service, privacy policy, and support
4
+ # documentation.
5
+ # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
6
+ # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
7
+
8
+ name: Ruby
9
+
10
+ on:
11
+ push:
12
+ branches: ["main"]
13
+ pull_request:
14
+ branches: ["main"]
15
+
16
+ permissions:
17
+ contents: read
18
+
19
+ jobs:
20
+ test:
21
+ runs-on: ubuntu-latest
22
+ strategy:
23
+ matrix:
24
+ # Use `rbenv install -l` and only use the latest stable
25
+ # version of ruby.
26
+ ruby-version: ["3.0.1", "3.0.6", "3.1.4", "3.2.2"]
27
+
28
+ steps:
29
+ - uses: actions/checkout@v3
30
+ - name: Set timezone
31
+ run: sudo timedatectl set-timezone 'America/New_York'
32
+ - name: Run a command
33
+ run: date
34
+ - name: Set up Ruby
35
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
36
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
37
+ # uses: ruby/setup-ruby@v1
38
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
39
+ with:
40
+ ruby-version: ${{ matrix.ruby-version }}
41
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
42
+ - name: Run tests
43
+ run: bundle exec rake
data/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ ### Version 2.0.4 2023-12-28
2
+
3
+ Changes
4
+
5
+ - Update ruby gems.
6
+ - Add github actions to run specs.
7
+ - Change the time task engine:run takes to run from 120 seconds to 30 seconds.
8
+
9
+ ### Version 2.0.3 2023-12-02
10
+ - Update ruby gems.
11
+
1
12
  ### Version 2.0.2 2023-11-01
2
13
  - Update ruby gems.
3
14
 
data/Gemfile CHANGED
@@ -4,3 +4,11 @@ source 'https://rubygems.org'
4
4
 
5
5
  # Specify your gem's dependencies in monkeyengine.gemspec
6
6
  gemspec
7
+
8
+ gem 'bundler', '~> 2.5', '>= 2.5.3'
9
+ gem 'colorize', '>= 0.8.1', '< 1.0'
10
+ gem 'pry-byebug', '>= 3.9', '< 4.0'
11
+ gem 'rake', '>= 13.0', '< 14.0'
12
+ gem 'redcarpet', '>= 2.3', '< 3.0'
13
+ gem 'rspec', '>= 3.10', '< 4.0'
14
+ gem 'yard', '>= 0.9.28', '< 1.0'
data/Gemfile.lock CHANGED
@@ -1,30 +1,41 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- MonkeyEngine (2.0.2)
5
- LittleWeasel (~> 5.0, >= 5.0.3)
6
- ProtectedConstructor (~> 2.0, >= 2.0.3)
4
+ MonkeyEngine (2.0.4)
5
+ LittleWeasel (>= 5.0, < 6.0)
6
+ ProtectedConstructor (~> 3.0)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- LittleWeasel (5.0.7)
12
- activesupport (~> 7.0.8)
13
- ProtectedConstructor (2.1.5)
14
- activesupport (7.0.8)
11
+ LittleWeasel (5.0.9)
12
+ activesupport (>= 7.0.8, < 8.0)
13
+ ProtectedConstructor (3.0.0)
14
+ activesupport (7.1.2)
15
+ base64
16
+ bigdecimal
15
17
  concurrent-ruby (~> 1.0, >= 1.0.2)
18
+ connection_pool (>= 2.2.5)
19
+ drb
16
20
  i18n (>= 1.6, < 2)
17
21
  minitest (>= 5.1)
22
+ mutex_m
18
23
  tzinfo (~> 2.0)
24
+ base64 (0.2.0)
25
+ bigdecimal (3.1.5)
19
26
  byebug (11.1.3)
20
27
  coderay (1.1.3)
21
28
  colorize (0.8.1)
22
29
  concurrent-ruby (1.2.2)
30
+ connection_pool (2.4.1)
23
31
  diff-lcs (1.5.0)
32
+ drb (2.2.0)
33
+ ruby2_keywords
24
34
  i18n (1.14.1)
25
35
  concurrent-ruby (~> 1.0)
26
36
  method_source (1.0.0)
27
37
  minitest (5.20.0)
38
+ mutex_m (0.2.0)
28
39
  pry (0.14.2)
29
40
  coderay (~> 1.1)
30
41
  method_source (~> 1.0)
@@ -46,6 +57,7 @@ GEM
46
57
  diff-lcs (>= 1.2.0, < 2.0)
47
58
  rspec-support (~> 3.12.0)
48
59
  rspec-support (3.12.1)
60
+ ruby2_keywords (0.0.5)
49
61
  tzinfo (2.0.6)
50
62
  concurrent-ruby (~> 1.0)
51
63
  yard (0.9.34)
@@ -53,16 +65,17 @@ GEM
53
65
  PLATFORMS
54
66
  x86_64-darwin-19
55
67
  x86_64-darwin-21
68
+ x86_64-linux
56
69
 
57
70
  DEPENDENCIES
58
71
  MonkeyEngine!
59
- bundler (~> 2.4, >= 2.4.21)
60
- colorize (~> 0.8.1)
61
- pry-byebug (~> 3.9)
62
- rake (~> 13.0, >= 13.0.6)
63
- redcarpet (~> 2.3, >= 2.3.0)
64
- rspec (~> 3.10)
65
- yard (~> 0.9.28)
72
+ bundler (~> 2.5, >= 2.5.3)
73
+ colorize (>= 0.8.1, < 1.0)
74
+ pry-byebug (>= 3.9, < 4.0)
75
+ rake (>= 13.0, < 14.0)
76
+ redcarpet (>= 2.3, < 3.0)
77
+ rspec (>= 3.10, < 4.0)
78
+ yard (>= 0.9.28, < 1.0)
66
79
 
67
80
  BUNDLED WITH
68
- 2.4.21
81
+ 2.5.3
data/Rakefile CHANGED
@@ -1,4 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'bundler/gem_tasks'
3
+ require "bundler/gem_tasks"
4
+ require "rspec/core/rake_task"
5
+
4
6
  require File.expand_path('lib/tasks/engine.rb', __dir__)
7
+
8
+ RSpec::Core::RakeTask.new(:spec)
9
+
10
+ task default: :spec
data/lib/Monkey/monkey.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'MonkeyActions'
4
4
  require 'MonkeyService'
5
- require 'ProtectedConstructor'
5
+ require 'protected_constructor'
6
6
 
7
7
  # Monkey class.
8
8
  #
@@ -7,7 +7,7 @@ class MonkeyAction < Action
7
7
  attr_reader :monkey
8
8
 
9
9
  def initialize(monkey, value, weight)
10
- super value, weight
10
+ super(value, weight)
11
11
 
12
12
  @monkey = monkey
13
13
  end
@@ -10,7 +10,7 @@ class MonkeyActionDead < MonkeyAction
10
10
  VALID_VALUES = [true].freeze
11
11
 
12
12
  def initialize(monkey)
13
- super monkey, true, WEIGHT
13
+ super(monkey, true, WEIGHT)
14
14
 
15
15
  validate
16
16
  end
@@ -13,7 +13,7 @@ class MonkeyActionEat < MonkeyTimedAction
13
13
  VALID_VALUES = (30..60) # 30 through 60 minutes
14
14
 
15
15
  def initialize(monkey, value)
16
- super monkey, value, WEIGHT
16
+ super(monkey, value, WEIGHT)
17
17
 
18
18
  @action_time_of_completion = @action_time + (value * 60)
19
19
 
@@ -13,7 +13,7 @@ class MonkeyActionPause < MonkeyTimedAction
13
13
  VALID_VALUES = (0..60) # Seconds (0 - 60 seconds)
14
14
 
15
15
  def initialize(monkey, value)
16
- super monkey, value, WEIGHT
16
+ super(monkey, value, WEIGHT)
17
17
 
18
18
  @action_time_of_completion = @action_time + value
19
19
 
@@ -13,7 +13,7 @@ class MonkeyActionSleep < MonkeyTimedAction
13
13
  VALID_VALUES = ((60 * 6)..(60 * 8)) # 6 through 8 hours
14
14
 
15
15
  def initialize(monkey, value)
16
- super monkey, value, WEIGHT
16
+ super(monkey, value, WEIGHT)
17
17
 
18
18
  @action_time_of_completion = @action_time + (value * (60 * 60))
19
19
 
@@ -21,7 +21,7 @@ class MonkeyActionType < MonkeyAction
21
21
 
22
22
  @keyboard_input = keyboard_input
23
23
 
24
- super monkey, @keyboard_input.input, WEIGHT
24
+ super(monkey, @keyboard_input.input, WEIGHT)
25
25
 
26
26
  validate
27
27
  end
@@ -10,7 +10,7 @@ class MonkeyActionWake < MonkeyAction
10
10
  VALID_VALUES = [true].freeze
11
11
 
12
12
  def initialize(monkey)
13
- super monkey, true, WEIGHT
13
+ super(monkey, true, WEIGHT)
14
14
 
15
15
  validate
16
16
  end
@@ -8,7 +8,7 @@ class MonkeyTimedAction < MonkeyAction
8
8
  attr_accessor :action_time_of_completion
9
9
 
10
10
  def initialize(monkey, value, weight)
11
- super monkey, value, weight
11
+ super(monkey, value, weight)
12
12
 
13
13
  @action_time_of_completion = nil
14
14
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MonkeyEngine
4
- VERSION = '2.0.2'
4
+ VERSION = '2.0.4'
5
5
  end
data/lib/tasks/engine.rb CHANGED
@@ -63,7 +63,7 @@ end
63
63
  namespace :engine do
64
64
  desc 'Run the MonkeyEngine'
65
65
  task :run do
66
- runtime = 60 * 2
66
+ runtime = 30
67
67
 
68
68
  service = MonkeyEngine::MonkeyService.instance
69
69
 
data/monkeyengine.gemspec CHANGED
@@ -18,21 +18,22 @@ Gem::Specification.new do |spec|
18
18
  spec.summary = 'The engine that drives my monkeys!'
19
19
  spec.homepage = 'https://github.com/gangelo/monkeyengine'
20
20
  spec.license = 'MIT'
21
- spec.required_ruby_version = '>= 3.0.1'
21
+ spec.required_ruby_version = Gem::Requirement.new('~> 3.0')
22
22
 
23
23
  spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
24
24
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
25
25
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
26
26
  spec.require_paths = ['lib']
27
27
 
28
- spec.add_development_dependency 'bundler', '~> 2.4', '>= 2.4.21'
29
- spec.add_development_dependency 'colorize', '~> 0.8.1'
30
- spec.add_development_dependency 'pry-byebug', '~> 3.9'
31
- spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
32
- spec.add_development_dependency 'redcarpet', '~> 2.3', '>= 2.3.0'
33
- spec.add_development_dependency 'rspec', '~> 3.10'
34
- spec.add_development_dependency 'yard', '~> 0.9.28'
28
+ spec.add_runtime_dependency 'LittleWeasel', '>= 5.0', '< 6.0'
29
+ spec.add_runtime_dependency 'ProtectedConstructor', '~> 3.0'
30
+ spec.post_install_message = <<~POST_INSTALL
31
+ Thank you for installing MonkeyEngine.
35
32
 
36
- spec.add_runtime_dependency 'LittleWeasel', '~> 5.0', '>= 5.0.3'
37
- spec.add_runtime_dependency 'ProtectedConstructor', '~> 2.0', '>= 2.0.3'
33
+ *** If you found this gem enjoyable, helpful or otherwise positive, please consider giving it a star on GitHub so I know this gem is worth maintaining ***
34
+
35
+ This is a gem created for fun and demonstrates a little about ruby threads.
36
+
37
+ Run `bundle exec rake engine:run` from your command line to see a sample.
38
+ POST_INSTALL
38
39
  end
metadata CHANGED
@@ -1,171 +1,49 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: MonkeyEngine
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gene M. Angelo, Jr.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-01 00:00:00.000000000 Z
11
+ date: 2023-12-28 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '2.4'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 2.4.21
23
- type: :development
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '2.4'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 2.4.21
33
- - !ruby/object:Gem::Dependency
34
- name: colorize
35
- requirement: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: 0.8.1
40
- type: :development
41
- prerelease: false
42
- version_requirements: !ruby/object:Gem::Requirement
43
- requirements:
44
- - - "~>"
45
- - !ruby/object:Gem::Version
46
- version: 0.8.1
47
- - !ruby/object:Gem::Dependency
48
- name: pry-byebug
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: '3.9'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: '3.9'
61
- - !ruby/object:Gem::Dependency
62
- name: rake
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '13.0'
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- version: 13.0.6
71
- type: :development
72
- prerelease: false
73
- version_requirements: !ruby/object:Gem::Requirement
74
- requirements:
75
- - - "~>"
76
- - !ruby/object:Gem::Version
77
- version: '13.0'
78
- - - ">="
79
- - !ruby/object:Gem::Version
80
- version: 13.0.6
81
- - !ruby/object:Gem::Dependency
82
- name: redcarpet
83
- requirement: !ruby/object:Gem::Requirement
84
- requirements:
85
- - - "~>"
86
- - !ruby/object:Gem::Version
87
- version: '2.3'
88
- - - ">="
89
- - !ruby/object:Gem::Version
90
- version: 2.3.0
91
- type: :development
92
- prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - "~>"
96
- - !ruby/object:Gem::Version
97
- version: '2.3'
98
- - - ">="
99
- - !ruby/object:Gem::Version
100
- version: 2.3.0
101
- - !ruby/object:Gem::Dependency
102
- name: rspec
103
- requirement: !ruby/object:Gem::Requirement
104
- requirements:
105
- - - "~>"
106
- - !ruby/object:Gem::Version
107
- version: '3.10'
108
- type: :development
109
- prerelease: false
110
- version_requirements: !ruby/object:Gem::Requirement
111
- requirements:
112
- - - "~>"
113
- - !ruby/object:Gem::Version
114
- version: '3.10'
115
- - !ruby/object:Gem::Dependency
116
- name: yard
117
- requirement: !ruby/object:Gem::Requirement
118
- requirements:
119
- - - "~>"
120
- - !ruby/object:Gem::Version
121
- version: 0.9.28
122
- type: :development
123
- prerelease: false
124
- version_requirements: !ruby/object:Gem::Requirement
125
- requirements:
126
- - - "~>"
127
- - !ruby/object:Gem::Version
128
- version: 0.9.28
129
13
  - !ruby/object:Gem::Dependency
130
14
  name: LittleWeasel
131
15
  requirement: !ruby/object:Gem::Requirement
132
16
  requirements:
133
- - - "~>"
17
+ - - ">="
134
18
  - !ruby/object:Gem::Version
135
19
  version: '5.0'
136
- - - ">="
20
+ - - "<"
137
21
  - !ruby/object:Gem::Version
138
- version: 5.0.3
22
+ version: '6.0'
139
23
  type: :runtime
140
24
  prerelease: false
141
25
  version_requirements: !ruby/object:Gem::Requirement
142
26
  requirements:
143
- - - "~>"
27
+ - - ">="
144
28
  - !ruby/object:Gem::Version
145
29
  version: '5.0'
146
- - - ">="
30
+ - - "<"
147
31
  - !ruby/object:Gem::Version
148
- version: 5.0.3
32
+ version: '6.0'
149
33
  - !ruby/object:Gem::Dependency
150
34
  name: ProtectedConstructor
151
35
  requirement: !ruby/object:Gem::Requirement
152
36
  requirements:
153
37
  - - "~>"
154
38
  - !ruby/object:Gem::Version
155
- version: '2.0'
156
- - - ">="
157
- - !ruby/object:Gem::Version
158
- version: 2.0.3
39
+ version: '3.0'
159
40
  type: :runtime
160
41
  prerelease: false
161
42
  version_requirements: !ruby/object:Gem::Requirement
162
43
  requirements:
163
44
  - - "~>"
164
45
  - !ruby/object:Gem::Version
165
- version: '2.0'
166
- - - ">="
167
- - !ruby/object:Gem::Version
168
- version: 2.0.3
46
+ version: '3.0'
169
47
  description: Have some fun! MonkeyEngine is a gem that allows virtual monkeys to tap
170
48
  away on a virtual keyboard! Can any of them complete a sentence? write a book? The
171
49
  sky is the limit! Add your own AI! Publish the results! Go...BANANAS!
@@ -175,6 +53,7 @@ executables: []
175
53
  extensions: []
176
54
  extra_rdoc_files: []
177
55
  files:
56
+ - ".github/workflows/ruby.yml"
178
57
  - ".gitignore"
179
58
  - ".rspec"
180
59
  - ".rubocop.yml"
@@ -237,15 +116,22 @@ homepage: https://github.com/gangelo/monkeyengine
237
116
  licenses:
238
117
  - MIT
239
118
  metadata: {}
240
- post_install_message:
119
+ post_install_message: |
120
+ Thank you for installing MonkeyEngine.
121
+
122
+ *** If you found this gem enjoyable, helpful or otherwise positive, please consider giving it a star on GitHub so I know this gem is worth maintaining ***
123
+
124
+ This is a gem created for fun and demonstrates a little about ruby threads.
125
+
126
+ Run `bundle exec rake engine:run` from your command line to see a sample.
241
127
  rdoc_options: []
242
128
  require_paths:
243
129
  - lib
244
130
  required_ruby_version: !ruby/object:Gem::Requirement
245
131
  requirements:
246
- - - ">="
132
+ - - "~>"
247
133
  - !ruby/object:Gem::Version
248
- version: 3.0.1
134
+ version: '3.0'
249
135
  required_rubygems_version: !ruby/object:Gem::Requirement
250
136
  requirements:
251
137
  - - ">="