squared 0.8.8 → 0.9.0.pre1

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.
@@ -9,6 +9,7 @@ module Squared
9
9
  extend Forwardable
10
10
 
11
11
  attr_reader :sync, :multiple, :parallel
12
+ attr_writer :ref_min
12
13
 
13
14
  def_delegators :@data, :[], :each, :each_key, :keys, :key?, :include?, :fetch, :update, :merge!, :any?, :none?,
14
15
  :delete, :delete_if, :find, :find_all, :to_a, :to_s, :inspect
@@ -19,6 +20,7 @@ module Squared
19
20
  @sync = []
20
21
  @multiple = []
21
22
  @parallel = []
23
+ @ref_min = 2
22
24
  @chain = {}
23
25
  @exclude = exclude.freeze
24
26
  @task = Struct::SeriesData.new(workspace.config_get(:rename))
@@ -56,7 +58,7 @@ module Squared
56
58
  @session = {
57
59
  group: Support.hashlist,
58
60
  parent: Support.hashlist,
59
- id: []
61
+ id: Set.new
60
62
  }.freeze
61
63
  end
62
64
 
@@ -85,7 +87,7 @@ module Squared
85
87
 
86
88
  def build(parallel: [], pattern: [], **)
87
89
  subcheck = ->(val) { (ns = task_namespace(val)) && parallel.include?(ns) }
88
- update @session[:parent] if @session[:id].uniq.size > 1
90
+ update @session[:parent] if @session[:id].size >= @ref_min
89
91
  update @session[:group]
90
92
  each do |key, items|
91
93
  next if exclude?(key, empty: true) || @workspace.task_exclude?(t = name_get(key))
data/squared.gemspec CHANGED
@@ -11,21 +11,23 @@ Gem::Specification.new do |spec|
11
11
  spec.summary = "Rake task generator for managing multi-language workspaces."
12
12
  spec.description = "Rake task generator for managing multi-language workspaces."
13
13
  spec.homepage = "https://github.com/anpham6/squared-ruby"
14
- spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
14
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
15
15
  spec.licenses = ["BSD-3-Clause"]
16
16
 
17
17
  spec.metadata["homepage_uri"] = spec.homepage
18
18
  spec.metadata["source_code_uri"] = spec.homepage
19
19
  spec.metadata["documentation_uri"] = "https://squared.readthedocs.io"
20
20
 
21
- spec.files = Dir["lib/**/*"] +
22
- %w[CHANGELOG.md LICENSE README.md squared.gemspec]
23
21
  spec.bindir = "exe"
24
- spec.executables = []
22
+ spec.executables = Dir["exe/*"].map { |f| File.basename(f) }
23
+
24
+ spec.files = Dir["exe/*"] + Dir["lib/**/*"] +
25
+ %w[CHANGELOG.md LICENSE README.md squared.gemspec]
25
26
  spec.require_paths = ["lib"]
26
27
 
27
28
  spec.add_dependency "rake"
29
+ spec.add_dependency "optparse"
28
30
  spec.add_dependency "logger"
29
31
  spec.add_dependency "rexml"
30
- spec.add_dependency "readline"
32
+ spec.add_dependency "reline"
31
33
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: squared
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.8
4
+ version: 0.9.0.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - An Pham
@@ -23,6 +23,20 @@ dependencies:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
25
  version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: optparse
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
26
40
  - !ruby/object:Gem::Dependency
27
41
  name: logger
28
42
  requirement: !ruby/object:Gem::Requirement
@@ -52,7 +66,7 @@ dependencies:
52
66
  - !ruby/object:Gem::Version
53
67
  version: '0'
54
68
  - !ruby/object:Gem::Dependency
55
- name: readline
69
+ name: reline
56
70
  requirement: !ruby/object:Gem::Requirement
57
71
  requirements:
58
72
  - - ">="
@@ -68,13 +82,15 @@ dependencies:
68
82
  description: Rake task generator for managing multi-language workspaces.
69
83
  email:
70
84
  - anpham6@gmail.com
71
- executables: []
85
+ executables:
86
+ - sqd
72
87
  extensions: []
73
88
  extra_rdoc_files: []
74
89
  files:
75
90
  - CHANGELOG.md
76
91
  - LICENSE
77
92
  - README.md
93
+ - exe/sqd
78
94
  - lib/squared.rb
79
95
  - lib/squared/app.rb
80
96
  - lib/squared/common.rb
@@ -119,14 +135,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
119
135
  requirements:
120
136
  - - ">="
121
137
  - !ruby/object:Gem::Version
122
- version: 2.5.0
138
+ version: 2.7.0
123
139
  required_rubygems_version: !ruby/object:Gem::Requirement
124
140
  requirements:
125
141
  - - ">="
126
142
  - !ruby/object:Gem::Version
127
143
  version: '0'
128
144
  requirements: []
129
- rubygems_version: 4.0.20
145
+ rubygems_version: 4.0.21
130
146
  specification_version: 4
131
147
  summary: Rake task generator for managing multi-language workspaces.
132
148
  test_files: []