cat_engine 0.1.0 → 0.2.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 +5 -5
- data/.github/workflows/ci.yml +35 -0
- data/.ruby-version +1 -1
- data/cat_engine.gemspec +3 -4
- data/lib/cat_engine/engine.rb +7 -10
- data/lib/cat_engine/version.rb +1 -1
- metadata +19 -34
- data/.travis.yml +0 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 235962a68b9f7a187b2aab3211cab12b99ab72ba3593ddbfa130c8c215ddd82c
|
|
4
|
+
data.tar.gz: 4cd6a963847173e4d6ac4d7c10d419d05bc09ecae6c41603c5de284b2e1d646d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b87dca1dcf5502eba9e56850738a3862ec92dfc09303ab5389f2cca5ce4fd9185991fbb4e4772dc8159ffb74e46fc3e70a71cede66e6031ea55ab16057c113b5
|
|
7
|
+
data.tar.gz: 7f308779db0d6290b6699961738deb44b0792c0287f40eeb0d8a5014e9daea727d738e2b8cfcddc55ff94590413f035b82afb10da08ce0b46c7e23bbe0ecd958
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
pull_request:
|
|
6
|
+
|
|
7
|
+
permissions:
|
|
8
|
+
contents: read
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
test:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
strategy:
|
|
14
|
+
fail-fast: false
|
|
15
|
+
matrix:
|
|
16
|
+
ruby: ["3.2", "3.3", "3.4"]
|
|
17
|
+
steps:
|
|
18
|
+
- name: Checkout
|
|
19
|
+
uses: actions/checkout@v4
|
|
20
|
+
|
|
21
|
+
- name: Set up Ruby ${{ matrix.ruby }}
|
|
22
|
+
uses: ruby/setup-ruby@v1
|
|
23
|
+
with:
|
|
24
|
+
ruby-version: ${{ matrix.ruby }}
|
|
25
|
+
bundler-cache: true
|
|
26
|
+
|
|
27
|
+
- name: Install Mono (for C# engine)
|
|
28
|
+
run: |
|
|
29
|
+
sudo apt-get update
|
|
30
|
+
sudo apt-get install -y mono-complete
|
|
31
|
+
|
|
32
|
+
- name: Run build and tests
|
|
33
|
+
run: |
|
|
34
|
+
bundle exec rake
|
|
35
|
+
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
ruby-
|
|
1
|
+
ruby-3.3.4
|
data/cat_engine.gemspec
CHANGED
|
@@ -23,8 +23,7 @@ Gem::Specification.new do |spec|
|
|
|
23
23
|
spec.add_dependency "nokogiri", "~> 1.0"
|
|
24
24
|
spec.add_dependency "memoist", "~> 0.14.0"
|
|
25
25
|
|
|
26
|
-
spec.add_development_dependency "
|
|
27
|
-
spec.add_development_dependency "
|
|
28
|
-
spec.add_development_dependency "rspec"
|
|
29
|
-
spec.add_development_dependency "rspec-its", "~> 1.0"
|
|
26
|
+
spec.add_development_dependency "rake"
|
|
27
|
+
spec.add_development_dependency "rspec"
|
|
28
|
+
spec.add_development_dependency "rspec-its"
|
|
30
29
|
end
|
data/lib/cat_engine/engine.rb
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
require "nokogiri"
|
|
2
2
|
require "memoist"
|
|
3
|
+
require "open3"
|
|
3
4
|
require "cat_engine/config"
|
|
4
5
|
|
|
5
6
|
module CatEngine
|
|
@@ -10,20 +11,17 @@ module CatEngine
|
|
|
10
11
|
def self.compile
|
|
11
12
|
gmcs = [`which gmcs`.chomp, `which mcs`.chomp].find { |path| path != "" }
|
|
12
13
|
system "cd #{CatEngine.cat_engine_source_path} && #{gmcs} -debug -out:#{CatEngine.cat_engine_executable_path} *.cs"
|
|
14
|
+
raise unless $?.success?
|
|
13
15
|
end
|
|
14
16
|
|
|
15
|
-
def process id, history
|
|
16
|
-
|
|
17
|
-
output
|
|
18
|
-
|
|
19
|
-
Nokogiri::XML.parse(output, nil, "utf-8")
|
|
20
|
-
else
|
|
21
|
-
raise EngineError.new(output)
|
|
22
|
-
end
|
|
17
|
+
def process id, history = []
|
|
18
|
+
output, status = Open3.capture2e("mono", "--debug", CatEngine.cat_engine_executable_path, id, *history, chdir: CatEngine.cat_path)
|
|
19
|
+
raise EngineError.new(output) unless status.success?
|
|
20
|
+
Nokogiri::XML.parse(output, nil, "utf-8")
|
|
23
21
|
end
|
|
24
22
|
memoize :process
|
|
25
23
|
|
|
26
|
-
def valid_history? id, history
|
|
24
|
+
def valid_history? id, history = []
|
|
27
25
|
process id, history
|
|
28
26
|
true
|
|
29
27
|
rescue EngineError => e
|
|
@@ -31,4 +29,3 @@ module CatEngine
|
|
|
31
29
|
end
|
|
32
30
|
end
|
|
33
31
|
end
|
|
34
|
-
|
data/lib/cat_engine/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: cat_engine
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Micah Geisel
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-09-12 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activemodel
|
|
@@ -52,62 +52,48 @@ dependencies:
|
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: 0.14.0
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: bundler
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - "~>"
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '1.9'
|
|
62
|
-
type: :development
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - "~>"
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: '1.9'
|
|
69
55
|
- !ruby/object:Gem::Dependency
|
|
70
56
|
name: rake
|
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
|
72
58
|
requirements:
|
|
73
|
-
- - "
|
|
59
|
+
- - ">="
|
|
74
60
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '
|
|
61
|
+
version: '0'
|
|
76
62
|
type: :development
|
|
77
63
|
prerelease: false
|
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
65
|
requirements:
|
|
80
|
-
- - "
|
|
66
|
+
- - ">="
|
|
81
67
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '
|
|
68
|
+
version: '0'
|
|
83
69
|
- !ruby/object:Gem::Dependency
|
|
84
70
|
name: rspec
|
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
|
86
72
|
requirements:
|
|
87
|
-
- - "
|
|
73
|
+
- - ">="
|
|
88
74
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '
|
|
75
|
+
version: '0'
|
|
90
76
|
type: :development
|
|
91
77
|
prerelease: false
|
|
92
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
79
|
requirements:
|
|
94
|
-
- - "
|
|
80
|
+
- - ">="
|
|
95
81
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '
|
|
82
|
+
version: '0'
|
|
97
83
|
- !ruby/object:Gem::Dependency
|
|
98
84
|
name: rspec-its
|
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
|
100
86
|
requirements:
|
|
101
|
-
- - "
|
|
87
|
+
- - ">="
|
|
102
88
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '
|
|
89
|
+
version: '0'
|
|
104
90
|
type: :development
|
|
105
91
|
prerelease: false
|
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
93
|
requirements:
|
|
108
|
-
- - "
|
|
94
|
+
- - ">="
|
|
109
95
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '
|
|
96
|
+
version: '0'
|
|
111
97
|
description: Ruby wrapper around C# Cat Engine
|
|
112
98
|
email:
|
|
113
99
|
- micah@botandrose.com
|
|
@@ -115,11 +101,11 @@ executables: []
|
|
|
115
101
|
extensions: []
|
|
116
102
|
extra_rdoc_files: []
|
|
117
103
|
files:
|
|
104
|
+
- ".github/workflows/ci.yml"
|
|
118
105
|
- ".gitignore"
|
|
119
106
|
- ".rspec"
|
|
120
107
|
- ".ruby-gemset"
|
|
121
108
|
- ".ruby-version"
|
|
122
|
-
- ".travis.yml"
|
|
123
109
|
- Gemfile
|
|
124
110
|
- LICENSE.txt
|
|
125
111
|
- README.md
|
|
@@ -146,7 +132,7 @@ homepage: https://github.com/botandrose/cat_engine
|
|
|
146
132
|
licenses:
|
|
147
133
|
- MIT
|
|
148
134
|
metadata: {}
|
|
149
|
-
post_install_message:
|
|
135
|
+
post_install_message:
|
|
150
136
|
rdoc_options: []
|
|
151
137
|
require_paths:
|
|
152
138
|
- lib
|
|
@@ -161,9 +147,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
161
147
|
- !ruby/object:Gem::Version
|
|
162
148
|
version: '0'
|
|
163
149
|
requirements: []
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
signing_key:
|
|
150
|
+
rubygems_version: 3.5.11
|
|
151
|
+
signing_key:
|
|
167
152
|
specification_version: 4
|
|
168
153
|
summary: Ruby wrapper around C# Cat Engine
|
|
169
154
|
test_files: []
|
data/.travis.yml
DELETED