squared 0.4.36 → 0.5.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/CHANGELOG.md +64 -529
- data/README.md +1283 -663
- data/README.ruby.md +722 -0
- data/lib/squared/common/base.rb +8 -9
- data/lib/squared/common/format.rb +26 -39
- data/lib/squared/common/prompt.rb +46 -51
- data/lib/squared/common/shell.rb +50 -70
- data/lib/squared/common/system.rb +34 -37
- data/lib/squared/common/utils.rb +3 -28
- data/lib/squared/common.rb +2 -1
- data/lib/squared/config.rb +30 -33
- data/lib/squared/version.rb +1 -1
- data/lib/squared/workspace/application.rb +82 -122
- data/lib/squared/workspace/project/base.rb +432 -578
- data/lib/squared/workspace/project/docker.rb +186 -214
- data/lib/squared/workspace/project/git.rb +368 -512
- data/lib/squared/workspace/project/node.rb +195 -315
- data/lib/squared/workspace/project/python.rb +125 -355
- data/lib/squared/workspace/project/ruby.rb +258 -340
- data/lib/squared/workspace/project/support/class.rb +92 -313
- data/lib/squared/workspace/project.rb +0 -10
- data/lib/squared/workspace/repo.rb +58 -99
- data/lib/squared/workspace/series.rb +41 -47
- data/lib/squared/workspace/support/data.rb +3 -2
- data/lib/squared/workspace/support.rb +0 -1
- data/lib/squared/workspace.rb +3 -5
- data/squared.gemspec +5 -5
- metadata +7 -8
- data/lib/squared/common/class.rb +0 -186
- data/lib/squared/workspace/support/base.rb +0 -32
data/lib/squared/common/class.rb
DELETED
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'set'
|
|
4
|
-
require 'forwardable'
|
|
5
|
-
|
|
6
|
-
module Squared
|
|
7
|
-
module Common
|
|
8
|
-
class SymSet
|
|
9
|
-
extend Forwardable
|
|
10
|
-
|
|
11
|
-
def self.to_s
|
|
12
|
-
super[/[^:]+\z/, 0]
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def_delegators :@data, :+, :each, :each_with_index, :entries, :merge, :include?
|
|
16
|
-
|
|
17
|
-
def initialize(data = [])
|
|
18
|
-
@data = Set.new(data)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def add(val)
|
|
22
|
-
@data.add(val.to_sym)
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
def to_a
|
|
26
|
-
@data.to_a.freeze
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def to_s
|
|
30
|
-
@data.to_s.sub('Set', SymSet.to_s)
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
alias inspect to_s
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
class JoinSet < Set
|
|
37
|
-
def self.to_s
|
|
38
|
-
super[/[^:]+\z/, 0]
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
alias to_ary to_a
|
|
42
|
-
|
|
43
|
-
attr_reader :delim, :extras
|
|
44
|
-
|
|
45
|
-
def initialize(data = [], delim: ' ', partition: '--', uniq: /\A--?[^=\s-][^=\s]*(?:=|\s+)\S/)
|
|
46
|
-
@delim = delim
|
|
47
|
-
@partition = partition
|
|
48
|
-
@uniq = uniq
|
|
49
|
-
@extras = []
|
|
50
|
-
super(data.compact)
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
def compact
|
|
54
|
-
to_ary.map!(&:to_s).reject(&:empty?)
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
def last(val, pat)
|
|
58
|
-
(@last ||= []).push([val, pat, $1]) if val =~ pat
|
|
59
|
-
self << val
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
def pass(&blk)
|
|
63
|
-
ret = compact
|
|
64
|
-
@last&.each do |val, pat, key|
|
|
65
|
-
i = []
|
|
66
|
-
j = nil
|
|
67
|
-
ret.each_with_index do |opt, index|
|
|
68
|
-
if opt == val
|
|
69
|
-
j = index
|
|
70
|
-
elsif j && opt[pat, 1] == key
|
|
71
|
-
i << index
|
|
72
|
-
end
|
|
73
|
-
end
|
|
74
|
-
next unless j && !i.empty?
|
|
75
|
-
|
|
76
|
-
val = ret[j]
|
|
77
|
-
cur = j
|
|
78
|
-
i.each do |k|
|
|
79
|
-
ret[cur] = ret[k]
|
|
80
|
-
cur = k
|
|
81
|
-
end
|
|
82
|
-
ret[i.last] = val
|
|
83
|
-
end
|
|
84
|
-
ret.concat(extras.map(&:to_s).reject(&:empty?)) unless extras.empty?
|
|
85
|
-
block_given? ? ret.reject(&blk) : ret
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
def and(*args)
|
|
89
|
-
self << '&&'
|
|
90
|
-
merge(args)
|
|
91
|
-
end
|
|
92
|
-
|
|
93
|
-
def or(*args)
|
|
94
|
-
self << '||'
|
|
95
|
-
merge(args)
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
def with(*args, &blk)
|
|
99
|
-
temp('&&', *args, &blk)
|
|
100
|
-
end
|
|
101
|
-
|
|
102
|
-
def temp(*args, &blk)
|
|
103
|
-
args.compact!
|
|
104
|
-
pass(&blk)
|
|
105
|
-
.concat(args)
|
|
106
|
-
.join(@delim)
|
|
107
|
-
end
|
|
108
|
-
|
|
109
|
-
def done
|
|
110
|
-
ret = to_s
|
|
111
|
-
clear
|
|
112
|
-
ret
|
|
113
|
-
end
|
|
114
|
-
|
|
115
|
-
def merge(enum)
|
|
116
|
-
if !extras.empty?
|
|
117
|
-
extras.concat(enum.to_a)
|
|
118
|
-
self
|
|
119
|
-
elsif (n = enum.find_index { |val| extras?(val) })
|
|
120
|
-
data = enum.to_a
|
|
121
|
-
@extras = if n == 0
|
|
122
|
-
data
|
|
123
|
-
else
|
|
124
|
-
super(data[0...n])
|
|
125
|
-
data[n..-1]
|
|
126
|
-
end
|
|
127
|
-
self
|
|
128
|
-
else
|
|
129
|
-
super
|
|
130
|
-
end
|
|
131
|
-
end
|
|
132
|
-
|
|
133
|
-
def <<(obj)
|
|
134
|
-
extras!(obj) || super
|
|
135
|
-
end
|
|
136
|
-
|
|
137
|
-
def size
|
|
138
|
-
super + extras.size
|
|
139
|
-
end
|
|
140
|
-
|
|
141
|
-
def include?(obj)
|
|
142
|
-
return true if super
|
|
143
|
-
return extras.include?(obj) unless (n = extras.index(@partition))
|
|
144
|
-
|
|
145
|
-
extras[0..n].include?(obj)
|
|
146
|
-
end
|
|
147
|
-
|
|
148
|
-
def to_a
|
|
149
|
-
pass
|
|
150
|
-
end
|
|
151
|
-
|
|
152
|
-
def to_s
|
|
153
|
-
to_a.join(@delim)
|
|
154
|
-
end
|
|
155
|
-
|
|
156
|
-
def to_enum(*args)
|
|
157
|
-
to_a.to_enum(*args)
|
|
158
|
-
end
|
|
159
|
-
|
|
160
|
-
def to_json(*args)
|
|
161
|
-
to_a.to_json(*args)
|
|
162
|
-
end
|
|
163
|
-
|
|
164
|
-
def to_yaml(*args)
|
|
165
|
-
to_a.to_yaml(*args)
|
|
166
|
-
end
|
|
167
|
-
|
|
168
|
-
alias add :<<
|
|
169
|
-
alias add? :<<
|
|
170
|
-
alias member? include?
|
|
171
|
-
|
|
172
|
-
private
|
|
173
|
-
|
|
174
|
-
def extras!(obj)
|
|
175
|
-
return if extras.empty? && !extras?(obj)
|
|
176
|
-
|
|
177
|
-
extras << obj unless !extras.include?(@partition) && include?(obj) && @uniq.match?(obj.to_s)
|
|
178
|
-
self
|
|
179
|
-
end
|
|
180
|
-
|
|
181
|
-
def extras?(obj)
|
|
182
|
-
obj == @partition || (include?(obj) && !@uniq.match?(obj.to_s))
|
|
183
|
-
end
|
|
184
|
-
end
|
|
185
|
-
end
|
|
186
|
-
end
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Squared
|
|
4
|
-
module Workspace
|
|
5
|
-
module Support
|
|
6
|
-
class << self
|
|
7
|
-
def hashobj
|
|
8
|
-
Hash.new { |data, key| data[key] = {} }
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def hashlist
|
|
12
|
-
Hash.new { |data, key| data[key] = [] }
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def hashdup(data, pass: {})
|
|
16
|
-
ret = {}
|
|
17
|
-
data.each do |key, val|
|
|
18
|
-
ret[key] = case val
|
|
19
|
-
when Hash
|
|
20
|
-
pass[val] ||= hashdup(val, pass: pass)
|
|
21
|
-
when Proc, Method
|
|
22
|
-
val
|
|
23
|
-
else
|
|
24
|
-
val.dup
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
ret
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|