squared 0.4.39 → 0.4.40

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ba521fe28499cd80a453a06d45ad6e7f3561fbeb7e346731b3c90a570e5d1d8c
4
- data.tar.gz: 3f1a4dc8c680f53bb44ba3e48560858ead77a61dbb4d962e8be7f26e123d9abb
3
+ metadata.gz: 9274835227b6d4541e223612c12730e6b87af9cd0b8f60e73ce2821301ce2fb3
4
+ data.tar.gz: 13049d3adf02a7114a72ded6b73a6d0375fef29a8db43c43ba1e823f92863b42
5
5
  SHA512:
6
- metadata.gz: a783109febd933dda7e85b97196e4085910b28067946c07fefe565c7bfe2f728acfe7bc88b1ac6b99ae1cd8c76ec3cfef9635f74e7c7fe9c3e2e4fd4ec77e117
7
- data.tar.gz: 2cb847e0e72dc274b567b37a4f6e91f21a850c0ecc4c787fecfa022d2f858fcc9a67d0a0d75a6788c551abe02e8409c8ba4e429b274a9069d5dc6b5e18d27ea4
6
+ metadata.gz: 634e4c43b25ba777a5009b419276df8c1018dcba79da96f8c8bd7f3499a8f17185de6361b0631e6c9514c0421db3f1005e35b968d94ada0618a1f061f5650e93
7
+ data.tar.gz: 74657c33d825ccaec2e6249227a31679f5d6a16aa83e00a0969875f60cd9f90943e40aed095e65baf927197e4c001e828f1f2cd1e2c56efd8c98ee5d23359c8e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.4.40] - 2026-08-06
4
+
5
+ ### Changed
6
+
7
+ - Series method exclude? was made compatible with v0.8 signature.
8
+
3
9
  ## [0.4.39] - 2026-07-04
4
10
 
5
11
  ### Changed
@@ -1240,6 +1246,7 @@
1240
1246
 
1241
1247
  - Changelog was created.
1242
1248
 
1249
+ [0.4.40]: https://github.com/anpham6/squared-ruby/releases/tag/v0.4.40
1243
1250
  [0.4.39]: https://github.com/anpham6/squared-ruby/releases/tag/v0.4.39
1244
1251
  [0.4.38]: https://github.com/anpham6/squared-ruby/releases/tag/v0.4.38
1245
1252
  [0.4.37]: https://github.com/anpham6/squared-ruby/releases/tag/v0.4.37
@@ -90,6 +90,13 @@ module Squared
90
90
  VAR[key.is_a?(::String) ? key.to_sym : key] = val
91
91
  end
92
92
 
93
+ def __arg__(key, name = nil, &blk)
94
+ ret = ARG[key.to_sym]
95
+ return ret unless name && ret.is_a?(::Hash)
96
+
97
+ ret[name = name.downcase] || (block_given? ? ret.fetch(name.to_sym, &blk) : ret[name.to_sym])
98
+ end
99
+
93
100
  def __freeze__
94
101
  PATH.freeze
95
102
  ARG.freeze
@@ -54,7 +54,7 @@ module Squared
54
54
  end}] "
55
55
  end
56
56
  end
57
- valid = ->(s) { s.match?(/^-?\d+$/) && s.to_i.between?(min, max) }
57
+ valid = ->(s) { s.match?(/^-?\d+$/) && s.to_i.between?(min, max <= min ? Float::INFINITY : max) }
58
58
  Timeout.timeout(timeout) do
59
59
  begin
60
60
  while (ch = Readline.readline(msg))
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Squared
4
- VERSION = '0.4.39'
4
+ VERSION = '0.4.40'
5
5
  end
@@ -1232,7 +1232,7 @@ module Squared
1232
1232
  def env(key, default = nil, suffix: nil, equals: nil, ignore: nil, strict: false)
1233
1233
  a = "#{key}_#{@envname}"
1234
1234
  ret = if suffix
1235
- ENV.fetch("#{a}_#{suffix}", '')
1235
+ ENV["#{a}_#{suffix}"] || (ignore == false && ENV["#{key}_#{suffix}"]) || ''
1236
1236
  elsif strict
1237
1237
  ENV[a].to_s
1238
1238
  else
@@ -1465,7 +1465,7 @@ module Squared
1465
1465
  end
1466
1466
 
1467
1467
  def append_hash(data, target: @session || [], build: false)
1468
- if build && (type = env('BUILD', suffix: 'TYPE') || ENV['BUILD_TYPE'])
1468
+ if build && (type = env('BUILD', suffix: 'TYPE', ignore: false))
1469
1469
  type = "__#{type}__"
1470
1470
  if (extra = data[type] || data[type.to_sym]).is_a?(Hash)
1471
1471
  data = data.merge(extra)
@@ -133,7 +133,6 @@ module Squared
133
133
  end
134
134
  File.write(@revfile, JSON.pretty_generate(@revdoc))
135
135
  rescue StandardError => e
136
- log&.debug e
137
136
  warn log_message(Logger::WARN, e, pass: true) if warning
138
137
  ensure
139
138
  @revlock = false
@@ -159,7 +159,7 @@ module Squared
159
159
  log.warn "run script #{n} of #{list.size} (out of range)"
160
160
  end
161
161
  else
162
- case index
162
+ case (index > 1 && poetry? : 0 : index)
163
163
  when 0
164
164
  found |= 1
165
165
  run(session_output('poetry', 'run', val), from: :run)
@@ -235,8 +235,9 @@ module Squared
235
235
  already_invoked? parallel, val
236
236
  end
237
237
 
238
- def exclude?(key, empty = false)
239
- @exclude.include?(key) || (empty && (!@data.key?(key) || @data[key].empty?))
238
+ def exclude?(key, fallback = false, empty: nil)
239
+ fallback = empty unless empty.nil?
240
+ @exclude.include?(key) || (fallback && (!@data.key?(key) || @data[key].empty?))
240
241
  end
241
242
 
242
243
  private
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.4.39
4
+ version: 0.4.40
5
5
  platform: ruby
6
6
  authors:
7
7
  - An Pham
@@ -125,7 +125,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
125
125
  - !ruby/object:Gem::Version
126
126
  version: '0'
127
127
  requirements: []
128
- rubygems_version: 4.0.10
128
+ rubygems_version: 4.0.15
129
129
  specification_version: 4
130
130
  summary: Rake task generator for managing multi-language workspaces.
131
131
  test_files: []