souls 0.31.0 → 0.31.1
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/exe/souls +1 -1
- data/lib/souls.rb +0 -120
- data/lib/souls/cli.rb +1 -0
- data/lib/souls/cli/sync/model.rb +18 -0
- data/lib/souls/cli/upgrade.rb +5 -0
- data/lib/souls/cli/upgrade/gem_update.rb +107 -0
- data/lib/souls/version.rb +1 -1
- data/lib/souls/versions/.souls_api_version +1 -1
- data/lib/souls/versions/.souls_worker_version +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6efcfd5a262a33c5d1323e9e2e423a8abf4d4e8f86783ce13bd1332bfe4c7fa7
|
4
|
+
data.tar.gz: 1553a17298b0c55dc273f6b18eacd3165868346501c2431f85ecc7e4444519b1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7e3b02ca9c947f4a9784ee07500fc2ed470e7d77f8a47e6d6ffe846860f8a769aa7a27d4ad84d735029445cd80e8e1f697959039049f771c00061948825d52ac
|
7
|
+
data.tar.gz: 6f4649ee64d7ccb0300a51ed87c0107ed12b696e4f212a4fac088b588766c709fe660f88fb6b3dc1b23452b0cedb8218e7e2f675ec62aee6065164e0a8ca0ab6
|
data/exe/souls
CHANGED
data/lib/souls.rb
CHANGED
@@ -32,108 +32,6 @@ module Souls
|
|
32
32
|
class << self
|
33
33
|
attr_accessor :configuration
|
34
34
|
|
35
|
-
def gemfile_latest_version
|
36
|
-
file_path = "./Gemfile"
|
37
|
-
updated_gems = []
|
38
|
-
updated_gem_versions = []
|
39
|
-
updated_lines = []
|
40
|
-
from_dev = false
|
41
|
-
File.open(file_path, "r") do |f|
|
42
|
-
f.each_line do |line|
|
43
|
-
from_dev = true if line.include?("group")
|
44
|
-
next unless line.include?("gem ")
|
45
|
-
|
46
|
-
gem = line.gsub("gem ", "").gsub("\"", "").gsub("\n", "").gsub(" ", "").split(",")
|
47
|
-
url = URI("https://rubygems.org/api/v1/versions/#{gem[0]}/latest.json")
|
48
|
-
res = Net::HTTP.get_response(url)
|
49
|
-
data = JSON.parse(res.body)
|
50
|
-
next if Souls.configuration.fixed_gems.include?(gem[0].to_s)
|
51
|
-
next if data["version"].to_s == gem[1].to_s
|
52
|
-
|
53
|
-
updated_lines << if from_dev
|
54
|
-
" gem \"#{gem[0]}\", \"#{data['version']}\""
|
55
|
-
else
|
56
|
-
"gem \"#{gem[0]}\", \"#{data['version']}\""
|
57
|
-
end
|
58
|
-
updated_gems << (gem[0]).to_s
|
59
|
-
updated_gem_versions << data["version"]
|
60
|
-
system("gem update #{gem[0]}")
|
61
|
-
end
|
62
|
-
end
|
63
|
-
{
|
64
|
-
gems: updated_gems,
|
65
|
-
lines: updated_lines,
|
66
|
-
updated_gem_versions: updated_gem_versions
|
67
|
-
}
|
68
|
-
end
|
69
|
-
|
70
|
-
def update_gemfile
|
71
|
-
file_path = "./Gemfile"
|
72
|
-
tmp_file = "./tmp/Gemfile"
|
73
|
-
new_gems = gemfile_latest_version
|
74
|
-
logs = []
|
75
|
-
message = Paint["\nAlready Up to date!", :green]
|
76
|
-
return "Already Up to date!" && puts(message) if new_gems[:gems].blank?
|
77
|
-
|
78
|
-
@i = 0
|
79
|
-
File.open(file_path, "r") do |f|
|
80
|
-
File.open(tmp_file, "w") do |new_line|
|
81
|
-
f.each_line do |line|
|
82
|
-
gem = line.gsub("gem ", "").gsub("\"", "").gsub("\n", "").gsub(" ", "").split(",")
|
83
|
-
if new_gems[:gems].include?(gem[0])
|
84
|
-
old_ver = gem[1].split(".")
|
85
|
-
new_ver = new_gems[:updated_gem_versions][@i].split(".")
|
86
|
-
if old_ver[0] < new_ver[0]
|
87
|
-
logs << Paint % [
|
88
|
-
"#{gem[0]} v#{gem[1]} → %{red_text}",
|
89
|
-
:white,
|
90
|
-
{
|
91
|
-
red_text: ["v#{new_gems[:updated_gem_versions][@i]}", :red]
|
92
|
-
}
|
93
|
-
]
|
94
|
-
elsif old_ver[1] < new_ver[1]
|
95
|
-
logs << Paint % [
|
96
|
-
"#{gem[0]} v#{gem[1]} → v#{new_ver[0]}.%{yellow_text}",
|
97
|
-
:white,
|
98
|
-
{
|
99
|
-
yellow_text: ["#{new_ver[1]}.#{new_ver[2]}", :yellow]
|
100
|
-
}
|
101
|
-
]
|
102
|
-
elsif old_ver[2] < new_ver[2]
|
103
|
-
logs << Paint % [
|
104
|
-
"#{gem[0]} v#{gem[1]} → v#{new_ver[0]}.#{new_ver[1]}.%{green_text}",
|
105
|
-
:white,
|
106
|
-
{
|
107
|
-
green_text: [(new_ver[2]).to_s, :green]
|
108
|
-
}
|
109
|
-
]
|
110
|
-
end
|
111
|
-
if gem[0] == "souls"
|
112
|
-
logs << Paint % [
|
113
|
-
"\nSOULs Doc: %{cyan_text}",
|
114
|
-
:white,
|
115
|
-
{ cyan_text: ["https://souls.elsoul.nl\n", :cyan] }
|
116
|
-
]
|
117
|
-
end
|
118
|
-
new_line.write("#{new_gems[:lines][@i]}\n")
|
119
|
-
@i += 1
|
120
|
-
else
|
121
|
-
new_line.write(line)
|
122
|
-
end
|
123
|
-
end
|
124
|
-
end
|
125
|
-
end
|
126
|
-
FileUtils.rm("./Gemfile")
|
127
|
-
FileUtils.rm("./Gemfile.lock")
|
128
|
-
FileUtils.mv("./tmp/Gemfile", "./Gemfile")
|
129
|
-
system("bundle update")
|
130
|
-
success = Paint["\n\nSuccessfully Updated These Gems!\n", :green]
|
131
|
-
puts(success)
|
132
|
-
logs.each do |line|
|
133
|
-
puts(line)
|
134
|
-
end
|
135
|
-
end
|
136
|
-
|
137
35
|
def update_repo(service_name: "api", update_kind: "patch")
|
138
36
|
current_dir_name = FileUtils.pwd.to_s.match(%r{/([^/]+)/?$})[1]
|
139
37
|
current_ver = get_latest_version_txt(service_name: service_name)
|
@@ -249,24 +147,6 @@ module Souls
|
|
249
147
|
puts(Paint["\nSuccessfully Updated #{service_name} Gemfile!", :green])
|
250
148
|
end
|
251
149
|
|
252
|
-
def file_diff(paths = [])
|
253
|
-
paths.map do |path|
|
254
|
-
stat(path)[:last_update]
|
255
|
-
end
|
256
|
-
end
|
257
|
-
|
258
|
-
def stat(path)
|
259
|
-
s = File::Stat.new(path)
|
260
|
-
last_update = s.mtime.to_s
|
261
|
-
last_status_change = s.ctime.to_s
|
262
|
-
last_access = s.atime.to_s
|
263
|
-
{
|
264
|
-
last_update: last_update,
|
265
|
-
last_status_change: last_status_change,
|
266
|
-
last_access: last_access
|
267
|
-
}
|
268
|
-
end
|
269
|
-
|
270
150
|
def check_schema(class_name: "user")
|
271
151
|
schema_data = get_columns_num(class_name: class_name)
|
272
152
|
create_migration_data = get_create_migration_type(class_name: class_name)
|
data/lib/souls/cli.rb
CHANGED
data/lib/souls/cli/sync/model.rb
CHANGED
@@ -16,6 +16,24 @@ module Souls
|
|
16
16
|
|
17
17
|
private
|
18
18
|
|
19
|
+
def file_diff(paths = [])
|
20
|
+
paths.map do |path|
|
21
|
+
stat(path)[:last_update]
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def stat(path)
|
26
|
+
s = File::Stat.new(path)
|
27
|
+
last_update = s.mtime.to_s
|
28
|
+
last_status_change = s.ctime.to_s
|
29
|
+
last_access = s.atime.to_s
|
30
|
+
{
|
31
|
+
last_update: last_update,
|
32
|
+
last_status_change: last_status_change,
|
33
|
+
last_access: last_access
|
34
|
+
}
|
35
|
+
end
|
36
|
+
|
19
37
|
def cp_and_dl_files(api_dir: "", worker_dir: "")
|
20
38
|
if Dir["#{worker_dir}/*.rb"].blank?
|
21
39
|
|
@@ -0,0 +1,107 @@
|
|
1
|
+
module Souls
|
2
|
+
module Upgrade
|
3
|
+
class << self
|
4
|
+
def gemfile_latest_version
|
5
|
+
file_path = "./Gemfile"
|
6
|
+
updated_gems = []
|
7
|
+
updated_gem_versions = []
|
8
|
+
updated_lines = []
|
9
|
+
from_dev = false
|
10
|
+
File.open(file_path, "r") do |f|
|
11
|
+
f.each_line do |line|
|
12
|
+
from_dev = true if line.include?("group")
|
13
|
+
next unless line.include?("gem ")
|
14
|
+
|
15
|
+
gem = line.gsub("gem ", "").gsub("\"", "").gsub("\n", "").gsub(" ", "").split(",")
|
16
|
+
url = URI("https://rubygems.org/api/v1/versions/#{gem[0]}/latest.json")
|
17
|
+
res = Net::HTTP.get_response(url)
|
18
|
+
data = JSON.parse(res.body)
|
19
|
+
next if Souls.configuration.fixed_gems.include?(gem[0].to_s)
|
20
|
+
next if data["version"].to_s == gem[1].to_s
|
21
|
+
|
22
|
+
updated_lines << if from_dev
|
23
|
+
" gem \"#{gem[0]}\", \"#{data['version']}\""
|
24
|
+
else
|
25
|
+
"gem \"#{gem[0]}\", \"#{data['version']}\""
|
26
|
+
end
|
27
|
+
updated_gems << (gem[0]).to_s
|
28
|
+
updated_gem_versions << data["version"]
|
29
|
+
system("gem update #{gem[0]}")
|
30
|
+
end
|
31
|
+
end
|
32
|
+
{
|
33
|
+
gems: updated_gems,
|
34
|
+
lines: updated_lines,
|
35
|
+
updated_gem_versions: updated_gem_versions
|
36
|
+
}
|
37
|
+
end
|
38
|
+
|
39
|
+
def update_gemfile
|
40
|
+
file_path = "./Gemfile"
|
41
|
+
tmp_file = "./tmp/Gemfile"
|
42
|
+
new_gems = gemfile_latest_version
|
43
|
+
logs = []
|
44
|
+
message = Paint["\nAlready Up to date!", :green]
|
45
|
+
return "Already Up to date!" && puts(message) if new_gems[:gems].blank?
|
46
|
+
|
47
|
+
@i = 0
|
48
|
+
File.open(file_path, "r") do |f|
|
49
|
+
File.open(tmp_file, "w") do |new_line|
|
50
|
+
f.each_line do |line|
|
51
|
+
gem = line.gsub("gem ", "").gsub("\"", "").gsub("\n", "").gsub(" ", "").split(",")
|
52
|
+
if new_gems[:gems].include?(gem[0])
|
53
|
+
old_ver = gem[1].split(".")
|
54
|
+
new_ver = new_gems[:updated_gem_versions][@i].split(".")
|
55
|
+
if old_ver[0] < new_ver[0]
|
56
|
+
logs << Paint % [
|
57
|
+
"#{gem[0]} v#{gem[1]} → %{red_text}",
|
58
|
+
:white,
|
59
|
+
{
|
60
|
+
red_text: ["v#{new_gems[:updated_gem_versions][@i]}", :red]
|
61
|
+
}
|
62
|
+
]
|
63
|
+
elsif old_ver[1] < new_ver[1]
|
64
|
+
logs << Paint % [
|
65
|
+
"#{gem[0]} v#{gem[1]} → v#{new_ver[0]}.%{yellow_text}",
|
66
|
+
:white,
|
67
|
+
{
|
68
|
+
yellow_text: ["#{new_ver[1]}.#{new_ver[2]}", :yellow]
|
69
|
+
}
|
70
|
+
]
|
71
|
+
elsif old_ver[2] < new_ver[2]
|
72
|
+
logs << Paint % [
|
73
|
+
"#{gem[0]} v#{gem[1]} → v#{new_ver[0]}.#{new_ver[1]}.%{green_text}",
|
74
|
+
:white,
|
75
|
+
{
|
76
|
+
green_text: [(new_ver[2]).to_s, :green]
|
77
|
+
}
|
78
|
+
]
|
79
|
+
end
|
80
|
+
if gem[0] == "souls"
|
81
|
+
logs << Paint % [
|
82
|
+
"\nSOULs Doc: %{cyan_text}",
|
83
|
+
:white,
|
84
|
+
{ cyan_text: ["https://souls.elsoul.nl\n", :cyan] }
|
85
|
+
]
|
86
|
+
end
|
87
|
+
new_line.write("#{new_gems[:lines][@i]}\n")
|
88
|
+
@i += 1
|
89
|
+
else
|
90
|
+
new_line.write(line)
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
FileUtils.rm("./Gemfile")
|
96
|
+
FileUtils.rm("./Gemfile.lock")
|
97
|
+
FileUtils.mv("./tmp/Gemfile", "./Gemfile")
|
98
|
+
system("bundle update")
|
99
|
+
success = Paint["\n\nSuccessfully Updated These Gems!\n", :green]
|
100
|
+
puts(success)
|
101
|
+
logs.each do |line|
|
102
|
+
puts(line)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
data/lib/souls/version.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.10.
|
1
|
+
0.10.1
|
@@ -1 +1 @@
|
|
1
|
-
0.10.
|
1
|
+
0.10.1
|
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.31.
|
4
|
+
version: 0.31.1
|
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-08-
|
13
|
+
date: 2021-08-19 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activesupport
|
@@ -138,6 +138,8 @@ files:
|
|
138
138
|
- lib/souls/cli/release/release.rb
|
139
139
|
- lib/souls/cli/sync.rb
|
140
140
|
- lib/souls/cli/sync/model.rb
|
141
|
+
- lib/souls/cli/upgrade.rb
|
142
|
+
- lib/souls/cli/upgrade/gem_update.rb
|
141
143
|
- lib/souls/init.rb
|
142
144
|
- lib/souls/version.rb
|
143
145
|
- lib/souls/versions/.souls_api_version
|