meibo 0.27.0 → 0.28.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 +4 -4
- data/.envrc +4 -0
- data/.rubocop.yml +14 -2
- data/.rubocop_todo.yml +0 -7
- data/Gemfile.lock +157 -56
- data/README.md +14 -3
- data/flake.lock +188 -0
- data/flake.nix +55 -0
- data/gemset.nix +658 -0
- data/lib/meibo/academic_session.rb +21 -21
- data/lib/meibo/classroom.rb +47 -34
- data/lib/meibo/classroom_set.rb +5 -1
- data/lib/meibo/converter.rb +16 -18
- data/lib/meibo/course.rb +34 -21
- data/lib/meibo/course_set.rb +5 -1
- data/lib/meibo/data_model.rb +46 -36
- data/lib/meibo/data_set.rb +8 -10
- data/lib/meibo/demographic.rb +36 -36
- data/lib/meibo/enrollment.rb +22 -22
- data/lib/meibo/enrollment_set.rb +9 -2
- data/lib/meibo/eportal/v3/classroom.rb +11 -0
- data/lib/meibo/eportal/v3/course.rb +11 -0
- data/lib/meibo/eportal/v3/enrollment.rb +11 -0
- data/lib/meibo/eportal/v3/organization.rb +11 -0
- data/lib/meibo/eportal/v3/user.rb +16 -0
- data/lib/meibo/eportal/v3/user_profile.rb +11 -0
- data/lib/meibo/eportal/v3.rb +30 -0
- data/lib/meibo/eportal/v4/user.rb +37 -0
- data/lib/meibo/eportal/v4.rb +16 -0
- data/lib/meibo/eportal.rb +6 -0
- data/lib/meibo/errors.rb +27 -5
- data/lib/meibo/factory_bot/academic_session.rb +1 -1
- data/lib/meibo/factory_bot/classroom.rb +1 -1
- data/lib/meibo/factory_bot/course.rb +1 -1
- data/lib/meibo/factory_bot/demographic.rb +1 -1
- data/lib/meibo/factory_bot/enrollment.rb +1 -1
- data/lib/meibo/factory_bot/manifest.rb +0 -21
- data/lib/meibo/factory_bot/organization.rb +1 -1
- data/lib/meibo/factory_bot/role.rb +2 -4
- data/lib/meibo/factory_bot/user.rb +7 -7
- data/lib/meibo/factory_bot/user_profile.rb +1 -1
- data/lib/meibo/japan_k12_schools_profile/v1/enrollment.rb +16 -0
- data/lib/meibo/japan_k12_schools_profile/v1.rb +20 -0
- data/lib/meibo/japan_k12_schools_profile.rb +6 -0
- data/lib/meibo/japan_profile/v1_1/academic_session.rb +29 -0
- data/lib/meibo/japan_profile/v1_1/classroom.rb +27 -0
- data/lib/meibo/japan_profile/v1_1/course.rb +16 -0
- data/lib/meibo/japan_profile/v1_1/demographic.rb +11 -0
- data/lib/meibo/japan_profile/v1_1/enrollment.rb +47 -0
- data/lib/meibo/japan_profile/v1_1/organization.rb +16 -0
- data/lib/meibo/japan_profile/v1_1/organization_set.rb +23 -0
- data/lib/meibo/japan_profile/v1_1/user.rb +39 -0
- data/lib/meibo/japan_profile/v1_1/user_set.rb +17 -0
- data/lib/meibo/japan_profile/v1_1.rb +35 -0
- data/lib/meibo/japan_profile/v1_1_1.rb +9 -0
- data/lib/meibo/japan_profile/v1_2/user.rb +42 -0
- data/lib/meibo/japan_profile/v1_2.rb +20 -0
- data/lib/meibo/japan_profile.rb +6 -0
- data/lib/meibo/manifest.rb +41 -46
- data/lib/meibo/oneroster/v1_2/user.rb +43 -0
- data/lib/meibo/oneroster/v1_2.rb +62 -0
- data/lib/meibo/oneroster/v1_2_1.rb +22 -0
- data/lib/meibo/oneroster.rb +6 -0
- data/lib/meibo/organization.rb +17 -17
- data/lib/meibo/processing_mode.rb +53 -0
- data/lib/meibo/profile.rb +8 -4
- data/lib/meibo/profiles.rb +12 -120
- data/lib/meibo/pse_interoperability_standard/v5.rb +9 -0
- data/lib/meibo/pse_interoperability_standard/v6/enrollment.rb +11 -0
- data/lib/meibo/pse_interoperability_standard/v6.rb +18 -0
- data/lib/meibo/pse_interoperability_standard.rb +6 -0
- data/lib/meibo/reader.rb +24 -36
- data/lib/meibo/role.rb +24 -24
- data/lib/meibo/roster.rb +46 -47
- data/lib/meibo/user.rb +35 -35
- data/lib/meibo/user_profile.rb +20 -20
- data/lib/meibo/user_set.rb +1 -1
- data/lib/meibo/version.rb +1 -1
- data/lib/meibo.rb +10 -2
- data/meibo.gemspec +1 -1
- metadata +45 -28
- data/lib/meibo/eportal_v3/classroom.rb +0 -15
- data/lib/meibo/eportal_v3/course.rb +0 -15
- data/lib/meibo/eportal_v3/enrollment.rb +0 -15
- data/lib/meibo/eportal_v3/organization.rb +0 -15
- data/lib/meibo/eportal_v3/user.rb +0 -16
- data/lib/meibo/eportal_v3/user_profile.rb +0 -15
- data/lib/meibo/japan_profile/academic_session.rb +0 -29
- data/lib/meibo/japan_profile/classroom.rb +0 -24
- data/lib/meibo/japan_profile/course.rb +0 -18
- data/lib/meibo/japan_profile/demographic.rb +0 -15
- data/lib/meibo/japan_profile/enrollment.rb +0 -40
- data/lib/meibo/japan_profile/organization.rb +0 -20
- data/lib/meibo/japan_profile/organization_set.rb +0 -17
- data/lib/meibo/japan_profile/role_jp_m0.rb +0 -26
- data/lib/meibo/japan_profile/user.rb +0 -45
- data/lib/meibo/japan_profile/user_m0.rb +0 -12
- data/lib/meibo/japan_profile/user_set.rb +0 -14
- data/lib/meibo/manifest/processing_mode.rb +0 -41
- data/lib/meibo/user_m0.rb +0 -47
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 458ca8ce412235fd3394521bef920e178d2fb715a6bfc61ab144a448cebee721
|
|
4
|
+
data.tar.gz: 9417c7471baabd3023ba39658afae0cc756a1788d6eecbd4a267c6339f83e141
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5fd9fc3a65033c14e2a1eed2a4320f2e60a875fe9d027fcf4537edb960bd811463912782b1134bec26d726286b1e7f08038430997af08050e6b3255cb2f1dfc6
|
|
7
|
+
data.tar.gz: 0bcd393fff7a2f19e767e5e968fec7fb1c460c47c3f37979c777bb31410fb46fabf72a1e365ed3a12e762aff574f1176cd57828ee6d9ecbe3e75b55a880202b8
|
data/.envrc
ADDED
data/.rubocop.yml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
plugins:
|
|
2
2
|
- rubocop-rake
|
|
3
3
|
- rubocop-rspec
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ inherit_from: .rubocop_todo.yml
|
|
|
6
6
|
|
|
7
7
|
AllCops:
|
|
8
8
|
NewCops: enable
|
|
9
|
-
TargetRubyVersion:
|
|
9
|
+
TargetRubyVersion: 3.4
|
|
10
10
|
|
|
11
11
|
Style/StringLiterals:
|
|
12
12
|
Enabled: true
|
|
@@ -15,3 +15,15 @@ Style/StringLiterals:
|
|
|
15
15
|
Style/StringLiteralsInInterpolation:
|
|
16
16
|
Enabled: true
|
|
17
17
|
EnforcedStyle: double_quotes
|
|
18
|
+
|
|
19
|
+
Naming/MethodParameterName:
|
|
20
|
+
AllowedNames:
|
|
21
|
+
- kw
|
|
22
|
+
- io
|
|
23
|
+
|
|
24
|
+
Naming/ClassAndModuleCamelCase:
|
|
25
|
+
AllowedNames:
|
|
26
|
+
- V1_1_1
|
|
27
|
+
- V1_1
|
|
28
|
+
- V1_2_1
|
|
29
|
+
- V1_2
|
data/.rubocop_todo.yml
CHANGED
|
@@ -83,13 +83,6 @@ Naming/MethodParameterName:
|
|
|
83
83
|
RSpec/ExampleLength:
|
|
84
84
|
Max: 213
|
|
85
85
|
|
|
86
|
-
# Offense count: 1
|
|
87
|
-
# Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
|
|
88
|
-
# Include: **/*_spec*rb*, **/spec/**/*
|
|
89
|
-
RSpec/FilePath:
|
|
90
|
-
Exclude:
|
|
91
|
-
- 'spec/meibo/japan_profile_user_set_spec.rb'
|
|
92
|
-
|
|
93
86
|
# Offense count: 2
|
|
94
87
|
RSpec/MultipleExpectations:
|
|
95
88
|
Max: 9
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
meibo (0.
|
|
4
|
+
meibo (0.28.0)
|
|
5
5
|
csv (>= 3.1.4)
|
|
6
6
|
rubyzip
|
|
7
7
|
zeitwerk
|
|
@@ -9,75 +9,120 @@ PATH
|
|
|
9
9
|
GEM
|
|
10
10
|
remote: https://rubygems.org/
|
|
11
11
|
specs:
|
|
12
|
-
activesupport (
|
|
13
|
-
|
|
12
|
+
activesupport (8.1.3)
|
|
13
|
+
base64
|
|
14
|
+
bigdecimal
|
|
15
|
+
concurrent-ruby (~> 1.0, >= 1.3.1)
|
|
16
|
+
connection_pool (>= 2.2.5)
|
|
17
|
+
drb
|
|
14
18
|
i18n (>= 1.6, < 2)
|
|
19
|
+
json
|
|
20
|
+
logger (>= 1.4.2)
|
|
15
21
|
minitest (>= 5.1)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
securerandom (>= 0.3)
|
|
23
|
+
tzinfo (~> 2.0, >= 2.0.5)
|
|
24
|
+
uri (>= 0.13.1)
|
|
25
|
+
ast (2.4.3)
|
|
26
|
+
base64 (0.3.0)
|
|
27
|
+
bigdecimal (4.1.2)
|
|
28
|
+
concurrent-ruby (1.3.6)
|
|
29
|
+
connection_pool (3.0.2)
|
|
30
|
+
csv (3.3.5)
|
|
31
|
+
date (3.5.1)
|
|
32
|
+
debug (1.11.1)
|
|
33
|
+
irb (~> 1.10)
|
|
34
|
+
reline (>= 0.3.8)
|
|
35
|
+
diff-lcs (1.6.2)
|
|
36
|
+
drb (2.2.3)
|
|
37
|
+
erb (6.0.4)
|
|
38
|
+
factory_bot (6.6.0)
|
|
39
|
+
activesupport (>= 6.1.0)
|
|
40
|
+
i18n (1.14.8)
|
|
27
41
|
concurrent-ruby (~> 1.0)
|
|
28
|
-
io-console (0.
|
|
29
|
-
irb (1.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
42
|
+
io-console (0.8.2)
|
|
43
|
+
irb (1.18.0)
|
|
44
|
+
pp (>= 0.6.0)
|
|
45
|
+
prism (>= 1.3.0)
|
|
46
|
+
rdoc (>= 4.0.0)
|
|
47
|
+
reline (>= 0.4.2)
|
|
48
|
+
json (2.19.8)
|
|
49
|
+
language_server-protocol (3.17.0.5)
|
|
50
|
+
lint_roller (1.1.0)
|
|
51
|
+
logger (1.7.0)
|
|
52
|
+
minitest (6.0.6)
|
|
53
|
+
drb (~> 2.0)
|
|
54
|
+
prism (~> 1.5)
|
|
55
|
+
parallel (2.1.0)
|
|
56
|
+
parser (3.3.11.1)
|
|
35
57
|
ast (~> 2.4.1)
|
|
58
|
+
racc
|
|
59
|
+
pp (0.6.3)
|
|
60
|
+
prettyprint
|
|
61
|
+
prettyprint (0.2.0)
|
|
62
|
+
prism (1.9.0)
|
|
63
|
+
psych (5.4.0)
|
|
64
|
+
date
|
|
65
|
+
stringio
|
|
66
|
+
racc (1.8.1)
|
|
36
67
|
rainbow (3.1.1)
|
|
37
|
-
rake (13.
|
|
38
|
-
|
|
39
|
-
|
|
68
|
+
rake (13.4.2)
|
|
69
|
+
rdoc (7.2.0)
|
|
70
|
+
erb
|
|
71
|
+
psych (>= 4.0.0)
|
|
72
|
+
tsort
|
|
73
|
+
regexp_parser (2.12.0)
|
|
74
|
+
reline (0.6.3)
|
|
40
75
|
io-console (~> 0.5)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
rspec-
|
|
44
|
-
rspec-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
rspec-expectations (3.11.1)
|
|
76
|
+
rspec (3.13.2)
|
|
77
|
+
rspec-core (~> 3.13.0)
|
|
78
|
+
rspec-expectations (~> 3.13.0)
|
|
79
|
+
rspec-mocks (~> 3.13.0)
|
|
80
|
+
rspec-core (3.13.6)
|
|
81
|
+
rspec-support (~> 3.13.0)
|
|
82
|
+
rspec-expectations (3.13.5)
|
|
49
83
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
50
|
-
rspec-support (~> 3.
|
|
51
|
-
rspec-mocks (3.
|
|
84
|
+
rspec-support (~> 3.13.0)
|
|
85
|
+
rspec-mocks (3.13.8)
|
|
52
86
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
53
|
-
rspec-support (~> 3.
|
|
54
|
-
rspec-support (3.
|
|
55
|
-
rubocop (1.
|
|
87
|
+
rspec-support (~> 3.13.0)
|
|
88
|
+
rspec-support (3.13.7)
|
|
89
|
+
rubocop (1.87.0)
|
|
56
90
|
json (~> 2.3)
|
|
57
|
-
|
|
58
|
-
|
|
91
|
+
language_server-protocol (~> 3.17.0.2)
|
|
92
|
+
lint_roller (~> 1.1.0)
|
|
93
|
+
parallel (>= 1.10)
|
|
94
|
+
parser (>= 3.3.0.2)
|
|
59
95
|
rainbow (>= 2.2.2, < 4.0)
|
|
60
|
-
regexp_parser (>=
|
|
61
|
-
|
|
62
|
-
rubocop-ast (>= 1.20.1, < 2.0)
|
|
96
|
+
regexp_parser (>= 2.9.3, < 3.0)
|
|
97
|
+
rubocop-ast (>= 1.49.0, < 2.0)
|
|
63
98
|
ruby-progressbar (~> 1.7)
|
|
64
|
-
unicode-display_width (>=
|
|
65
|
-
rubocop-ast (1.
|
|
66
|
-
parser (>= 3.
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
rubocop (
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
99
|
+
unicode-display_width (>= 2.4.0, < 4.0)
|
|
100
|
+
rubocop-ast (1.49.1)
|
|
101
|
+
parser (>= 3.3.7.2)
|
|
102
|
+
prism (~> 1.7)
|
|
103
|
+
rubocop-rake (0.7.1)
|
|
104
|
+
lint_roller (~> 1.1)
|
|
105
|
+
rubocop (>= 1.72.1)
|
|
106
|
+
rubocop-rspec (3.10.2)
|
|
107
|
+
lint_roller (~> 1.1)
|
|
108
|
+
regexp_parser (>= 2.0)
|
|
109
|
+
rubocop (~> 1.86, >= 1.86.2)
|
|
110
|
+
ruby-progressbar (1.13.0)
|
|
111
|
+
rubyzip (3.3.1)
|
|
112
|
+
securerandom (0.4.1)
|
|
113
|
+
stringio (3.2.0)
|
|
114
|
+
tsort (0.2.0)
|
|
115
|
+
tzinfo (2.0.6)
|
|
74
116
|
concurrent-ruby (~> 1.0)
|
|
75
|
-
unicode-display_width (2.
|
|
76
|
-
|
|
117
|
+
unicode-display_width (3.2.0)
|
|
118
|
+
unicode-emoji (~> 4.1)
|
|
119
|
+
unicode-emoji (4.2.0)
|
|
120
|
+
uri (1.1.1)
|
|
121
|
+
zeitwerk (2.8.2)
|
|
77
122
|
|
|
78
123
|
PLATFORMS
|
|
124
|
+
aarch64-linux
|
|
79
125
|
ruby
|
|
80
|
-
x86_64-linux
|
|
81
126
|
|
|
82
127
|
DEPENDENCIES
|
|
83
128
|
debug
|
|
@@ -89,5 +134,61 @@ DEPENDENCIES
|
|
|
89
134
|
rubocop-rake
|
|
90
135
|
rubocop-rspec
|
|
91
136
|
|
|
137
|
+
CHECKSUMS
|
|
138
|
+
activesupport (8.1.3) sha256=21a5e0dfbd4c3ddd9e1317ec6a4d782fa226e7867dc70b0743acda81a1dca20e
|
|
139
|
+
ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
|
|
140
|
+
base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
|
|
141
|
+
bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
|
|
142
|
+
bundler (4.0.12) sha256=7f8b757d28dfb636e7b24fba2344ac6dd13b5b24f4b46d62573d483f211825ac
|
|
143
|
+
concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab
|
|
144
|
+
connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a
|
|
145
|
+
csv (3.3.5) sha256=6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f
|
|
146
|
+
date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0
|
|
147
|
+
debug (1.11.1) sha256=2e0b0ac6119f2207a6f8ac7d4a73ca8eb4e440f64da0a3136c30343146e952b6
|
|
148
|
+
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
|
|
149
|
+
drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
|
|
150
|
+
erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9
|
|
151
|
+
factory_bot (6.6.0) sha256=1fc1b3b5620ec980a6a27aec1b6ec8c250ca82962e970e8a40f93e8d388d4b89
|
|
152
|
+
i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5
|
|
153
|
+
io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc
|
|
154
|
+
irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
|
|
155
|
+
json (2.19.8) sha256=6354310fd76ef69b87d5bd1f38b40d730613baf90b6803d2d0a48f618d32dfaa
|
|
156
|
+
language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
|
|
157
|
+
lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
|
|
158
|
+
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
|
|
159
|
+
meibo (0.28.0)
|
|
160
|
+
minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1
|
|
161
|
+
parallel (2.1.0) sha256=b35258865c2e31134c5ecb708beaaf6772adf9d5efae28e93e99260877b09356
|
|
162
|
+
parser (3.3.11.1) sha256=d17ace7aabe3e72c3cc94043714be27cc6f852f104d81aa284c2281aecc65d54
|
|
163
|
+
pp (0.6.3) sha256=2951d514450b93ccfeb1df7d021cae0da16e0a7f95ee1e2273719669d0ab9df6
|
|
164
|
+
prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
|
|
165
|
+
prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
|
|
166
|
+
psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7
|
|
167
|
+
racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
|
|
168
|
+
rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
|
|
169
|
+
rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701
|
|
170
|
+
rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192
|
|
171
|
+
regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb
|
|
172
|
+
reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835
|
|
173
|
+
rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
|
|
174
|
+
rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
|
|
175
|
+
rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836
|
|
176
|
+
rspec-mocks (3.13.8) sha256=086ad3d3d17533f4237643de0b5c42f04b66348c28bf6b9c2d3f4a3b01af1d47
|
|
177
|
+
rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
|
|
178
|
+
rubocop (1.87.0) sha256=b9d9ddf55116a513f8ef2c7ae660662d8b49301f118d3f0df61865b33a5c188d
|
|
179
|
+
rubocop-ast (1.49.1) sha256=4412f3ee70f6fe4546cc489548e0f6fcf76cafcfa80fa03af67098ffed755035
|
|
180
|
+
rubocop-rake (0.7.1) sha256=3797f2b6810c3e9df7376c26d5f44f3475eda59eb1adc38e6f62ecf027cbae4d
|
|
181
|
+
rubocop-rspec (3.10.2) sha256=0b3e2ecc592cd10ecbf0095bb58d1e357905276e069643523cc19eb7495f65e2
|
|
182
|
+
ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
|
|
183
|
+
rubyzip (3.3.1) sha256=2ed92112c7c43ba2b2527f35e6d99d9c2c99270b640aad5227516436481b1e4e
|
|
184
|
+
securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
|
|
185
|
+
stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1
|
|
186
|
+
tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
|
|
187
|
+
tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
|
|
188
|
+
unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42
|
|
189
|
+
unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
|
|
190
|
+
uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
|
|
191
|
+
zeitwerk (2.8.2) sha256=7212a61311083c604184b1ea2574b9aa05cd14f855a0841c06985cabe9181d12
|
|
192
|
+
|
|
92
193
|
BUNDLED WITH
|
|
93
|
-
|
|
194
|
+
4.0.12
|
data/README.md
CHANGED
|
@@ -20,7 +20,18 @@ Or install it yourself as:
|
|
|
20
20
|
|
|
21
21
|
## Usage
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
```rb
|
|
24
|
+
# First, choose OneRoster profile
|
|
25
|
+
Meibo.default_profile = Meibo::Profiles["学習eポータル標準モデル Ver. 3.00"]
|
|
26
|
+
|
|
27
|
+
# Then open OneRoster file
|
|
28
|
+
file = File.open('oneroster.zip')
|
|
29
|
+
Meibo::Roster.from_file(file) do |roster|
|
|
30
|
+
roster.users.each do |user|
|
|
31
|
+
import_user_to_your_system(user)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
```
|
|
24
35
|
|
|
25
36
|
## Development
|
|
26
37
|
|
|
@@ -30,7 +41,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
|
30
41
|
|
|
31
42
|
## Contributing
|
|
32
43
|
|
|
33
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
|
44
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/hanachin/meibo. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/hanachin/meibo/blob/main/CODE_OF_CONDUCT.md).
|
|
34
45
|
|
|
35
46
|
## License
|
|
36
47
|
|
|
@@ -38,4 +49,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
|
|
|
38
49
|
|
|
39
50
|
## Code of Conduct
|
|
40
51
|
|
|
41
|
-
Everyone interacting in the Meibo project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/
|
|
52
|
+
Everyone interacting in the Meibo project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/hanachin/meibo/blob/main/CODE_OF_CONDUCT.md).
|
data/flake.lock
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
{
|
|
2
|
+
"nodes": {
|
|
3
|
+
"bundix": {
|
|
4
|
+
"inputs": {
|
|
5
|
+
"nixpkgs": [
|
|
6
|
+
"nixpkgs"
|
|
7
|
+
]
|
|
8
|
+
},
|
|
9
|
+
"locked": {
|
|
10
|
+
"lastModified": 1762235257,
|
|
11
|
+
"narHash": "sha256-QyXFgaXQETr9BmwUbWM/2EtF+my6Arpt71xItZy3NL8=",
|
|
12
|
+
"owner": "inscapist",
|
|
13
|
+
"repo": "bundix",
|
|
14
|
+
"rev": "2233b24084316b4de1d55321483554f457a09cfc",
|
|
15
|
+
"type": "github"
|
|
16
|
+
},
|
|
17
|
+
"original": {
|
|
18
|
+
"owner": "inscapist",
|
|
19
|
+
"ref": "main",
|
|
20
|
+
"repo": "bundix",
|
|
21
|
+
"type": "github"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"flake-compat": {
|
|
25
|
+
"flake": false,
|
|
26
|
+
"locked": {
|
|
27
|
+
"lastModified": 1747046372,
|
|
28
|
+
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
|
29
|
+
"owner": "edolstra",
|
|
30
|
+
"repo": "flake-compat",
|
|
31
|
+
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
|
32
|
+
"type": "github"
|
|
33
|
+
},
|
|
34
|
+
"original": {
|
|
35
|
+
"owner": "edolstra",
|
|
36
|
+
"repo": "flake-compat",
|
|
37
|
+
"type": "github"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"flake-utils": {
|
|
41
|
+
"inputs": {
|
|
42
|
+
"systems": "systems"
|
|
43
|
+
},
|
|
44
|
+
"locked": {
|
|
45
|
+
"lastModified": 1731533236,
|
|
46
|
+
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
47
|
+
"owner": "numtide",
|
|
48
|
+
"repo": "flake-utils",
|
|
49
|
+
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
50
|
+
"type": "github"
|
|
51
|
+
},
|
|
52
|
+
"original": {
|
|
53
|
+
"owner": "numtide",
|
|
54
|
+
"repo": "flake-utils",
|
|
55
|
+
"type": "github"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"flake-utils_2": {
|
|
59
|
+
"inputs": {
|
|
60
|
+
"systems": "systems_2"
|
|
61
|
+
},
|
|
62
|
+
"locked": {
|
|
63
|
+
"lastModified": 1731533236,
|
|
64
|
+
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
65
|
+
"owner": "numtide",
|
|
66
|
+
"repo": "flake-utils",
|
|
67
|
+
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
68
|
+
"type": "github"
|
|
69
|
+
},
|
|
70
|
+
"original": {
|
|
71
|
+
"owner": "numtide",
|
|
72
|
+
"repo": "flake-utils",
|
|
73
|
+
"type": "github"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"nixpkgs": {
|
|
77
|
+
"locked": {
|
|
78
|
+
"lastModified": 1780243769,
|
|
79
|
+
"narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=",
|
|
80
|
+
"owner": "NixOS",
|
|
81
|
+
"repo": "nixpkgs",
|
|
82
|
+
"rev": "331800de5053fcebacf6813adb5db9c9dca22a0c",
|
|
83
|
+
"type": "github"
|
|
84
|
+
},
|
|
85
|
+
"original": {
|
|
86
|
+
"owner": "NixOS",
|
|
87
|
+
"ref": "nixos-unstable",
|
|
88
|
+
"repo": "nixpkgs",
|
|
89
|
+
"type": "github"
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"nixpkgs-ruby": {
|
|
93
|
+
"inputs": {
|
|
94
|
+
"flake-compat": "flake-compat",
|
|
95
|
+
"flake-utils": "flake-utils_2",
|
|
96
|
+
"nixpkgs": [
|
|
97
|
+
"nixpkgs"
|
|
98
|
+
]
|
|
99
|
+
},
|
|
100
|
+
"locked": {
|
|
101
|
+
"lastModified": 1779267859,
|
|
102
|
+
"narHash": "sha256-0WVw5bxFhrqIerTuVnXC5weXEWLda2eehb+ArZFRRJY=",
|
|
103
|
+
"owner": "bobvanderlinden",
|
|
104
|
+
"repo": "nixpkgs-ruby",
|
|
105
|
+
"rev": "f6e23dc8dd65bfbd384009c4fb364e88306f6ebb",
|
|
106
|
+
"type": "github"
|
|
107
|
+
},
|
|
108
|
+
"original": {
|
|
109
|
+
"owner": "bobvanderlinden",
|
|
110
|
+
"repo": "nixpkgs-ruby",
|
|
111
|
+
"type": "github"
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"nixpkgs_2": {
|
|
115
|
+
"locked": {
|
|
116
|
+
"lastModified": 1678875422,
|
|
117
|
+
"narHash": "sha256-T3o6NcQPwXjxJMn2shz86Chch4ljXgZn746c2caGxd8=",
|
|
118
|
+
"owner": "NixOS",
|
|
119
|
+
"repo": "nixpkgs",
|
|
120
|
+
"rev": "126f49a01de5b7e35a43fd43f891ecf6d3a51459",
|
|
121
|
+
"type": "github"
|
|
122
|
+
},
|
|
123
|
+
"original": {
|
|
124
|
+
"id": "nixpkgs",
|
|
125
|
+
"type": "indirect"
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"root": {
|
|
129
|
+
"inputs": {
|
|
130
|
+
"bundix": "bundix",
|
|
131
|
+
"flake-utils": "flake-utils",
|
|
132
|
+
"nixpkgs": "nixpkgs",
|
|
133
|
+
"nixpkgs-ruby": "nixpkgs-ruby",
|
|
134
|
+
"ruby-nix": "ruby-nix"
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
"ruby-nix": {
|
|
138
|
+
"inputs": {
|
|
139
|
+
"nixpkgs": "nixpkgs_2"
|
|
140
|
+
},
|
|
141
|
+
"locked": {
|
|
142
|
+
"lastModified": 1755059052,
|
|
143
|
+
"narHash": "sha256-yUJmmNIw11ZEIAFogqcqNomk4YV3F/zjwI1f7bYzIyY=",
|
|
144
|
+
"owner": "inscapist",
|
|
145
|
+
"repo": "ruby-nix",
|
|
146
|
+
"rev": "86b498e80058a84461d1f533e121574d85d272d7",
|
|
147
|
+
"type": "github"
|
|
148
|
+
},
|
|
149
|
+
"original": {
|
|
150
|
+
"owner": "inscapist",
|
|
151
|
+
"repo": "ruby-nix",
|
|
152
|
+
"type": "github"
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
"systems": {
|
|
156
|
+
"locked": {
|
|
157
|
+
"lastModified": 1681028828,
|
|
158
|
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
159
|
+
"owner": "nix-systems",
|
|
160
|
+
"repo": "default",
|
|
161
|
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
162
|
+
"type": "github"
|
|
163
|
+
},
|
|
164
|
+
"original": {
|
|
165
|
+
"owner": "nix-systems",
|
|
166
|
+
"repo": "default",
|
|
167
|
+
"type": "github"
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
"systems_2": {
|
|
171
|
+
"locked": {
|
|
172
|
+
"lastModified": 1681028828,
|
|
173
|
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
174
|
+
"owner": "nix-systems",
|
|
175
|
+
"repo": "default",
|
|
176
|
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
177
|
+
"type": "github"
|
|
178
|
+
},
|
|
179
|
+
"original": {
|
|
180
|
+
"owner": "nix-systems",
|
|
181
|
+
"repo": "default",
|
|
182
|
+
"type": "github"
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
"root": "root",
|
|
187
|
+
"version": 7
|
|
188
|
+
}
|
data/flake.nix
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
inputs = {
|
|
3
|
+
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
4
|
+
ruby-nix.url = "github:inscapist/ruby-nix";
|
|
5
|
+
bundix.url = "github:inscapist/bundix/main";
|
|
6
|
+
bundix.inputs.nixpkgs.follows = "nixpkgs";
|
|
7
|
+
nixpkgs-ruby.url = "github:bobvanderlinden/nixpkgs-ruby";
|
|
8
|
+
nixpkgs-ruby.inputs.nixpkgs.follows = "nixpkgs";
|
|
9
|
+
flake-utils.url = "github:numtide/flake-utils";
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
outputs =
|
|
13
|
+
{
|
|
14
|
+
self,
|
|
15
|
+
nixpkgs,
|
|
16
|
+
ruby-nix,
|
|
17
|
+
bundix,
|
|
18
|
+
nixpkgs-ruby,
|
|
19
|
+
flake-utils,
|
|
20
|
+
}:
|
|
21
|
+
flake-utils.lib.eachDefaultSystem (
|
|
22
|
+
system:
|
|
23
|
+
let
|
|
24
|
+
pkgs = import nixpkgs {
|
|
25
|
+
inherit system;
|
|
26
|
+
overlays = [ nixpkgs-ruby.overlays.default ];
|
|
27
|
+
};
|
|
28
|
+
rubyNix = ruby-nix.lib pkgs;
|
|
29
|
+
gemset = if builtins.pathExists ./gemset.nix then import ./gemset.nix else { };
|
|
30
|
+
gemConfig = {};
|
|
31
|
+
ruby = pkgs."ruby-3.4.9";
|
|
32
|
+
bundixcli = bundix.packages.${system}.default;
|
|
33
|
+
in
|
|
34
|
+
rec {
|
|
35
|
+
inherit
|
|
36
|
+
(rubyNix {
|
|
37
|
+
inherit gemset ruby;
|
|
38
|
+
name = "my-rails-app";
|
|
39
|
+
gemConfig = pkgs.defaultGemConfig // gemConfig;
|
|
40
|
+
})
|
|
41
|
+
env
|
|
42
|
+
;
|
|
43
|
+
devShells = rec {
|
|
44
|
+
default = dev;
|
|
45
|
+
dev = pkgs.mkShell {
|
|
46
|
+
buildInputs = [
|
|
47
|
+
env
|
|
48
|
+
bundixcli
|
|
49
|
+
pkgs.pinact
|
|
50
|
+
];
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
}
|