oneroster 2.3.18 → 2.3.20
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
- data/.tool-versions +1 -0
- data/Gemfile.lock +32 -23
- data/lib/one_roster/client.rb +14 -2
- data/lib/one_roster/connection.rb +25 -1
- data/lib/one_roster/version.rb +1 -1
- data/lib/one_roster.rb +4 -1
- data/lib/types/class.rb +3 -1
- data/lib/types/classroom.rb +5 -1
- data/lib/types/school.rb +16 -0
- data/one_roster.gemspec +2 -2
- metadata +12 -12
- data/.circleci/config.yml +0 -116
- data/.ruby-version +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac0acbc4043d8a4f9c27923592085c6dfdbcdccf982739a331514ed9dec4469a
|
4
|
+
data.tar.gz: 91d63689995e7b37a0c9814c2ebbacbd42c3d44d4e02b8502e28d8ae21c5d874
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6516b3419a838c610b88324b9c0692241565714326b6b30efe65616c6684fce7db7c6b470bfaba1d56ca3edd2aa061a7053cd7edd3ada5ebd20ef04cd9e5402a
|
7
|
+
data.tar.gz: 83c434b84756bc076b089289f6ae7d1f4c6644c0f9730663f47985b3e493120e5c5ec9ccac703dac6ac562b01f5d68d8e30f7e1ea6b9ca3aeca7e2290f0cffa6
|
data/.tool-versions
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
ruby 2.7.5
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
oneroster (2.3.
|
4
|
+
oneroster (2.3.20)
|
5
5
|
dry-inflector (~> 1.0.0)
|
6
6
|
faraday
|
7
7
|
faraday_middleware
|
@@ -11,11 +11,11 @@ PATH
|
|
11
11
|
GEM
|
12
12
|
remote: https://rubygems.org/
|
13
13
|
specs:
|
14
|
-
ast (2.4.
|
14
|
+
ast (2.4.2)
|
15
15
|
builder (3.2.3)
|
16
16
|
coderay (1.1.2)
|
17
17
|
diff-lcs (1.3)
|
18
|
-
docile (1.
|
18
|
+
docile (1.4.1)
|
19
19
|
dry-inflector (1.0.0)
|
20
20
|
faraday (1.10.3)
|
21
21
|
faraday-em_http (~> 1.0)
|
@@ -43,8 +43,8 @@ GEM
|
|
43
43
|
faraday_middleware (1.2.0)
|
44
44
|
faraday (~> 1.0)
|
45
45
|
hashie (5.0.0)
|
46
|
-
|
47
|
-
|
46
|
+
json (2.9.1)
|
47
|
+
language_server-protocol (3.17.0.4)
|
48
48
|
metaclass (0.0.4)
|
49
49
|
method_source (0.8.2)
|
50
50
|
mocha (1.8.0)
|
@@ -56,18 +56,20 @@ GEM
|
|
56
56
|
version_gem (~> 1.1)
|
57
57
|
oauth-tty (1.0.5)
|
58
58
|
version_gem (~> 1.1, >= 1.1.1)
|
59
|
-
parallel (1.
|
60
|
-
parser (
|
61
|
-
ast (~> 2.4.
|
59
|
+
parallel (1.26.3)
|
60
|
+
parser (3.3.7.0)
|
61
|
+
ast (~> 2.4.1)
|
62
|
+
racc
|
62
63
|
pry (0.10.4)
|
63
64
|
coderay (~> 1.1.0)
|
64
65
|
method_source (~> 0.8.1)
|
65
66
|
slop (~> 3.4)
|
66
67
|
pry-nav (0.2.4)
|
67
68
|
pry (>= 0.9.10, < 0.11.0)
|
68
|
-
|
69
|
-
rainbow (3.
|
69
|
+
racc (1.8.1)
|
70
|
+
rainbow (3.1.1)
|
70
71
|
rake (10.5.0)
|
72
|
+
regexp_parser (2.10.0)
|
71
73
|
rspec (3.8.0)
|
72
74
|
rspec-core (~> 3.8.0)
|
73
75
|
rspec-expectations (~> 3.8.0)
|
@@ -84,27 +86,34 @@ GEM
|
|
84
86
|
rspec_junit_formatter (0.2.2)
|
85
87
|
builder (< 4)
|
86
88
|
rspec-core (>= 2, < 4, != 2.12.0)
|
87
|
-
rubocop (
|
88
|
-
|
89
|
+
rubocop (1.71.0)
|
90
|
+
json (~> 2.3)
|
91
|
+
language_server-protocol (>= 3.17.0)
|
89
92
|
parallel (~> 1.10)
|
90
|
-
parser (>=
|
91
|
-
psych (>= 3.1.0)
|
93
|
+
parser (>= 3.3.0.2)
|
92
94
|
rainbow (>= 2.2.2, < 4.0)
|
95
|
+
regexp_parser (>= 2.9.3, < 3.0)
|
96
|
+
rubocop-ast (>= 1.36.2, < 2.0)
|
93
97
|
ruby-progressbar (~> 1.7)
|
94
|
-
unicode-display_width (>=
|
95
|
-
|
98
|
+
unicode-display_width (>= 2.4.0, < 4.0)
|
99
|
+
rubocop-ast (1.38.0)
|
100
|
+
parser (>= 3.3.1.0)
|
101
|
+
ruby-progressbar (1.13.0)
|
96
102
|
ruby2_keywords (0.0.5)
|
97
103
|
simple_oauth (0.3.1)
|
98
|
-
simplecov (0.
|
104
|
+
simplecov (0.22.0)
|
99
105
|
docile (~> 1.1)
|
100
|
-
|
101
|
-
|
102
|
-
simplecov-html (0.
|
106
|
+
simplecov-html (~> 0.11)
|
107
|
+
simplecov_json_formatter (~> 0.1)
|
108
|
+
simplecov-html (0.13.1)
|
109
|
+
simplecov_json_formatter (0.1.4)
|
103
110
|
slop (3.6.0)
|
104
111
|
snaky_hash (2.0.1)
|
105
112
|
hashie
|
106
113
|
version_gem (~> 1.1, >= 1.1.1)
|
107
|
-
unicode-display_width (1.
|
114
|
+
unicode-display_width (3.1.4)
|
115
|
+
unicode-emoji (~> 4.0, >= 4.0.4)
|
116
|
+
unicode-emoji (4.0.4)
|
108
117
|
version_gem (1.1.3)
|
109
118
|
|
110
119
|
PLATFORMS
|
@@ -119,8 +128,8 @@ DEPENDENCIES
|
|
119
128
|
rake (~> 10.0)
|
120
129
|
rspec (~> 3.0)
|
121
130
|
rspec_junit_formatter
|
122
|
-
rubocop
|
123
|
-
simplecov
|
131
|
+
rubocop (~> 1.53)
|
132
|
+
simplecov (~> 0.22)
|
124
133
|
|
125
134
|
BUNDLED WITH
|
126
135
|
2.1.4
|
data/lib/one_roster/client.rb
CHANGED
@@ -4,7 +4,8 @@ module OneRoster
|
|
4
4
|
class Client
|
5
5
|
attr_accessor :app_id, :app_token, :api_url, :token_url, :roster_app,
|
6
6
|
:app_secret, :logger, :vendor_key,
|
7
|
-
:username_source, :oauth_strategy, :staff_username_source, :token_content_type
|
7
|
+
:username_source, :oauth_strategy, :staff_username_source, :token_content_type,
|
8
|
+
:sentry_client
|
8
9
|
|
9
10
|
attr_reader :authenticated
|
10
11
|
|
@@ -47,10 +48,18 @@ module OneRoster
|
|
47
48
|
records.select { |record| record_uids_set.include?(record.uid) }
|
48
49
|
end
|
49
50
|
|
51
|
+
def schools
|
52
|
+
authenticate
|
53
|
+
|
54
|
+
Paginator.fetch(connection, SCHOOLS_ENDPOINT,
|
55
|
+
:get, Types::School, client: self).force
|
56
|
+
end
|
57
|
+
|
50
58
|
def classrooms(course_codes = [])
|
51
59
|
authenticate
|
52
60
|
|
53
61
|
oneroster_classes = classes
|
62
|
+
fetched_schools = schools
|
54
63
|
|
55
64
|
terms_hash = terms.each_with_object({}) { |term, terms| terms[term.uid] = term }
|
56
65
|
|
@@ -61,6 +70,7 @@ module OneRoster
|
|
61
70
|
next unless course
|
62
71
|
|
63
72
|
term = terms_hash[oneroster_class.term_id&.first]
|
73
|
+
school = fetched_schools.find { |school| school.uid == oneroster_class.school_uid }
|
64
74
|
|
65
75
|
oneroster_classes << Types::Classroom.new(
|
66
76
|
'id' => oneroster_class.uid,
|
@@ -72,7 +82,9 @@ module OneRoster
|
|
72
82
|
'term_name' => term&.name,
|
73
83
|
'term_start_date' => term&.start_date,
|
74
84
|
'term_end_date' => term&.end_date,
|
75
|
-
'term_id' => oneroster_class.term_id
|
85
|
+
'term_id' => oneroster_class.term_id,
|
86
|
+
'school_name' => school&.name,
|
87
|
+
'school_uid' => school&.uid
|
76
88
|
)
|
77
89
|
end
|
78
90
|
end
|
@@ -11,7 +11,22 @@ module OneRoster
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def execute(path, method = :get, params = nil, body = nil, content_type = nil)
|
14
|
-
Response.new(raw_request(path, method, params, body, content_type))
|
14
|
+
response = Response.new(raw_request(path, method, params, body, content_type))
|
15
|
+
|
16
|
+
if [502, 504].include?(response.status)
|
17
|
+
log_to_sentry(
|
18
|
+
'client.app_id' => @client.app_id,
|
19
|
+
'connection.path' => path,
|
20
|
+
'connection.method' => method,
|
21
|
+
'connection.params' => params,
|
22
|
+
'connection.body' => body,
|
23
|
+
'connection.content_type' => content_type,
|
24
|
+
'response.http_status' => response.status,
|
25
|
+
'response.raw_body' => response.raw_body
|
26
|
+
)
|
27
|
+
end
|
28
|
+
|
29
|
+
response
|
15
30
|
end
|
16
31
|
|
17
32
|
def set_auth_headers(token, cookie)
|
@@ -89,5 +104,14 @@ module OneRoster
|
|
89
104
|
connection.basic_auth(@client.app_id, @client.app_secret)
|
90
105
|
connection
|
91
106
|
end
|
107
|
+
|
108
|
+
def log_to_sentry(payload)
|
109
|
+
return unless @client.sentry_client
|
110
|
+
|
111
|
+
@client.sentry_client.capture_message(
|
112
|
+
'Exception in OneRoster::Connection',
|
113
|
+
**{ extra: payload }
|
114
|
+
)
|
115
|
+
end
|
92
116
|
end
|
93
117
|
end
|
data/lib/one_roster/version.rb
CHANGED
data/lib/one_roster.rb
CHANGED
@@ -23,6 +23,7 @@ require 'types/student'
|
|
23
23
|
require 'types/teacher'
|
24
24
|
require 'types/term'
|
25
25
|
require 'types/admin'
|
26
|
+
require 'types/school'
|
26
27
|
|
27
28
|
module OneRoster
|
28
29
|
class DistrictNotFound < StandardError; end
|
@@ -35,6 +36,7 @@ module OneRoster
|
|
35
36
|
CLASSES_ENDPOINT = 'ims/oneroster/v1p1/classes'
|
36
37
|
ENROLLMENTS_ENDPOINT = 'ims/oneroster/v1p1/enrollments'
|
37
38
|
ACADEMIC_SESSIONS_ENDPOINT = 'ims/oneroster/v1p1/academicSessions'
|
39
|
+
SCHOOLS_ENDPOINT = 'ims/oneroster/v1p1/schools'
|
38
40
|
|
39
41
|
RESPONSE_TYPE_MAP = {
|
40
42
|
'users' => 'users',
|
@@ -43,6 +45,7 @@ module OneRoster
|
|
43
45
|
'academicSessions' => 'academicSessions',
|
44
46
|
'courses' => 'courses',
|
45
47
|
'classes' => 'classes',
|
46
|
-
'enrollments' => 'enrollments'
|
48
|
+
'enrollments' => 'enrollments',
|
49
|
+
'schools' => 'orgs'
|
47
50
|
}.freeze
|
48
51
|
end
|
data/lib/types/class.rb
CHANGED
@@ -10,7 +10,8 @@ module OneRoster
|
|
10
10
|
:period,
|
11
11
|
:grades,
|
12
12
|
:subjects,
|
13
|
-
:term_id
|
13
|
+
:term_id,
|
14
|
+
:school_uid
|
14
15
|
|
15
16
|
def initialize(attributes = {}, *)
|
16
17
|
@uid = attributes['sourcedId']
|
@@ -21,6 +22,7 @@ module OneRoster
|
|
21
22
|
@grades = presence(attributes['grades']) || []
|
22
23
|
@subjects = presence(attributes['subjects']) || []
|
23
24
|
@term_id = attributes.dig('terms')&.map { |term| term['sourcedId'] } || []
|
25
|
+
@school_uid = attributes.dig('school', 'sourcedId')
|
24
26
|
@provider = 'oneroster'
|
25
27
|
end
|
26
28
|
|
data/lib/types/classroom.rb
CHANGED
@@ -13,7 +13,9 @@ module OneRoster
|
|
13
13
|
:term_name,
|
14
14
|
:term_start_date,
|
15
15
|
:term_end_date,
|
16
|
-
:term_id
|
16
|
+
:term_id,
|
17
|
+
:school_name,
|
18
|
+
:school_uid
|
17
19
|
|
18
20
|
def initialize(attributes = {})
|
19
21
|
@uid = attributes['id']
|
@@ -26,6 +28,8 @@ module OneRoster
|
|
26
28
|
@term_start_date = attributes['term_start_date']
|
27
29
|
@term_end_date = attributes['term_end_date']
|
28
30
|
@term_id = attributes['term_id']
|
31
|
+
@school_name = attributes['school_name']
|
32
|
+
@school_uid = attributes['school_uid']
|
29
33
|
@provider = 'oneroster'
|
30
34
|
end
|
31
35
|
end
|
data/lib/types/school.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OneRoster
|
4
|
+
module Types
|
5
|
+
class School
|
6
|
+
attr_reader :uid, :name, :number
|
7
|
+
|
8
|
+
def initialize(attributes = {}, *)
|
9
|
+
@uid = attributes['sourcedId']
|
10
|
+
@name = attributes['name']
|
11
|
+
@number = attributes['identifier']
|
12
|
+
@provider = 'oneroster'
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/one_roster.gemspec
CHANGED
@@ -45,6 +45,6 @@ Gem::Specification.new do |spec|
|
|
45
45
|
spec.add_development_dependency 'rake', '~> 10.0'
|
46
46
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
47
47
|
spec.add_development_dependency 'rspec_junit_formatter'
|
48
|
-
spec.add_development_dependency 'rubocop'
|
49
|
-
spec.add_development_dependency 'simplecov'
|
48
|
+
spec.add_development_dependency 'rubocop', '~>1.53'
|
49
|
+
spec.add_development_dependency 'simplecov', '~>0.22'
|
50
50
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oneroster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.20
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Julius
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-01-
|
11
|
+
date: 2025-01-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -182,30 +182,30 @@ dependencies:
|
|
182
182
|
name: rubocop
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
184
184
|
requirements:
|
185
|
-
- - "
|
185
|
+
- - "~>"
|
186
186
|
- !ruby/object:Gem::Version
|
187
|
-
version: '
|
187
|
+
version: '1.53'
|
188
188
|
type: :development
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
|
-
- - "
|
192
|
+
- - "~>"
|
193
193
|
- !ruby/object:Gem::Version
|
194
|
-
version: '
|
194
|
+
version: '1.53'
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
196
|
name: simplecov
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
198
198
|
requirements:
|
199
|
-
- - "
|
199
|
+
- - "~>"
|
200
200
|
- !ruby/object:Gem::Version
|
201
|
-
version: '0'
|
201
|
+
version: '0.22'
|
202
202
|
type: :development
|
203
203
|
prerelease: false
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
205
205
|
requirements:
|
206
|
-
- - "
|
206
|
+
- - "~>"
|
207
207
|
- !ruby/object:Gem::Version
|
208
|
-
version: '0'
|
208
|
+
version: '0.22'
|
209
209
|
description: Wrapper for the OneRoster API.
|
210
210
|
email:
|
211
211
|
- robertmjulius@gmail.com
|
@@ -213,13 +213,12 @@ executables: []
|
|
213
213
|
extensions: []
|
214
214
|
extra_rdoc_files: []
|
215
215
|
files:
|
216
|
-
- ".circleci/config.yml"
|
217
216
|
- ".codeclimate.yml"
|
218
217
|
- ".gitignore"
|
219
218
|
- ".rspec"
|
220
219
|
- ".rubocop.yml"
|
221
220
|
- ".ruby-style.yml"
|
222
|
-
- ".
|
221
|
+
- ".tool-versions"
|
223
222
|
- ".travis.yml"
|
224
223
|
- Gemfile
|
225
224
|
- Gemfile.lock
|
@@ -242,6 +241,7 @@ files:
|
|
242
241
|
- lib/types/classroom.rb
|
243
242
|
- lib/types/course.rb
|
244
243
|
- lib/types/enrollment.rb
|
244
|
+
- lib/types/school.rb
|
245
245
|
- lib/types/student.rb
|
246
246
|
- lib/types/teacher.rb
|
247
247
|
- lib/types/term.rb
|
data/.circleci/config.yml
DELETED
@@ -1,116 +0,0 @@
|
|
1
|
-
version: 2
|
2
|
-
defaults: &defaults
|
3
|
-
docker:
|
4
|
-
- image: circleci/ruby:2.4.1-node-browsers
|
5
|
-
working_directory: ~/repo
|
6
|
-
restore_ruby_cache: &restore_ruby_cache
|
7
|
-
restore_cache:
|
8
|
-
keys:
|
9
|
-
- v2-dependencies-{{ checksum "Gemfile.lock" }}
|
10
|
-
- v2-dependencies-
|
11
|
-
setup_rubygems: &setup_rubygems
|
12
|
-
run:
|
13
|
-
name: Add RubyGems API key
|
14
|
-
command: |
|
15
|
-
mkdir -p ~/.gem
|
16
|
-
echo -e "---\r\n:rubygems_api_key: $RUBYGEMS_API_KEY" > ~/.gem/credentials
|
17
|
-
chmod 0600 ~/.gem/credentials
|
18
|
-
|
19
|
-
install_dependencies: &install_dependencies
|
20
|
-
run:
|
21
|
-
name: Install Dependencies
|
22
|
-
command: |
|
23
|
-
echo 'export BUNDLER_VERSION=$(cat Gemfile.lock | tail -1 | tr -d " ")' >> $BASH_ENV
|
24
|
-
source $BASH_ENV
|
25
|
-
gem install bundler
|
26
|
-
bundle install --jobs=4 --retry=3 --path vendor/bundle
|
27
|
-
|
28
|
-
save_ruby_cache: &save_ruby_cache
|
29
|
-
save_cache:
|
30
|
-
paths:
|
31
|
-
- ./vendor/bundle
|
32
|
-
key: v1-dependencies-{{ checksum "Gemfile.lock" }}
|
33
|
-
download_cc_reporter: &download_cc_reporter
|
34
|
-
run:
|
35
|
-
name: Download Code Climate Test Reporter
|
36
|
-
command: |
|
37
|
-
mkdir -p tmp/
|
38
|
-
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./tmp/cc-test-reporter
|
39
|
-
chmod +x ./tmp/cc-test-reporter
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
persist: &persist
|
45
|
-
persist_to_workspace:
|
46
|
-
root: tmp
|
47
|
-
paths:
|
48
|
-
- cc-test-reporter
|
49
|
-
run_rspec_tests: &run_rspec_tests
|
50
|
-
run:
|
51
|
-
name: Run RSpec Tests
|
52
|
-
command: |
|
53
|
-
mkdir /tmp/test-results
|
54
|
-
./tmp/cc-test-reporter before-build
|
55
|
-
TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | \
|
56
|
-
circleci tests split --split-by=timings)"
|
57
|
-
|
58
|
-
bundle exec rspec --format progress \
|
59
|
-
--format RspecJunitFormatter \
|
60
|
-
--out /tmp/test-results/rspec.xml \
|
61
|
-
--format progress \
|
62
|
-
$TEST_FILES
|
63
|
-
./tmp/cc-test-reporter format-coverage -t simplecov -o "tmp/codeclimate.json"
|
64
|
-
|
65
|
-
upload_coverage: &upload_coverage
|
66
|
-
run:
|
67
|
-
name: Upload Coverage
|
68
|
-
command: |
|
69
|
-
./tmp/cc-test-reporter upload-coverage -i tmp/codeclimate.json
|
70
|
-
|
71
|
-
release_rubygem: &release_rubygem
|
72
|
-
run:
|
73
|
-
name: Release new version to RubyGems
|
74
|
-
command: |
|
75
|
-
bundle exec rake release
|
76
|
-
|
77
|
-
jobs:
|
78
|
-
rspec-tests:
|
79
|
-
<<: *defaults
|
80
|
-
steps:
|
81
|
-
- checkout
|
82
|
-
- *restore_ruby_cache
|
83
|
-
- *install_dependencies
|
84
|
-
- *save_ruby_cache
|
85
|
-
- *download_cc_reporter
|
86
|
-
- *persist
|
87
|
-
- *run_rspec_tests
|
88
|
-
- *upload_coverage
|
89
|
-
- store_test_results:
|
90
|
-
path: /tmp/test-results
|
91
|
-
- store_artifacts:
|
92
|
-
path: /tmp/test-results
|
93
|
-
destination: test-results
|
94
|
-
|
95
|
-
release:
|
96
|
-
<<: *defaults
|
97
|
-
steps:
|
98
|
-
- checkout
|
99
|
-
- *restore_ruby_cache
|
100
|
-
- *setup_rubygems
|
101
|
-
- *install_dependencies
|
102
|
-
- *save_ruby_cache
|
103
|
-
- *release_rubygem
|
104
|
-
|
105
|
-
workflows:
|
106
|
-
version: 2
|
107
|
-
commit:
|
108
|
-
jobs:
|
109
|
-
- rspec-tests
|
110
|
-
- release:
|
111
|
-
requires:
|
112
|
-
- rspec-tests
|
113
|
-
filters:
|
114
|
-
branches:
|
115
|
-
only:
|
116
|
-
- master
|
data/.ruby-version
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
2.4.1
|