souls 0.24.1 → 0.24.2
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/.irbrc +1 -0
- data/Gemfile.lock +1 -1
- data/apps/api/.irbrc +3 -0
- data/apps/api/Gemfile +2 -2
- data/apps/api/Gemfile.lock +4 -4
- data/apps/api/app/policies/user_policy.rb +4 -4
- data/apps/api/spec/policies/article_category_policy_spec.rb +8 -9
- data/apps/api/spec/policies/article_policy_spec.rb +6 -7
- data/apps/api/spec/policies/user_policy_spec.rb +21 -2
- data/apps/worker/.irbrc +3 -0
- data/lib/souls.rb +125 -121
- data/lib/souls/gcloud/iam.rb +30 -16
- data/lib/souls/init.rb +0 -15
- data/lib/souls/version.rb +1 -1
- metadata +2 -4
- data/api_v0.0.1.tar.gz +0 -0
- data/souls_api2.tar.gz +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8305b1df5cacb1a4ec1e331666f60fe43fdb4c29b20d29caa2815ed8ae7e18f1
|
4
|
+
data.tar.gz: '08130c02290519c844dac657f9a5b4f3663a13e0931ad96a326e276d9a3e696d'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ff64c773e7b4e7b8050e6626c49ed0a11734e9c6688ddc364899c186b51f60a9e2e2eadb4d85f5be34b86cec3b7a38bdad600425eb02b27075ace03820f809cf
|
7
|
+
data.tar.gz: c527bc6749ad24f8827c4e68459cd5d7c945c156b66fceb224703804d168be3987f58df5988f8ed30d6ee93e704c12b04b034d5e1764356efada87c985395e91
|
data/.irbrc
CHANGED
data/Gemfile.lock
CHANGED
data/apps/api/.irbrc
CHANGED
data/apps/api/Gemfile
CHANGED
@@ -38,12 +38,12 @@ group :development, :test do
|
|
38
38
|
gem "rubocop", "1.18.3"
|
39
39
|
gem "selenium-webdriver", "3.142.7"
|
40
40
|
gem "solargraph", "0.42.4"
|
41
|
-
gem "souls", "0.24.
|
41
|
+
gem "souls", "0.24.1"
|
42
42
|
gem "webmock", "3.13.0"
|
43
43
|
end
|
44
44
|
|
45
45
|
group :development do
|
46
|
-
gem "listen", "3.
|
46
|
+
gem "listen", "3.6.0"
|
47
47
|
gem "rubocop-graphql", "0.9.0"
|
48
48
|
gem "spring", "2.1.1"
|
49
49
|
gem "spring-watcher-listen", "2.0.1"
|
data/apps/api/Gemfile.lock
CHANGED
@@ -176,7 +176,7 @@ GEM
|
|
176
176
|
rexml
|
177
177
|
kramdown-parser-gfm (1.1.0)
|
178
178
|
kramdown (~> 2.0)
|
179
|
-
listen (3.
|
179
|
+
listen (3.6.0)
|
180
180
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
181
181
|
rb-inotify (~> 0.9, >= 0.9.10)
|
182
182
|
loofah (2.10.0)
|
@@ -335,7 +335,7 @@ GEM
|
|
335
335
|
thor (~> 1.0)
|
336
336
|
tilt (~> 2.0)
|
337
337
|
yard (~> 0.9, >= 0.9.24)
|
338
|
-
souls (0.24.
|
338
|
+
souls (0.24.1)
|
339
339
|
paint (= 2.2.1)
|
340
340
|
whirly (= 0.3.0)
|
341
341
|
spring (2.1.1)
|
@@ -381,7 +381,7 @@ DEPENDENCIES
|
|
381
381
|
graphql-batch (= 0.4.3)
|
382
382
|
graphql_playground (= 0.0.1)
|
383
383
|
jwt (= 2.2.3)
|
384
|
-
listen (= 3.
|
384
|
+
listen (= 3.6.0)
|
385
385
|
pg (= 1.2.3)
|
386
386
|
puma (= 5.3.2)
|
387
387
|
pundit (= 2.1.0)
|
@@ -402,7 +402,7 @@ DEPENDENCIES
|
|
402
402
|
sinatra-contrib (= 2.1.0)
|
403
403
|
slack-ruby3 (= 0.1.2)
|
404
404
|
solargraph (= 0.42.4)
|
405
|
-
souls (= 0.24.
|
405
|
+
souls (= 0.24.1)
|
406
406
|
spring (= 2.1.1)
|
407
407
|
spring-watcher-listen (= 2.0.1)
|
408
408
|
webmock (= 3.13.0)
|
@@ -19,6 +19,10 @@ class UserPolicy < ApplicationPolicy
|
|
19
19
|
admin_permissions?
|
20
20
|
end
|
21
21
|
|
22
|
+
def update_user_role?
|
23
|
+
@user.master?
|
24
|
+
end
|
25
|
+
|
22
26
|
private
|
23
27
|
|
24
28
|
def user_permissions?
|
@@ -28,8 +32,4 @@ class UserPolicy < ApplicationPolicy
|
|
28
32
|
def admin_permissions?
|
29
33
|
@user.master? or @user.admin?
|
30
34
|
end
|
31
|
-
|
32
|
-
def update_user_role?
|
33
|
-
@user.master?
|
34
|
-
end
|
35
35
|
end
|
@@ -1,24 +1,23 @@
|
|
1
1
|
describe ArticleCategoryPolicy do
|
2
|
-
subject { described_class.new(user,
|
2
|
+
subject { described_class.new(user, article) }
|
3
3
|
|
4
|
-
let(:
|
4
|
+
let(:article) { FactoryBot.create(:article) }
|
5
5
|
|
6
|
-
context "being a
|
6
|
+
context "being a normal" do
|
7
7
|
let(:user) { FactoryBot.create(:user) }
|
8
8
|
|
9
|
-
it { is_expected.to(
|
10
|
-
it { is_expected.to(permit_action(:show)) }
|
9
|
+
it { is_expected.to(permit_actions(%i[index show])) }
|
11
10
|
it { is_expected.to(forbid_actions(%i[create update delete])) }
|
12
11
|
end
|
13
12
|
|
14
|
-
context "being a
|
15
|
-
let(:user) { FactoryBot.create(:user,
|
13
|
+
context "being a user" do
|
14
|
+
let(:user) { FactoryBot.create(:user, roles: :user) }
|
16
15
|
|
17
16
|
it { is_expected.to(permit_actions(%i[create update])) }
|
18
17
|
end
|
19
18
|
|
20
|
-
context "being an
|
21
|
-
let(:user) { FactoryBot.create(:user,
|
19
|
+
context "being an admin" do
|
20
|
+
let(:user) { FactoryBot.create(:user, roles: :admin) }
|
22
21
|
|
23
22
|
it { is_expected.to(permit_actions(%i[create update delete])) }
|
24
23
|
end
|
@@ -3,22 +3,21 @@ describe ArticlePolicy do
|
|
3
3
|
|
4
4
|
let(:article) { FactoryBot.create(:article) }
|
5
5
|
|
6
|
-
context "being a
|
6
|
+
context "being a normal" do
|
7
7
|
let(:user) { FactoryBot.create(:user) }
|
8
8
|
|
9
|
-
it { is_expected.to(
|
10
|
-
it { is_expected.to(permit_action(:show)) }
|
9
|
+
it { is_expected.to(permit_actions(%i[index show])) }
|
11
10
|
it { is_expected.to(forbid_actions(%i[create update delete])) }
|
12
11
|
end
|
13
12
|
|
14
|
-
context "being a
|
15
|
-
let(:user) { FactoryBot.create(:user,
|
13
|
+
context "being a user" do
|
14
|
+
let(:user) { FactoryBot.create(:user, roles: :user) }
|
16
15
|
|
17
16
|
it { is_expected.to(permit_actions(%i[create update])) }
|
18
17
|
end
|
19
18
|
|
20
|
-
context "being an
|
21
|
-
let(:user) { FactoryBot.create(:user,
|
19
|
+
context "being an admin" do
|
20
|
+
let(:user) { FactoryBot.create(:user, roles: :admin) }
|
22
21
|
|
23
22
|
it { is_expected.to(permit_actions(%i[create update delete])) }
|
24
23
|
end
|
@@ -1,5 +1,24 @@
|
|
1
1
|
describe UserPolicy do
|
2
|
-
subject { described_class.new(user,
|
2
|
+
subject { described_class.new(user, article) }
|
3
3
|
|
4
|
-
let
|
4
|
+
let(:article) { FactoryBot.create(:article) }
|
5
|
+
|
6
|
+
context "being a normal" do
|
7
|
+
let(:user) { FactoryBot.create(:user) }
|
8
|
+
|
9
|
+
it { is_expected.to(permit_actions(%i[index show])) }
|
10
|
+
it { is_expected.to(forbid_actions(%i[create update delete])) }
|
11
|
+
end
|
12
|
+
|
13
|
+
context "being a user" do
|
14
|
+
let(:user) { FactoryBot.create(:user, roles: :user) }
|
15
|
+
|
16
|
+
it { is_expected.to(permit_actions(%i[create update])) }
|
17
|
+
end
|
18
|
+
|
19
|
+
context "being an admin" do
|
20
|
+
let(:user) { FactoryBot.create(:user, roles: :admin) }
|
21
|
+
|
22
|
+
it { is_expected.to(permit_actions(%i[create update delete])) }
|
23
|
+
end
|
5
24
|
end
|
data/apps/worker/.irbrc
CHANGED
data/lib/souls.rb
CHANGED
@@ -28,143 +28,147 @@ module Souls
|
|
28
28
|
class Error < StandardError; end
|
29
29
|
class << self
|
30
30
|
attr_accessor :configuration
|
31
|
-
end
|
32
31
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
32
|
+
def run_psql
|
33
|
+
system(
|
34
|
+
"docker run --rm -d \
|
35
|
+
-p 5433:5432 \
|
36
|
+
-v postgres-tmp:/var/lib/postgresql/data \
|
37
|
+
-e POSTGRES_USER=postgres \
|
38
|
+
-e POSTGRES_PASSWORD=postgres \
|
39
|
+
-e POSTGRES_DB=souls_test \
|
40
|
+
postgres:13-alpine"
|
41
|
+
)
|
42
|
+
system("docker ps")
|
43
|
+
end
|
45
44
|
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
45
|
+
def run_mysql
|
46
|
+
system(
|
47
|
+
"docker run --rm -d \
|
48
|
+
-p 3306:3306 \
|
49
|
+
-v mysql-tmp:/var/lib/mysql \
|
50
|
+
-e MYSQL_USER=mysql \
|
51
|
+
-e MYSQL_ROOT_PASSWORD=mysql \
|
52
|
+
-e MYSQL_DB=souls_test \
|
53
|
+
mysql:latest"
|
54
|
+
)
|
55
|
+
system("docker ps")
|
56
|
+
end
|
58
57
|
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
58
|
+
def run_awake(url)
|
59
|
+
app = Souls.configuration.app
|
60
|
+
system(
|
61
|
+
"gcloud scheduler jobs create http #{app}-awake
|
62
|
+
--schedule '0,10,20,30,40,50 * * * *' --uri #{url} --http-method GET"
|
63
|
+
)
|
64
|
+
end
|
66
65
|
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
66
|
+
def gemfile_latest_version
|
67
|
+
file_path = "./Gemfile"
|
68
|
+
updated_gems = []
|
69
|
+
updated_gem_versions = []
|
70
|
+
updated_lines = []
|
71
|
+
from_dev = false
|
72
|
+
File.open(file_path, "r") do |f|
|
73
|
+
f.each_line do |line|
|
74
|
+
from_dev = true if line.include?("group")
|
75
|
+
next unless line.include?("gem ")
|
77
76
|
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
77
|
+
gem = line.gsub("gem ", "").gsub("\"", "").gsub("\n", "").gsub(" ", "").split(",")
|
78
|
+
url = URI("https://rubygems.org/api/v1/versions/#{gem[0]}/latest.json")
|
79
|
+
res = Net::HTTP.get_response(url)
|
80
|
+
data = JSON.parse(res.body)
|
81
|
+
next if Souls.configuration.fixed_gems.include?(gem[0].to_s)
|
82
|
+
next if data["version"].to_s == gem[1].to_s
|
84
83
|
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
84
|
+
updated_lines << if from_dev
|
85
|
+
" gem \"#{gem[0]}\", \"#{data['version']}\""
|
86
|
+
else
|
87
|
+
"gem \"#{gem[0]}\", \"#{data['version']}\""
|
88
|
+
end
|
89
|
+
updated_gems << (gem[0]).to_s
|
90
|
+
updated_gem_versions << data["version"]
|
91
|
+
system("gem update #{gem[0]}")
|
92
|
+
end
|
93
93
|
end
|
94
|
+
{
|
95
|
+
gems: updated_gems,
|
96
|
+
lines: updated_lines,
|
97
|
+
updated_gem_versions: updated_gem_versions
|
98
|
+
}
|
94
99
|
end
|
95
|
-
{
|
96
|
-
gems: updated_gems,
|
97
|
-
lines: updated_lines,
|
98
|
-
updated_gem_versions: updated_gem_versions
|
99
|
-
}
|
100
|
-
end
|
101
100
|
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
101
|
+
def update_gemfile
|
102
|
+
file_path = "./Gemfile"
|
103
|
+
tmp_file = "./tmp/Gemfile"
|
104
|
+
new_gems = gemfile_latest_version
|
105
|
+
logs = []
|
106
|
+
message = Paint["\nAlready Up to date!", :green]
|
107
|
+
return "Already Up to date!" && puts(message) if new_gems[:gems].blank?
|
109
108
|
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
109
|
+
@i = 0
|
110
|
+
File.open(file_path, "r") do |f|
|
111
|
+
File.open(tmp_file, "w") do |new_line|
|
112
|
+
f.each_line do |line|
|
113
|
+
gem = line.gsub("gem ", "").gsub("\"", "").gsub("\n", "").gsub(" ", "").split(",")
|
114
|
+
if new_gems[:gems].include?(gem[0])
|
115
|
+
old_ver = gem[1].split(".")
|
116
|
+
new_ver = new_gems[:updated_gem_versions][@i].split(".")
|
117
|
+
if old_ver[0] < new_ver[0]
|
118
|
+
logs << Paint % [
|
119
|
+
"#{gem[0]} v#{gem[1]} → %{red_text}",
|
120
|
+
:white,
|
121
|
+
{
|
122
|
+
red_text: ["v#{new_gems[:updated_gem_versions][@i]}", :red]
|
123
|
+
}
|
124
|
+
]
|
125
|
+
elsif old_ver[1] < new_ver[1]
|
126
|
+
logs << Paint % [
|
127
|
+
"#{gem[0]} v#{gem[1]} → v#{new_ver[0]}.%{yellow_text}",
|
128
|
+
:white,
|
129
|
+
{
|
130
|
+
yellow_text: ["#{new_ver[1]}.#{new_ver[2]}", :yellow]
|
131
|
+
}
|
132
|
+
]
|
133
|
+
elsif old_ver[2] < new_ver[2]
|
134
|
+
logs << Paint % [
|
135
|
+
"#{gem[0]} v#{gem[1]} → v#{new_ver[0]}.#{new_ver[1]}.%{green_text}",
|
136
|
+
:white,
|
137
|
+
{
|
138
|
+
green_text: [(new_ver[2]).to_s, :green]
|
139
|
+
}
|
140
|
+
]
|
141
|
+
end
|
142
|
+
if gem[0] == "souls"
|
143
|
+
logs << Paint % [
|
144
|
+
"\nSOULs Doc: %{cyan_text}",
|
145
|
+
:white,
|
146
|
+
{ cyan_text: ["https://souls.elsoul.nl\n", :cyan] }
|
147
|
+
]
|
148
|
+
end
|
149
|
+
new_line.write("#{new_gems[:lines][@i]}\n")
|
150
|
+
@i += 1
|
151
|
+
else
|
152
|
+
new_line.write(line)
|
145
153
|
end
|
146
|
-
new_line.write("#{new_gems[:lines][@i]}\n")
|
147
|
-
@i += 1
|
148
|
-
else
|
149
|
-
new_line.write(line)
|
150
154
|
end
|
151
155
|
end
|
152
156
|
end
|
157
|
+
FileUtils.rm("./Gemfile")
|
158
|
+
FileUtils.rm("./Gemfile.lock")
|
159
|
+
FileUtils.mv("./tmp/Gemfile", "./Gemfile")
|
160
|
+
system("bundle update")
|
161
|
+
success = Paint["\n\nSuccessfully Updated These Gems!\n", :green]
|
162
|
+
puts(success)
|
163
|
+
logs.each do |line|
|
164
|
+
puts(line)
|
165
|
+
end
|
153
166
|
end
|
154
|
-
FileUtils.rm("./Gemfile")
|
155
|
-
FileUtils.rm("./Gemfile.lock")
|
156
|
-
FileUtils.mv("./tmp/Gemfile", "./Gemfile")
|
157
|
-
system("bundle update")
|
158
|
-
success = Paint["\n\nSuccessfully Updated These Gems!\n", :green]
|
159
|
-
puts(success)
|
160
|
-
logs.each do |line|
|
161
|
-
puts(line)
|
162
|
-
end
|
163
|
-
end
|
164
167
|
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
+
def configure
|
169
|
+
self.configuration ||= Configuration.new
|
170
|
+
yield(configuration)
|
171
|
+
end
|
168
172
|
end
|
169
173
|
|
170
174
|
class Configuration
|
data/lib/souls/gcloud/iam.rb
CHANGED
@@ -1,31 +1,45 @@
|
|
1
1
|
module Souls
|
2
2
|
module Gcloud
|
3
3
|
class << self
|
4
|
-
def create_service_account(
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
def create_service_account(args)
|
5
|
+
service_account = args[:service_account] || "souls-app"
|
6
|
+
system(
|
7
|
+
"gcloud iam service-accounts create #{service_account} \
|
8
|
+
--description='Souls Service Account' \
|
9
|
+
--display-name=#{service_account}"
|
10
|
+
)
|
8
11
|
end
|
9
12
|
|
10
|
-
def create_service_account_key(
|
11
|
-
|
12
|
-
|
13
|
-
|
13
|
+
def create_service_account_key(args)
|
14
|
+
service_account = args[:service_account] || "souls-app"
|
15
|
+
project_id = args[:project_id] || "souls-app"
|
16
|
+
system(
|
17
|
+
"gcloud iam service-accounts keys create ./config/keyfile.json \
|
18
|
+
--iam-account #{service_account}@#{project_id}.iam.gserviceaccount.com"
|
19
|
+
)
|
14
20
|
end
|
15
21
|
|
16
|
-
def add_service_account_role(
|
17
|
-
|
22
|
+
def add_service_account_role(args)
|
23
|
+
service_account = args[:service_account] || "souls-app"
|
24
|
+
project_id = args[:project_id] || "souls-app"
|
25
|
+
role = args[:role] || "roles/firebase.admin"
|
18
26
|
`gcloud projects add-iam-policy-binding #{project_id} \
|
19
27
|
--member="serviceAccount:#{service_account}@#{project_id}.iam.gserviceaccount.com" \
|
20
28
|
--role="#{role}"`
|
21
29
|
end
|
22
30
|
|
23
|
-
def add_permissions(
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
31
|
+
def add_permissions(args)
|
32
|
+
service_account = args[:service_account] || "souls-app"
|
33
|
+
roles = [
|
34
|
+
"roles/cloudsql.serviceAgent",
|
35
|
+
"roles/containerregistry.ServiceAgent",
|
36
|
+
"roles/pubsub.serviceAgent",
|
37
|
+
"roles/firestore.serviceAgent",
|
38
|
+
"roles/iam.serviceAccountUser"
|
39
|
+
]
|
40
|
+
roles.each do |role|
|
41
|
+
add_service_account_role(service_account: service_account, role: role)
|
42
|
+
end
|
29
43
|
end
|
30
44
|
end
|
31
45
|
end
|
data/lib/souls/init.rb
CHANGED
@@ -9,21 +9,6 @@ module Souls
|
|
9
9
|
data[0]["tag_name"]
|
10
10
|
end
|
11
11
|
|
12
|
-
def self.initial_config_init(app_name: "souls", strain: "api")
|
13
|
-
FileUtils.touch("./#{app_name}/config/souls.rb")
|
14
|
-
file_path = "./#{app_name}/config/souls.rb"
|
15
|
-
File.open(file_path, "w") do |f|
|
16
|
-
f.write(<<~TEXT)
|
17
|
-
Souls.configure do |config|
|
18
|
-
config.app = "#{app_name}"
|
19
|
-
config.strain = "#{strain}"
|
20
|
-
end
|
21
|
-
TEXT
|
22
|
-
end
|
23
|
-
rescue StandardError => e
|
24
|
-
puts(e)
|
25
|
-
end
|
26
|
-
|
27
12
|
def self.download_souls(app_name: "souls", repository_name: "souls_api ")
|
28
13
|
version = get_version(repository_name: repository_name)
|
29
14
|
system("curl -OL https://github.com/elsoul/#{repository_name}/archive/#{version}.tar.gz")
|
data/lib/souls/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: souls
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.24.
|
4
|
+
version: 0.24.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- POPPIN-FUMI
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-07-
|
13
|
+
date: 2021-07-21 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: paint
|
@@ -66,7 +66,6 @@ files:
|
|
66
66
|
- README.md
|
67
67
|
- Rakefile
|
68
68
|
- Steepfile
|
69
|
-
- api_v0.0.1.tar.gz
|
70
69
|
- apps/api/.env.sample
|
71
70
|
- apps/api/.gitignore
|
72
71
|
- apps/api/.irbrc
|
@@ -270,7 +269,6 @@ files:
|
|
270
269
|
- lib/souls/version.rb
|
271
270
|
- rbs/init.rbs
|
272
271
|
- souls.gemspec
|
273
|
-
- souls_api2.tar.gz
|
274
272
|
homepage: https://souls.elsoul.nl
|
275
273
|
licenses:
|
276
274
|
- Apache-2.0
|
data/api_v0.0.1.tar.gz
DELETED
Binary file
|
data/souls_api2.tar.gz
DELETED
Binary file
|