tins 1.33.0 → 1.35.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +76 -0
- data/Rakefile +1 -3
- data/lib/tins/count_by.rb +16 -3
- data/lib/tins/deep_const_get.rb +48 -34
- data/lib/tins/deprecate.rb +15 -0
- data/lib/tins/duration.rb +42 -0
- data/lib/tins/hash_bfs.rb +51 -0
- data/lib/tins/secure_write.rb +1 -1
- data/lib/tins/sexy_singleton.rb +2 -1
- data/lib/tins/string_version.rb +4 -0
- data/lib/tins/time_dummy.rb +2 -1
- data/lib/tins/timed_cache.rb +1 -1
- data/lib/tins/token.rb +5 -1
- data/lib/tins/uniq_by.rb +16 -3
- data/lib/tins/version.rb +1 -1
- data/lib/tins/xt/count_by.rb +0 -4
- data/lib/tins/xt/deprecate.rb +5 -0
- data/lib/tins/xt/hash_bfs.rb +7 -0
- data/lib/tins/xt/uniq_by.rb +13 -3
- data/lib/tins/xt.rb +2 -0
- data/lib/tins.rb +2 -0
- data/tests/annotate_test.rb +0 -1
- data/tests/bijection_test.rb +0 -1
- data/tests/concern_test.rb +0 -1
- data/tests/date_dummy_test.rb +0 -1
- data/tests/date_time_dummy_test.rb +0 -1
- data/tests/delegate_test.rb +0 -1
- data/tests/deprecate_test.rb +41 -0
- data/tests/dslkit_test.rb +0 -1
- data/tests/duration_test.rb +19 -2
- data/tests/dynamic_scope_test.rb +0 -1
- data/tests/extract_last_argument_options_test.rb +0 -1
- data/tests/find_test.rb +0 -1
- data/tests/from_module_test.rb +0 -1
- data/tests/generator_test.rb +0 -1
- data/tests/go_test.rb +0 -1
- data/tests/hash_bfs_test.rb +34 -0
- data/tests/hash_symbolize_keys_recursive_test.rb +0 -1
- data/tests/implement_test.rb +0 -1
- data/tests/limited_test.rb +0 -1
- data/tests/lines_file_test.rb +0 -1
- data/tests/lru_cache_test.rb +0 -1
- data/tests/memoize_test.rb +0 -1
- data/tests/minimize_test.rb +0 -1
- data/tests/module_group_test.rb +0 -1
- data/tests/named_set_test.rb +0 -1
- data/tests/null_test.rb +0 -1
- data/tests/require_maybe_test.rb +0 -1
- data/tests/scope_test.rb +0 -1
- data/tests/secure_write_test.rb +6 -1
- data/tests/sexy_singleton_test.rb +1 -1
- data/tests/string_version_test.rb +1 -1
- data/tests/subhash_test.rb +0 -1
- data/tests/test_helper.rb +2 -1
- data/tests/time_dummy_test.rb +0 -1
- data/tests/time_freezer_test.rb +1 -1
- data/tests/token_test.rb +0 -1
- data/tests/unit_test.rb +0 -1
- data/tins.gemspec +8 -9
- metadata +18 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c4cb4ab5a9b7debca4a2b25d7661de1f7ebe75bccf738d88a02c4b9480bc887f
|
4
|
+
data.tar.gz: d73eb031538b6daa98e70c46caadf288415716451ffb4cabf808d2b35e3e2438
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4bde944cf28e96f8de0227e579aaeae21ca2195dc733ca08726ebd097a52fe848b244db7dd30bf1f97db635e774ce5c976c0c2e335a5873e22ce1b63423cb776
|
7
|
+
data.tar.gz: fa80a61808dcfd564606ed06cf6f32384df4ddaa9c8116f3a07b3a17b80b5234df26c73c9d758a05ec2db9237ff7707664ff094d82ef2e4611ca37317ef67039
|
data/CHANGES.md
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
# Changes
|
2
|
+
|
3
|
+
## 2024-10-10 v1.35.0
|
4
|
+
|
5
|
+
### New Features
|
6
|
+
* Implemented breadth-first search in hashes using the `Tins::HashBFS` module.
|
7
|
+
+ Added tests for the `Tins::HashBFS` module.
|
8
|
+
|
9
|
+
### Refactoring and Cleanup
|
10
|
+
* Reformatted code.
|
11
|
+
* Removed TODO note from the `TODO` file.
|
12
|
+
* Cleaned up test requirements:
|
13
|
+
- Added `require 'tins'` to `tests/test_helper.rb`.
|
14
|
+
- Removed unnecessary `require 'tins'` lines from test files.
|
15
|
+
* Refactored BASE16 constants and alphabet:
|
16
|
+
+ Added `BASE16_LOWERCASE_ALPHABET` constant.
|
17
|
+
+ Added `BASE16_UPPERCASE_ALPHABET` constant.
|
18
|
+
|
19
|
+
### Tool Updates
|
20
|
+
* Updated bundler command to use full index:
|
21
|
+
- Added `--full-index` flag to `bundle install`.
|
22
|
+
- Replaced `bundle update` with `bundle install --full-index`.
|
23
|
+
|
24
|
+
## 2024-09-30 v1.34.0
|
25
|
+
|
26
|
+
### Changes in **1.34.0**
|
27
|
+
|
28
|
+
* **Secure write functionality updated**
|
29
|
+
+ Added support for `Pathname` objects in `secure_write`
|
30
|
+
+ Updated `File.new` call to use `to_s` method on filename
|
31
|
+
+ New test case added for `secure_write` with `Pathname` object
|
32
|
+
* **Refactor version comparisons in various modules**
|
33
|
+
+ Added `Tins::StringVersion.compare` method to compare Ruby versions with operators.
|
34
|
+
+ Replaced direct version comparisons with `compare` method in multiple modules.
|
35
|
+
* **Deprecate deep_const_get and const_defined_in? methods**
|
36
|
+
+ Add deprecation notice for `const_defined_in?` for ruby >= 1.8
|
37
|
+
+ Add deprecation notice for `deep_const_get` method with a new method name `const_get` for ruby >= 2.0
|
38
|
+
* **Refactor deprecation logic and tests**
|
39
|
+
+ Update `Tins::Deprecate#deprecate` method to allow for optional `new_method` parameter.
|
40
|
+
+ Modify `tests/deprecate_test.rb` to test deprecated methods with and without messages.
|
41
|
+
* **Prepare count_by method for deprecation**
|
42
|
+
+ Suggest using `count` with block instead in newer Rubies
|
43
|
+
* **Prepare uniq_by / uniq_by! method for deprecation**
|
44
|
+
+ Suggest using `uniq` / `uniq!` with block instead in newer Rubies
|
45
|
+
|
46
|
+
## 2024-04-17 v1.33.0
|
47
|
+
|
48
|
+
* **Changes for Ruby 3.3 and 3.4**
|
49
|
+
+ Added support for Ruby **3.3**
|
50
|
+
+ Added dependency on `bigdecimal` for upcoming Ruby **3.4**
|
51
|
+
* **Other Changes**
|
52
|
+
+ Halting once is enough
|
53
|
+
+ Added ruby **3.2**, removed some older ones
|
54
|
+
+ Added test process convenience method
|
55
|
+
|
56
|
+
## 2022-11-21 v1.32.1
|
57
|
+
|
58
|
+
* Removed mutex for finalizer, allowing Ruby to handle cleanup instead.
|
59
|
+
* Significant changes:
|
60
|
+
+ Removed `mutex` variable
|
61
|
+
+ Updated code to rely on Ruby's built-in finalization mechanism
|
62
|
+
|
63
|
+
## 2022-11-17 v1.32.0
|
64
|
+
|
65
|
+
* **attempt** method now supports passing of previously caught exception into
|
66
|
+
the called block to let the handling behaviour depend on it.
|
67
|
+
* Some smaller changes to make debugging on multiple Ruby releases, easier via
|
68
|
+
all_images.
|
69
|
+
* Enable fast failing mode
|
70
|
+
* Add convenience method to create `Tins::StringVersion` objects.
|
71
|
+
* Pass previous exception to attempt block ...
|
72
|
+
... to allow reacting to it, logging it etc.
|
73
|
+
* Remove additional groups
|
74
|
+
* Use debug instead of byebug for development
|
75
|
+
* Ignore more hidden files in the package
|
76
|
+
* Update Ruby version to **3.1**
|
data/Rakefile
CHANGED
@@ -14,14 +14,12 @@ GemHadar do
|
|
14
14
|
ignore '.*.sw[pon]', 'pkg', 'Gemfile.lock', '.rvmrc', 'coverage', '.rbx',
|
15
15
|
'.AppleDouble', '.DS_Store', 'tags', '.bundle', '.byebug_history'
|
16
16
|
package_ignore '.all_images.yml', '.tool-versions', '.gitignore', 'VERSION',
|
17
|
-
|
18
|
-
*Dir.glob('.github/**/*', File::FNM_DOTMATCH)
|
17
|
+
'.utilsrc', 'TODO', *Dir.glob('.github/**/*', File::FNM_DOTMATCH)
|
19
18
|
|
20
19
|
readme 'README.md'
|
21
20
|
licenses << 'MIT'
|
22
21
|
|
23
22
|
required_ruby_version '>= 2.0'
|
24
|
-
development_dependency 'utils'
|
25
23
|
development_dependency 'all_images'
|
26
24
|
development_dependency 'debug'
|
27
25
|
development_dependency 'term-ansicolor'
|
data/lib/tins/count_by.rb
CHANGED
@@ -1,8 +1,21 @@
|
|
1
|
+
require 'tins/string_version'
|
2
|
+
|
1
3
|
module Tins
|
2
4
|
module CountBy
|
3
|
-
|
4
|
-
|
5
|
-
|
5
|
+
if Tins::StringVersion.compare(RUBY_VERSION, :<=, "1.8")
|
6
|
+
def count_by(&block)
|
7
|
+
block ||= lambda { |x| true }
|
8
|
+
inject(0) { |s, e| s += 1 if block.call(e); s }
|
9
|
+
end
|
10
|
+
else
|
11
|
+
require 'tins/deprecate'
|
12
|
+
extend Tins::Deprecate
|
13
|
+
|
14
|
+
deprecate method:
|
15
|
+
def count_by(&block)
|
16
|
+
count(&block)
|
17
|
+
end,
|
18
|
+
new_method: :count
|
6
19
|
end
|
7
20
|
end
|
8
21
|
end
|
data/lib/tins/deep_const_get.rb
CHANGED
@@ -1,45 +1,59 @@
|
|
1
|
+
require 'tins/string_version'
|
2
|
+
|
1
3
|
module Tins
|
2
4
|
module DeepConstGet
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
5
|
+
class << self
|
6
|
+
if ::Object.method(:const_defined?).arity == 1
|
7
|
+
# :nocov:
|
8
|
+
# We do not create coverage on 1.8
|
9
|
+
def const_defined_in?(modul, constant)
|
10
|
+
modul.const_defined?(constant)
|
11
|
+
end
|
12
|
+
# :nocov:
|
13
|
+
else
|
14
|
+
require 'tins/deprecate'
|
15
|
+
extend Tins::Deprecate
|
16
|
+
|
17
|
+
deprecate method:
|
18
|
+
def const_defined_in?(modul, constant)
|
19
|
+
modul.const_defined?(constant, false)
|
20
|
+
end,
|
21
|
+
new_method: :const_defined?
|
13
22
|
end
|
14
|
-
end
|
15
23
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
24
|
+
if Tins::StringVersion.compare(RUBY_VERSION, :<, '2.0')
|
25
|
+
def deep_const_get(path, start_module = Object)
|
26
|
+
path.to_s.split('::').inject(start_module) do |p, c|
|
27
|
+
case
|
28
|
+
when c.empty?
|
29
|
+
if start_module == Object
|
30
|
+
Object
|
31
|
+
else
|
32
|
+
raise ArgumentError, "top level constants cannot be reached from"\
|
33
|
+
" start module #{start_module.inspect}"
|
34
|
+
end
|
35
|
+
when const_defined_in?(p, c)
|
36
|
+
p.const_get(c)
|
23
37
|
else
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
else
|
30
|
-
begin
|
31
|
-
p.const_missing(c)
|
32
|
-
rescue NameError => e
|
33
|
-
raise ArgumentError, "can't get const #{path}: #{e}"
|
38
|
+
begin
|
39
|
+
p.const_missing(c)
|
40
|
+
rescue NameError => e
|
41
|
+
raise ArgumentError, "can't get const #{path}: #{e}"
|
42
|
+
end
|
34
43
|
end
|
35
44
|
end
|
36
45
|
end
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
46
|
+
else
|
47
|
+
require 'tins/deprecate'
|
48
|
+
extend Tins::Deprecate
|
49
|
+
|
50
|
+
deprecate method:
|
51
|
+
def deep_const_get(path, start_module = Object)
|
52
|
+
start_module.const_get(path)
|
53
|
+
rescue NameError => e
|
54
|
+
raise ArgumentError, "can't get const #{path}: #{e}"
|
55
|
+
end,
|
56
|
+
new_method: :const_get
|
43
57
|
end
|
44
58
|
end
|
45
59
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module Tins
|
2
|
+
module Deprecate
|
3
|
+
def deprecate(method:, new_method: nil, message: nil)
|
4
|
+
message ||= '[DEPRECATION] `%{method}` is deprecated. Please use `%{new_method}` instead.'
|
5
|
+
message = message % { method: method, new_method: new_method }
|
6
|
+
m = Module.new do
|
7
|
+
define_method(method) do |*a, **kw, &b|
|
8
|
+
warn message
|
9
|
+
super(*a, **kw, &b)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
prepend m
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/lib/tins/duration.rb
CHANGED
@@ -2,6 +2,48 @@ module Tins
|
|
2
2
|
class Duration
|
3
3
|
include Comparable
|
4
4
|
|
5
|
+
# Returns the number of seconds represented by the given duration string
|
6
|
+
# according to the provided template format.
|
7
|
+
#
|
8
|
+
# @param [String] string The duration string to parse.
|
9
|
+
# @param [String] template for the duration format, see {#format}.
|
10
|
+
#
|
11
|
+
# @return [Integer, Float] The number of (fractional) seconds of the duration.
|
12
|
+
#
|
13
|
+
# @example
|
14
|
+
# Tins::Duration.parse('6+05:04:03', template: '%S%d+%h:%m:%s') # => 536643
|
15
|
+
# Tins::Duration.parse('6+05:04:03.21', template: '%S%d+%h:%m:%s.%f') # => 536643.21
|
16
|
+
def self.parse(string, template: '%S%d+%h:%m:%s.%f')
|
17
|
+
s, t = string.to_s.dup, template.dup
|
18
|
+
d, sd = 0, 1
|
19
|
+
loop do
|
20
|
+
t.sub!(/\A(%[Sdhmsf%]|.)/) { |directive|
|
21
|
+
case directive
|
22
|
+
when '%S' then s.sub!(/\A-?/) { sd *= -1 if _1 == ?-; '' }
|
23
|
+
when '%d' then s.sub!(/\A\d+/) { d += 86_400 * _1.to_i; '' }
|
24
|
+
when '%h' then s.sub!(/\A\d+/) { d += 3_600 * _1.to_i; '' }
|
25
|
+
when '%m' then s.sub!(/\A\d+/) { d += 60 * _1.to_i; '' }
|
26
|
+
when '%s' then s.sub!(/\A\d+/) { d += _1.to_i; '' }
|
27
|
+
when '%f' then s.sub!(/\A\d+/) { d += Float(?. + _1); '' }
|
28
|
+
when '%%' then
|
29
|
+
if s[0] == ?%
|
30
|
+
s[0] = ''
|
31
|
+
else
|
32
|
+
raise "expected %s, got #{s.inspect}"
|
33
|
+
end
|
34
|
+
else
|
35
|
+
if directive == s[0]
|
36
|
+
s[0] = ''
|
37
|
+
else
|
38
|
+
raise ArgumentError, "expected #{t.inspect}, got #{s.inspect}"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
''
|
42
|
+
} or break
|
43
|
+
end
|
44
|
+
sd * d
|
45
|
+
end
|
46
|
+
|
5
47
|
def initialize(seconds)
|
6
48
|
@negative = seconds < 0
|
7
49
|
seconds = seconds.abs
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'tins/thread_local'
|
2
|
+
|
3
|
+
module Tins
|
4
|
+
module HashBFS
|
5
|
+
extend Tins::ThreadLocal
|
6
|
+
|
7
|
+
thread_local :seen
|
8
|
+
|
9
|
+
def bfs(include_nodes: false, &block)
|
10
|
+
block or raise ArgumentError, 'require &block argument'
|
11
|
+
self.seen = {}
|
12
|
+
queue = []
|
13
|
+
queue.push([ nil, self ])
|
14
|
+
while (index, object = queue.shift)
|
15
|
+
case
|
16
|
+
when seen[object.__id__]
|
17
|
+
next
|
18
|
+
when Hash === object
|
19
|
+
seen[object.__id__] = true
|
20
|
+
object.each do |k, v|
|
21
|
+
queue.push([ k, convert_to_hash_or_ary(v) ])
|
22
|
+
end
|
23
|
+
include_nodes or next
|
24
|
+
when Array === object
|
25
|
+
seen[object.__id__] = true
|
26
|
+
object.each_with_index do |v, i|
|
27
|
+
queue.push([ i, convert_to_hash_or_ary(v) ])
|
28
|
+
end
|
29
|
+
include_nodes or next
|
30
|
+
end
|
31
|
+
block.(index, object)
|
32
|
+
end
|
33
|
+
self
|
34
|
+
ensure
|
35
|
+
self.seen = nil
|
36
|
+
end
|
37
|
+
|
38
|
+
def convert_to_hash_or_ary(v)
|
39
|
+
case
|
40
|
+
when v.respond_to?(:to_hash)
|
41
|
+
v = v.to_hash
|
42
|
+
when v.respond_to?(:to_ary)
|
43
|
+
v = v.to_ary
|
44
|
+
else
|
45
|
+
v
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
require 'tins/alias'
|
data/lib/tins/secure_write.rb
CHANGED
@@ -2,7 +2,7 @@ module Tins
|
|
2
2
|
module SecureWrite
|
3
3
|
# Write to a file atomically
|
4
4
|
def secure_write(filename, content = nil, mode = 'w')
|
5
|
-
temp = File.new(filename + ".tmp.#$$.#{Time.now.to_f}", mode)
|
5
|
+
temp = File.new(filename.to_s + ".tmp.#$$.#{Time.now.to_f}", mode)
|
6
6
|
if content.nil? and block_given?
|
7
7
|
yield temp
|
8
8
|
elsif !content.nil?
|
data/lib/tins/sexy_singleton.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'tins/string_version'
|
1
2
|
require 'singleton'
|
2
3
|
|
3
4
|
module Tins
|
@@ -12,7 +13,7 @@ module Tins
|
|
12
13
|
class << SexySingleton
|
13
14
|
alias __old_singleton_included__ included
|
14
15
|
|
15
|
-
if RUBY_VERSION
|
16
|
+
if Tins::StringVersion.compare(RUBY_VERSION, :<, "2.7")
|
16
17
|
def included(klass)
|
17
18
|
__old_singleton_included__(klass)
|
18
19
|
(class << klass; self; end).class_eval do
|
data/lib/tins/string_version.rb
CHANGED
data/lib/tins/time_dummy.rb
CHANGED
data/lib/tins/timed_cache.rb
CHANGED
data/lib/tins/token.rb
CHANGED
@@ -15,7 +15,11 @@ module Tins
|
|
15
15
|
|
16
16
|
BASE32_EXTENDED_HEX_ALPHABET = "0123456789ABCDEFGHIJKLMNOPQRSTUV".freeze
|
17
17
|
|
18
|
-
|
18
|
+
BASE16_UPPERCASE_ALPHABET = "0123456789ABCDEF".freeze
|
19
|
+
|
20
|
+
BASE16_LOWERCASE_ALPHABET = "0123456789abcdef".freeze
|
21
|
+
|
22
|
+
BASE16_ALPHABET = BASE16_UPPERCASE_ALPHABET
|
19
23
|
|
20
24
|
def initialize(bits: 128, length: nil, alphabet: DEFAULT_ALPHABET, random: SecureRandom)
|
21
25
|
alphabet.size > 1 or raise ArgumentError, 'need at least 2 symbols in alphabet'
|
data/lib/tins/uniq_by.rb
CHANGED
@@ -1,8 +1,21 @@
|
|
1
|
+
require 'tins/string_version'
|
2
|
+
|
1
3
|
module Tins
|
2
4
|
module UniqBy
|
3
|
-
|
4
|
-
|
5
|
-
|
5
|
+
if Tins::StringVersion.compare(RUBY_VERSION, :<=, "1.8")
|
6
|
+
def uniq_by(&block)
|
7
|
+
block ||= lambda { |x| x }
|
8
|
+
inject({}) { |h, e| h[ block.call(e) ] ||= e; h }.values
|
9
|
+
end
|
10
|
+
else
|
11
|
+
require 'tins/deprecate'
|
12
|
+
extend Tins::Deprecate
|
13
|
+
|
14
|
+
deprecate method:
|
15
|
+
def uniq_by(&block)
|
16
|
+
uniq(&block)
|
17
|
+
end,
|
18
|
+
new_method: :uniq
|
6
19
|
end
|
7
20
|
end
|
8
21
|
end
|
data/lib/tins/version.rb
CHANGED
data/lib/tins/xt/count_by.rb
CHANGED
data/lib/tins/xt/uniq_by.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'tins/string_version'
|
1
2
|
require 'tins/uniq_by'
|
2
3
|
|
3
4
|
module Tins
|
@@ -6,10 +7,19 @@ module Tins
|
|
6
7
|
end
|
7
8
|
|
8
9
|
class ::Array
|
9
|
-
|
10
|
+
if Tins::StringVersion.compare(RUBY_VERSION, :<=, "1.8")
|
11
|
+
include UniqBy
|
12
|
+
|
13
|
+
def uniq_by!(&b)
|
14
|
+
replace uniq_by(&b)
|
15
|
+
end
|
16
|
+
else
|
17
|
+
require 'tins/deprecate'
|
18
|
+
extend Tins::Deprecate
|
10
19
|
|
11
|
-
|
12
|
-
|
20
|
+
deprecate method:
|
21
|
+
alias_method(:uniq_by!, :uniq!),
|
22
|
+
new_method: :uniq!
|
13
23
|
end
|
14
24
|
end
|
15
25
|
end
|
data/lib/tins/xt.rb
CHANGED
data/lib/tins.rb
CHANGED
data/tests/annotate_test.rb
CHANGED
data/tests/bijection_test.rb
CHANGED
data/tests/concern_test.rb
CHANGED
data/tests/date_dummy_test.rb
CHANGED
data/tests/delegate_test.rb
CHANGED
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Tins
|
4
|
+
class DeprecateTest < Test::Unit::TestCase
|
5
|
+
class A < Array
|
6
|
+
attr_reader :warned
|
7
|
+
|
8
|
+
def warn(message)
|
9
|
+
@warned = message if message =~ /DEPRECATION/
|
10
|
+
end
|
11
|
+
|
12
|
+
extend Tins::Deprecate
|
13
|
+
deprecate method:
|
14
|
+
def zum_felde
|
15
|
+
to_a
|
16
|
+
end,
|
17
|
+
new_method: :to_a
|
18
|
+
|
19
|
+
extend Tins::Deprecate
|
20
|
+
deprecate method:
|
21
|
+
def zum_vektor
|
22
|
+
to_a
|
23
|
+
end,
|
24
|
+
message: '[DEPRECATION] method `%{method}` is obsolete.'
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_deprecate
|
28
|
+
a = A[ 1, 2 ]
|
29
|
+
assert_nil a.warned
|
30
|
+
assert_equal [ 1, 2 ], a.zum_felde
|
31
|
+
assert_match(/zum_felde` is deprecated/, a.warned)
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_deprecate_with_message
|
35
|
+
a = A[ 1, 2 ]
|
36
|
+
assert_nil a.warned
|
37
|
+
assert_equal [ 1, 2 ], a.zum_vektor
|
38
|
+
assert_match(/zum_vektor` is obsolete/, a.warned)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
data/tests/dslkit_test.rb
CHANGED
data/tests/duration_test.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'test_helper'
|
2
|
-
require 'tins'
|
3
2
|
|
4
3
|
module Tins
|
5
4
|
class DurationTest < Test::Unit::TestCase
|
@@ -76,6 +75,24 @@ module Tins
|
|
76
75
|
assert_true duration.negative?
|
77
76
|
assert_false Tins::Duration.new(42).negative?
|
78
77
|
end
|
78
|
+
|
79
|
+
def test_parse_roundtrip
|
80
|
+
duration_string = '6+05:04:03.210'
|
81
|
+
seconds = Tins::Duration.parse(duration_string)
|
82
|
+
assert_equal duration_string, Tins::Duration.new(seconds).to_s
|
83
|
+
end
|
84
|
+
|
85
|
+
def test_parse_duration_instance
|
86
|
+
duration_string = '6+05:04:03.210'
|
87
|
+
duration = Tins::Duration.new(536643.21)
|
88
|
+
seconds = Tins::Duration.parse(duration)
|
89
|
+
assert_equal duration_string, Tins::Duration.new(seconds).to_s
|
90
|
+
end
|
91
|
+
|
92
|
+
def test_parse_percentage
|
93
|
+
duration_string = '1%2'
|
94
|
+
seconds = Tins::Duration.parse(duration_string, template: '%h%%%m')
|
95
|
+
assert_equal seconds, 3720
|
96
|
+
end
|
79
97
|
end
|
80
98
|
end
|
81
|
-
|
data/tests/dynamic_scope_test.rb
CHANGED
data/tests/find_test.rb
CHANGED
data/tests/from_module_test.rb
CHANGED
data/tests/generator_test.rb
CHANGED
data/tests/go_test.rb
CHANGED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'tins/xt/hash_bfs'
|
3
|
+
|
4
|
+
module Tins
|
5
|
+
class HashBFSTest < Test::Unit::TestCase
|
6
|
+
def setup
|
7
|
+
@hash = { a: 'foo', b: [ { c: 'baz' }, { d: 'quux' }, [ 'blub' ] ] }
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_without_nodes
|
11
|
+
results = []
|
12
|
+
@hash.bfs { |*a| results.push(a) }
|
13
|
+
assert_equal [[:a, "foo"], [:c, "baz"], [:d, "quux"], [0, "blub"]], results
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_with_nodes
|
17
|
+
results = []
|
18
|
+
@hash.bfs(include_nodes: true) { |*a| results.push(a) }
|
19
|
+
assert_equal(
|
20
|
+
[[nil, {a:"foo", b:[{c:"baz"}, {d:"quux"}, ["blub"]]}], [:a, "foo"],
|
21
|
+
[:b, [{c:"baz"}, {d:"quux"}, ["blub"]]], [0, {c:"baz"}], [1, {d:"quux"}],
|
22
|
+
[2, ["blub"]], [:c, "baz"], [:d, "quux"], [0, "blub"]], results
|
23
|
+
)
|
24
|
+
assert_equal 9, results.size
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_with_nodes_with_circle
|
28
|
+
results = []
|
29
|
+
@hash[:b].last << @hash
|
30
|
+
@hash.bfs(include_nodes: true) { |*a| results.push(a) }
|
31
|
+
assert_equal 9, results.size
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
data/tests/implement_test.rb
CHANGED
data/tests/limited_test.rb
CHANGED
data/tests/lines_file_test.rb
CHANGED
data/tests/lru_cache_test.rb
CHANGED
data/tests/memoize_test.rb
CHANGED
data/tests/minimize_test.rb
CHANGED
data/tests/module_group_test.rb
CHANGED
data/tests/named_set_test.rb
CHANGED
data/tests/null_test.rb
CHANGED
data/tests/require_maybe_test.rb
CHANGED
data/tests/scope_test.rb
CHANGED
data/tests/secure_write_test.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
require 'tempfile'
|
3
|
-
require '
|
3
|
+
require 'pathname'
|
4
4
|
|
5
5
|
module Tins
|
6
6
|
class TinsSecureWriteTest < Test::Unit::TestCase
|
@@ -15,6 +15,11 @@ module Tins
|
|
15
15
|
assert_raise(ArgumentError) { A.secure_write }
|
16
16
|
end
|
17
17
|
|
18
|
+
def test_secure_write_with_pathname
|
19
|
+
assert_equal 4, A.secure_write(fn = Pathname.new(Dir.tmpdir).join("A_file.#$$"), 'test')
|
20
|
+
assert_equal 'test', File.read(fn)
|
21
|
+
end
|
22
|
+
|
18
23
|
module B
|
19
24
|
extend Write
|
20
25
|
end
|
data/tests/subhash_test.rb
CHANGED
data/tests/test_helper.rb
CHANGED
data/tests/time_dummy_test.rb
CHANGED
data/tests/time_freezer_test.rb
CHANGED
data/tests/token_test.rb
CHANGED
data/tests/unit_test.rb
CHANGED
data/tins.gemspec
CHANGED
@@ -1,30 +1,29 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
|
-
# stub: tins 1.
|
2
|
+
# stub: tins 1.35.0 ruby lib
|
3
3
|
|
4
4
|
Gem::Specification.new do |s|
|
5
5
|
s.name = "tins".freeze
|
6
|
-
s.version = "1.
|
6
|
+
s.version = "1.35.0".freeze
|
7
7
|
|
8
8
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
9
9
|
s.require_paths = ["lib".freeze]
|
10
10
|
s.authors = ["Florian Frank".freeze]
|
11
|
-
s.date = "2024-
|
11
|
+
s.date = "2024-10-10"
|
12
12
|
s.description = "All the stuff that isn't good/big enough for a real library.".freeze
|
13
13
|
s.email = "flori@ping.de".freeze
|
14
|
-
s.extra_rdoc_files = ["README.md".freeze, "lib/dslkit.rb".freeze, "lib/dslkit/polite.rb".freeze, "lib/dslkit/rude.rb".freeze, "lib/spruz.rb".freeze, "lib/tins.rb".freeze, "lib/tins/alias.rb".freeze, "lib/tins/annotate.rb".freeze, "lib/tins/ask_and_send.rb".freeze, "lib/tins/attempt.rb".freeze, "lib/tins/bijection.rb".freeze, "lib/tins/case_predicate.rb".freeze, "lib/tins/complete.rb".freeze, "lib/tins/concern.rb".freeze, "lib/tins/count_by.rb".freeze, "lib/tins/date_dummy.rb".freeze, "lib/tins/date_time_dummy.rb".freeze, "lib/tins/deep_const_get.rb".freeze, "lib/tins/deep_dup.rb".freeze, "lib/tins/dslkit.rb".freeze, "lib/tins/duration.rb".freeze, "lib/tins/expose.rb".freeze, "lib/tins/extract_last_argument_options.rb".freeze, "lib/tins/file_binary.rb".freeze, "lib/tins/find.rb".freeze, "lib/tins/generator.rb".freeze, "lib/tins/go.rb".freeze, "lib/tins/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/hash_union.rb".freeze, "lib/tins/if_predicate.rb".freeze, "lib/tins/implement.rb".freeze, "lib/tins/limited.rb".freeze, "lib/tins/lines_file.rb".freeze, "lib/tins/lru_cache.rb".freeze, "lib/tins/memoize.rb".freeze, "lib/tins/method_description.rb".freeze, "lib/tins/minimize.rb".freeze, "lib/tins/module_group.rb".freeze, "lib/tins/named_set.rb".freeze, "lib/tins/null.rb".freeze, "lib/tins/once.rb".freeze, "lib/tins/p.rb".freeze, "lib/tins/partial_application.rb".freeze, "lib/tins/proc_compose.rb".freeze, "lib/tins/proc_prelude.rb".freeze, "lib/tins/range_plus.rb".freeze, "lib/tins/require_maybe.rb".freeze, "lib/tins/responding.rb".freeze, "lib/tins/secure_write.rb".freeze, "lib/tins/sexy_singleton.rb".freeze, "lib/tins/string_byte_order_mark.rb".freeze, "lib/tins/string_camelize.rb".freeze, "lib/tins/string_underscore.rb".freeze, "lib/tins/string_version.rb".freeze, "lib/tins/subhash.rb".freeze, "lib/tins/temp_io.rb".freeze, "lib/tins/temp_io_enum.rb".freeze, "lib/tins/terminal.rb".freeze, "lib/tins/thread_local.rb".freeze, "lib/tins/time_dummy.rb".freeze, "lib/tins/timed_cache.rb".freeze, "lib/tins/to.rb".freeze, "lib/tins/to_proc.rb".freeze, "lib/tins/token.rb".freeze, "lib/tins/uniq_by.rb".freeze, "lib/tins/unit.rb".freeze, "lib/tins/version.rb".freeze, "lib/tins/write.rb".freeze, "lib/tins/xt.rb".freeze, "lib/tins/xt/annotate.rb".freeze, "lib/tins/xt/ask_and_send.rb".freeze, "lib/tins/xt/attempt.rb".freeze, "lib/tins/xt/blank.rb".freeze, "lib/tins/xt/case_predicate.rb".freeze, "lib/tins/xt/complete.rb".freeze, "lib/tins/xt/concern.rb".freeze, "lib/tins/xt/count_by.rb".freeze, "lib/tins/xt/date_dummy.rb".freeze, "lib/tins/xt/date_time_dummy.rb".freeze, "lib/tins/xt/deep_const_get.rb".freeze, "lib/tins/xt/deep_dup.rb".freeze, "lib/tins/xt/dslkit.rb".freeze, "lib/tins/xt/expose.rb".freeze, "lib/tins/xt/extract_last_argument_options.rb".freeze, "lib/tins/xt/file_binary.rb".freeze, "lib/tins/xt/full.rb".freeze, "lib/tins/xt/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/xt/hash_union.rb".freeze, "lib/tins/xt/if_predicate.rb".freeze, "lib/tins/xt/implement.rb".freeze, "lib/tins/xt/irb.rb".freeze, "lib/tins/xt/method_description.rb".freeze, "lib/tins/xt/named.rb".freeze, "lib/tins/xt/null.rb".freeze, "lib/tins/xt/p.rb".freeze, "lib/tins/xt/partial_application.rb".freeze, "lib/tins/xt/proc_compose.rb".freeze, "lib/tins/xt/proc_prelude.rb".freeze, "lib/tins/xt/range_plus.rb".freeze, "lib/tins/xt/require_maybe.rb".freeze, "lib/tins/xt/responding.rb".freeze, "lib/tins/xt/secure_write.rb".freeze, "lib/tins/xt/sexy_singleton.rb".freeze, "lib/tins/xt/string.rb".freeze, "lib/tins/xt/string_byte_order_mark.rb".freeze, "lib/tins/xt/string_camelize.rb".freeze, "lib/tins/xt/string_underscore.rb".freeze, "lib/tins/xt/string_version.rb".freeze, "lib/tins/xt/subhash.rb".freeze, "lib/tins/xt/temp_io.rb".freeze, "lib/tins/xt/time_dummy.rb".freeze, "lib/tins/xt/time_freezer.rb".freeze, "lib/tins/xt/to.rb".freeze, "lib/tins/xt/uniq_by.rb".freeze, "lib/tins/xt/write.rb".freeze]
|
15
|
-
s.files = ["COPYING".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "examples/add_one.png".freeze, "examples/add_one.stm".freeze, "examples/bb3.png".freeze, "examples/bb3.stm".freeze, "examples/concatenate_compare.mtm".freeze, "examples/concatenate_compare.png".freeze, "examples/length_difference.mtm".freeze, "examples/length_difference.png".freeze, "examples/let.rb".freeze, "examples/mail.rb".freeze, "examples/minsky.rb".freeze, "examples/multiply.reg".freeze, "examples/null_pattern.rb".freeze, "examples/ones_difference-mtm.png".freeze, "examples/ones_difference-stm.png".freeze, "examples/ones_difference.mtm".freeze, "examples/ones_difference.stm".freeze, "examples/prefix-equals-suffix-reversed-with-infix.png".freeze, "examples/prefix-equals-suffix-reversed-with-infix.stm".freeze, "examples/recipe.rb".freeze, "examples/recipe2.rb".freeze, "examples/recipe_common.rb".freeze, "examples/subtract.reg".freeze, "examples/turing-graph.rb".freeze, "examples/turing.rb".freeze, "lib/dslkit.rb".freeze, "lib/dslkit/polite.rb".freeze, "lib/dslkit/rude.rb".freeze, "lib/spruz".freeze, "lib/spruz.rb".freeze, "lib/tins.rb".freeze, "lib/tins/alias.rb".freeze, "lib/tins/annotate.rb".freeze, "lib/tins/ask_and_send.rb".freeze, "lib/tins/attempt.rb".freeze, "lib/tins/bijection.rb".freeze, "lib/tins/case_predicate.rb".freeze, "lib/tins/complete.rb".freeze, "lib/tins/concern.rb".freeze, "lib/tins/count_by.rb".freeze, "lib/tins/date_dummy.rb".freeze, "lib/tins/date_time_dummy.rb".freeze, "lib/tins/deep_const_get.rb".freeze, "lib/tins/deep_dup.rb".freeze, "lib/tins/dslkit.rb".freeze, "lib/tins/duration.rb".freeze, "lib/tins/expose.rb".freeze, "lib/tins/extract_last_argument_options.rb".freeze, "lib/tins/file_binary.rb".freeze, "lib/tins/find.rb".freeze, "lib/tins/generator.rb".freeze, "lib/tins/go.rb".freeze, "lib/tins/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/hash_union.rb".freeze, "lib/tins/if_predicate.rb".freeze, "lib/tins/implement.rb".freeze, "lib/tins/limited.rb".freeze, "lib/tins/lines_file.rb".freeze, "lib/tins/lru_cache.rb".freeze, "lib/tins/memoize.rb".freeze, "lib/tins/method_description.rb".freeze, "lib/tins/minimize.rb".freeze, "lib/tins/module_group.rb".freeze, "lib/tins/named_set.rb".freeze, "lib/tins/null.rb".freeze, "lib/tins/once.rb".freeze, "lib/tins/p.rb".freeze, "lib/tins/partial_application.rb".freeze, "lib/tins/proc_compose.rb".freeze, "lib/tins/proc_prelude.rb".freeze, "lib/tins/range_plus.rb".freeze, "lib/tins/require_maybe.rb".freeze, "lib/tins/responding.rb".freeze, "lib/tins/secure_write.rb".freeze, "lib/tins/sexy_singleton.rb".freeze, "lib/tins/string_byte_order_mark.rb".freeze, "lib/tins/string_camelize.rb".freeze, "lib/tins/string_underscore.rb".freeze, "lib/tins/string_version.rb".freeze, "lib/tins/subhash.rb".freeze, "lib/tins/temp_io.rb".freeze, "lib/tins/temp_io_enum.rb".freeze, "lib/tins/terminal.rb".freeze, "lib/tins/thread_local.rb".freeze, "lib/tins/time_dummy.rb".freeze, "lib/tins/timed_cache.rb".freeze, "lib/tins/to.rb".freeze, "lib/tins/to_proc.rb".freeze, "lib/tins/token.rb".freeze, "lib/tins/uniq_by.rb".freeze, "lib/tins/unit.rb".freeze, "lib/tins/version.rb".freeze, "lib/tins/write.rb".freeze, "lib/tins/xt.rb".freeze, "lib/tins/xt/annotate.rb".freeze, "lib/tins/xt/ask_and_send.rb".freeze, "lib/tins/xt/attempt.rb".freeze, "lib/tins/xt/blank.rb".freeze, "lib/tins/xt/case_predicate.rb".freeze, "lib/tins/xt/complete.rb".freeze, "lib/tins/xt/concern.rb".freeze, "lib/tins/xt/count_by.rb".freeze, "lib/tins/xt/date_dummy.rb".freeze, "lib/tins/xt/date_time_dummy.rb".freeze, "lib/tins/xt/deep_const_get.rb".freeze, "lib/tins/xt/deep_dup.rb".freeze, "lib/tins/xt/dslkit.rb".freeze, "lib/tins/xt/expose.rb".freeze, "lib/tins/xt/extract_last_argument_options.rb".freeze, "lib/tins/xt/file_binary.rb".freeze, "lib/tins/xt/full.rb".freeze, "lib/tins/xt/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/xt/hash_union.rb".freeze, "lib/tins/xt/if_predicate.rb".freeze, "lib/tins/xt/implement.rb".freeze, "lib/tins/xt/irb.rb".freeze, "lib/tins/xt/method_description.rb".freeze, "lib/tins/xt/named.rb".freeze, "lib/tins/xt/null.rb".freeze, "lib/tins/xt/p.rb".freeze, "lib/tins/xt/partial_application.rb".freeze, "lib/tins/xt/proc_compose.rb".freeze, "lib/tins/xt/proc_prelude.rb".freeze, "lib/tins/xt/range_plus.rb".freeze, "lib/tins/xt/require_maybe.rb".freeze, "lib/tins/xt/responding.rb".freeze, "lib/tins/xt/secure_write.rb".freeze, "lib/tins/xt/sexy_singleton.rb".freeze, "lib/tins/xt/string.rb".freeze, "lib/tins/xt/string_byte_order_mark.rb".freeze, "lib/tins/xt/string_camelize.rb".freeze, "lib/tins/xt/string_underscore.rb".freeze, "lib/tins/xt/string_version.rb".freeze, "lib/tins/xt/subhash.rb".freeze, "lib/tins/xt/temp_io.rb".freeze, "lib/tins/xt/time_dummy.rb".freeze, "lib/tins/xt/time_freezer.rb".freeze, "lib/tins/xt/to.rb".freeze, "lib/tins/xt/uniq_by.rb".freeze, "lib/tins/xt/write.rb".freeze, "tests/annotate_test.rb".freeze, "tests/ask_and_send_test.rb".freeze, "tests/attempt_test.rb".freeze, "tests/bijection_test.rb".freeze, "tests/blank_full_test.rb".freeze, "tests/case_predicate_test.rb".freeze, "tests/concern_test.rb".freeze, "tests/count_by_test.rb".freeze, "tests/date_dummy_test.rb".freeze, "tests/date_time_dummy_test.rb".freeze, "tests/deep_const_get_test.rb".freeze, "tests/deep_dup_test.rb".freeze, "tests/delegate_test.rb".freeze, "tests/dslkit_test.rb".freeze, "tests/duration_test.rb".freeze, "tests/dynamic_scope_test.rb".freeze, "tests/expose_test.rb".freeze, "tests/extract_last_argument_options_test.rb".freeze, "tests/file_binary_test.rb".freeze, "tests/find_test.rb".freeze, "tests/from_module_test.rb".freeze, "tests/generator_test.rb".freeze, "tests/go_test.rb".freeze, "tests/hash_symbolize_keys_recursive_test.rb".freeze, "tests/hash_union_test.rb".freeze, "tests/if_predicate_test.rb".freeze, "tests/implement_test.rb".freeze, "tests/limited_test.rb".freeze, "tests/lines_file_test.rb".freeze, "tests/lru_cache_test.rb".freeze, "tests/memoize_test.rb".freeze, "tests/method_description_test.rb".freeze, "tests/minimize_test.rb".freeze, "tests/module_group_test.rb".freeze, "tests/named_set_test.rb".freeze, "tests/named_test.rb".freeze, "tests/null_test.rb".freeze, "tests/p_test.rb".freeze, "tests/partial_application_test.rb".freeze, "tests/proc_compose_test.rb".freeze, "tests/proc_prelude_test.rb".freeze, "tests/range_plus_test.rb".freeze, "tests/require_maybe_test.rb".freeze, "tests/responding_test.rb".freeze, "tests/rotate_test.rb".freeze, "tests/scope_test.rb".freeze, "tests/secure_write_test.rb".freeze, "tests/sexy_singleton_test.rb".freeze, "tests/string_byte_order_mark_test.rb".freeze, "tests/string_camelize_test.rb".freeze, "tests/string_underscore_test.rb".freeze, "tests/string_version_test.rb".freeze, "tests/subhash_test.rb".freeze, "tests/temp_io_test.rb".freeze, "tests/test_helper.rb".freeze, "tests/time_dummy_test.rb".freeze, "tests/time_freezer_test.rb".freeze, "tests/to_test.rb".freeze, "tests/token_test.rb".freeze, "tests/uniq_by_test.rb".freeze, "tests/unit_test.rb".freeze, "tins.gemspec".freeze]
|
14
|
+
s.extra_rdoc_files = ["README.md".freeze, "lib/dslkit.rb".freeze, "lib/dslkit/polite.rb".freeze, "lib/dslkit/rude.rb".freeze, "lib/spruz.rb".freeze, "lib/tins.rb".freeze, "lib/tins/alias.rb".freeze, "lib/tins/annotate.rb".freeze, "lib/tins/ask_and_send.rb".freeze, "lib/tins/attempt.rb".freeze, "lib/tins/bijection.rb".freeze, "lib/tins/case_predicate.rb".freeze, "lib/tins/complete.rb".freeze, "lib/tins/concern.rb".freeze, "lib/tins/count_by.rb".freeze, "lib/tins/date_dummy.rb".freeze, "lib/tins/date_time_dummy.rb".freeze, "lib/tins/deep_const_get.rb".freeze, "lib/tins/deep_dup.rb".freeze, "lib/tins/deprecate.rb".freeze, "lib/tins/dslkit.rb".freeze, "lib/tins/duration.rb".freeze, "lib/tins/expose.rb".freeze, "lib/tins/extract_last_argument_options.rb".freeze, "lib/tins/file_binary.rb".freeze, "lib/tins/find.rb".freeze, "lib/tins/generator.rb".freeze, "lib/tins/go.rb".freeze, "lib/tins/hash_bfs.rb".freeze, "lib/tins/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/hash_union.rb".freeze, "lib/tins/if_predicate.rb".freeze, "lib/tins/implement.rb".freeze, "lib/tins/limited.rb".freeze, "lib/tins/lines_file.rb".freeze, "lib/tins/lru_cache.rb".freeze, "lib/tins/memoize.rb".freeze, "lib/tins/method_description.rb".freeze, "lib/tins/minimize.rb".freeze, "lib/tins/module_group.rb".freeze, "lib/tins/named_set.rb".freeze, "lib/tins/null.rb".freeze, "lib/tins/once.rb".freeze, "lib/tins/p.rb".freeze, "lib/tins/partial_application.rb".freeze, "lib/tins/proc_compose.rb".freeze, "lib/tins/proc_prelude.rb".freeze, "lib/tins/range_plus.rb".freeze, "lib/tins/require_maybe.rb".freeze, "lib/tins/responding.rb".freeze, "lib/tins/secure_write.rb".freeze, "lib/tins/sexy_singleton.rb".freeze, "lib/tins/string_byte_order_mark.rb".freeze, "lib/tins/string_camelize.rb".freeze, "lib/tins/string_underscore.rb".freeze, "lib/tins/string_version.rb".freeze, "lib/tins/subhash.rb".freeze, "lib/tins/temp_io.rb".freeze, "lib/tins/temp_io_enum.rb".freeze, "lib/tins/terminal.rb".freeze, "lib/tins/thread_local.rb".freeze, "lib/tins/time_dummy.rb".freeze, "lib/tins/timed_cache.rb".freeze, "lib/tins/to.rb".freeze, "lib/tins/to_proc.rb".freeze, "lib/tins/token.rb".freeze, "lib/tins/uniq_by.rb".freeze, "lib/tins/unit.rb".freeze, "lib/tins/version.rb".freeze, "lib/tins/write.rb".freeze, "lib/tins/xt.rb".freeze, "lib/tins/xt/annotate.rb".freeze, "lib/tins/xt/ask_and_send.rb".freeze, "lib/tins/xt/attempt.rb".freeze, "lib/tins/xt/blank.rb".freeze, "lib/tins/xt/case_predicate.rb".freeze, "lib/tins/xt/complete.rb".freeze, "lib/tins/xt/concern.rb".freeze, "lib/tins/xt/count_by.rb".freeze, "lib/tins/xt/date_dummy.rb".freeze, "lib/tins/xt/date_time_dummy.rb".freeze, "lib/tins/xt/deep_const_get.rb".freeze, "lib/tins/xt/deep_dup.rb".freeze, "lib/tins/xt/deprecate.rb".freeze, "lib/tins/xt/dslkit.rb".freeze, "lib/tins/xt/expose.rb".freeze, "lib/tins/xt/extract_last_argument_options.rb".freeze, "lib/tins/xt/file_binary.rb".freeze, "lib/tins/xt/full.rb".freeze, "lib/tins/xt/hash_bfs.rb".freeze, "lib/tins/xt/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/xt/hash_union.rb".freeze, "lib/tins/xt/if_predicate.rb".freeze, "lib/tins/xt/implement.rb".freeze, "lib/tins/xt/irb.rb".freeze, "lib/tins/xt/method_description.rb".freeze, "lib/tins/xt/named.rb".freeze, "lib/tins/xt/null.rb".freeze, "lib/tins/xt/p.rb".freeze, "lib/tins/xt/partial_application.rb".freeze, "lib/tins/xt/proc_compose.rb".freeze, "lib/tins/xt/proc_prelude.rb".freeze, "lib/tins/xt/range_plus.rb".freeze, "lib/tins/xt/require_maybe.rb".freeze, "lib/tins/xt/responding.rb".freeze, "lib/tins/xt/secure_write.rb".freeze, "lib/tins/xt/sexy_singleton.rb".freeze, "lib/tins/xt/string.rb".freeze, "lib/tins/xt/string_byte_order_mark.rb".freeze, "lib/tins/xt/string_camelize.rb".freeze, "lib/tins/xt/string_underscore.rb".freeze, "lib/tins/xt/string_version.rb".freeze, "lib/tins/xt/subhash.rb".freeze, "lib/tins/xt/temp_io.rb".freeze, "lib/tins/xt/time_dummy.rb".freeze, "lib/tins/xt/time_freezer.rb".freeze, "lib/tins/xt/to.rb".freeze, "lib/tins/xt/uniq_by.rb".freeze, "lib/tins/xt/write.rb".freeze]
|
15
|
+
s.files = ["CHANGES.md".freeze, "COPYING".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "examples/add_one.png".freeze, "examples/add_one.stm".freeze, "examples/bb3.png".freeze, "examples/bb3.stm".freeze, "examples/concatenate_compare.mtm".freeze, "examples/concatenate_compare.png".freeze, "examples/length_difference.mtm".freeze, "examples/length_difference.png".freeze, "examples/let.rb".freeze, "examples/mail.rb".freeze, "examples/minsky.rb".freeze, "examples/multiply.reg".freeze, "examples/null_pattern.rb".freeze, "examples/ones_difference-mtm.png".freeze, "examples/ones_difference-stm.png".freeze, "examples/ones_difference.mtm".freeze, "examples/ones_difference.stm".freeze, "examples/prefix-equals-suffix-reversed-with-infix.png".freeze, "examples/prefix-equals-suffix-reversed-with-infix.stm".freeze, "examples/recipe.rb".freeze, "examples/recipe2.rb".freeze, "examples/recipe_common.rb".freeze, "examples/subtract.reg".freeze, "examples/turing-graph.rb".freeze, "examples/turing.rb".freeze, "lib/dslkit.rb".freeze, "lib/dslkit/polite.rb".freeze, "lib/dslkit/rude.rb".freeze, "lib/spruz".freeze, "lib/spruz.rb".freeze, "lib/tins.rb".freeze, "lib/tins/alias.rb".freeze, "lib/tins/annotate.rb".freeze, "lib/tins/ask_and_send.rb".freeze, "lib/tins/attempt.rb".freeze, "lib/tins/bijection.rb".freeze, "lib/tins/case_predicate.rb".freeze, "lib/tins/complete.rb".freeze, "lib/tins/concern.rb".freeze, "lib/tins/count_by.rb".freeze, "lib/tins/date_dummy.rb".freeze, "lib/tins/date_time_dummy.rb".freeze, "lib/tins/deep_const_get.rb".freeze, "lib/tins/deep_dup.rb".freeze, "lib/tins/deprecate.rb".freeze, "lib/tins/dslkit.rb".freeze, "lib/tins/duration.rb".freeze, "lib/tins/expose.rb".freeze, "lib/tins/extract_last_argument_options.rb".freeze, "lib/tins/file_binary.rb".freeze, "lib/tins/find.rb".freeze, "lib/tins/generator.rb".freeze, "lib/tins/go.rb".freeze, "lib/tins/hash_bfs.rb".freeze, "lib/tins/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/hash_union.rb".freeze, "lib/tins/if_predicate.rb".freeze, "lib/tins/implement.rb".freeze, "lib/tins/limited.rb".freeze, "lib/tins/lines_file.rb".freeze, "lib/tins/lru_cache.rb".freeze, "lib/tins/memoize.rb".freeze, "lib/tins/method_description.rb".freeze, "lib/tins/minimize.rb".freeze, "lib/tins/module_group.rb".freeze, "lib/tins/named_set.rb".freeze, "lib/tins/null.rb".freeze, "lib/tins/once.rb".freeze, "lib/tins/p.rb".freeze, "lib/tins/partial_application.rb".freeze, "lib/tins/proc_compose.rb".freeze, "lib/tins/proc_prelude.rb".freeze, "lib/tins/range_plus.rb".freeze, "lib/tins/require_maybe.rb".freeze, "lib/tins/responding.rb".freeze, "lib/tins/secure_write.rb".freeze, "lib/tins/sexy_singleton.rb".freeze, "lib/tins/string_byte_order_mark.rb".freeze, "lib/tins/string_camelize.rb".freeze, "lib/tins/string_underscore.rb".freeze, "lib/tins/string_version.rb".freeze, "lib/tins/subhash.rb".freeze, "lib/tins/temp_io.rb".freeze, "lib/tins/temp_io_enum.rb".freeze, "lib/tins/terminal.rb".freeze, "lib/tins/thread_local.rb".freeze, "lib/tins/time_dummy.rb".freeze, "lib/tins/timed_cache.rb".freeze, "lib/tins/to.rb".freeze, "lib/tins/to_proc.rb".freeze, "lib/tins/token.rb".freeze, "lib/tins/uniq_by.rb".freeze, "lib/tins/unit.rb".freeze, "lib/tins/version.rb".freeze, "lib/tins/write.rb".freeze, "lib/tins/xt.rb".freeze, "lib/tins/xt/annotate.rb".freeze, "lib/tins/xt/ask_and_send.rb".freeze, "lib/tins/xt/attempt.rb".freeze, "lib/tins/xt/blank.rb".freeze, "lib/tins/xt/case_predicate.rb".freeze, "lib/tins/xt/complete.rb".freeze, "lib/tins/xt/concern.rb".freeze, "lib/tins/xt/count_by.rb".freeze, "lib/tins/xt/date_dummy.rb".freeze, "lib/tins/xt/date_time_dummy.rb".freeze, "lib/tins/xt/deep_const_get.rb".freeze, "lib/tins/xt/deep_dup.rb".freeze, "lib/tins/xt/deprecate.rb".freeze, "lib/tins/xt/dslkit.rb".freeze, "lib/tins/xt/expose.rb".freeze, "lib/tins/xt/extract_last_argument_options.rb".freeze, "lib/tins/xt/file_binary.rb".freeze, "lib/tins/xt/full.rb".freeze, "lib/tins/xt/hash_bfs.rb".freeze, "lib/tins/xt/hash_symbolize_keys_recursive.rb".freeze, "lib/tins/xt/hash_union.rb".freeze, "lib/tins/xt/if_predicate.rb".freeze, "lib/tins/xt/implement.rb".freeze, "lib/tins/xt/irb.rb".freeze, "lib/tins/xt/method_description.rb".freeze, "lib/tins/xt/named.rb".freeze, "lib/tins/xt/null.rb".freeze, "lib/tins/xt/p.rb".freeze, "lib/tins/xt/partial_application.rb".freeze, "lib/tins/xt/proc_compose.rb".freeze, "lib/tins/xt/proc_prelude.rb".freeze, "lib/tins/xt/range_plus.rb".freeze, "lib/tins/xt/require_maybe.rb".freeze, "lib/tins/xt/responding.rb".freeze, "lib/tins/xt/secure_write.rb".freeze, "lib/tins/xt/sexy_singleton.rb".freeze, "lib/tins/xt/string.rb".freeze, "lib/tins/xt/string_byte_order_mark.rb".freeze, "lib/tins/xt/string_camelize.rb".freeze, "lib/tins/xt/string_underscore.rb".freeze, "lib/tins/xt/string_version.rb".freeze, "lib/tins/xt/subhash.rb".freeze, "lib/tins/xt/temp_io.rb".freeze, "lib/tins/xt/time_dummy.rb".freeze, "lib/tins/xt/time_freezer.rb".freeze, "lib/tins/xt/to.rb".freeze, "lib/tins/xt/uniq_by.rb".freeze, "lib/tins/xt/write.rb".freeze, "tests/annotate_test.rb".freeze, "tests/ask_and_send_test.rb".freeze, "tests/attempt_test.rb".freeze, "tests/bijection_test.rb".freeze, "tests/blank_full_test.rb".freeze, "tests/case_predicate_test.rb".freeze, "tests/concern_test.rb".freeze, "tests/count_by_test.rb".freeze, "tests/date_dummy_test.rb".freeze, "tests/date_time_dummy_test.rb".freeze, "tests/deep_const_get_test.rb".freeze, "tests/deep_dup_test.rb".freeze, "tests/delegate_test.rb".freeze, "tests/deprecate_test.rb".freeze, "tests/dslkit_test.rb".freeze, "tests/duration_test.rb".freeze, "tests/dynamic_scope_test.rb".freeze, "tests/expose_test.rb".freeze, "tests/extract_last_argument_options_test.rb".freeze, "tests/file_binary_test.rb".freeze, "tests/find_test.rb".freeze, "tests/from_module_test.rb".freeze, "tests/generator_test.rb".freeze, "tests/go_test.rb".freeze, "tests/hash_bfs_test.rb".freeze, "tests/hash_symbolize_keys_recursive_test.rb".freeze, "tests/hash_union_test.rb".freeze, "tests/if_predicate_test.rb".freeze, "tests/implement_test.rb".freeze, "tests/limited_test.rb".freeze, "tests/lines_file_test.rb".freeze, "tests/lru_cache_test.rb".freeze, "tests/memoize_test.rb".freeze, "tests/method_description_test.rb".freeze, "tests/minimize_test.rb".freeze, "tests/module_group_test.rb".freeze, "tests/named_set_test.rb".freeze, "tests/named_test.rb".freeze, "tests/null_test.rb".freeze, "tests/p_test.rb".freeze, "tests/partial_application_test.rb".freeze, "tests/proc_compose_test.rb".freeze, "tests/proc_prelude_test.rb".freeze, "tests/range_plus_test.rb".freeze, "tests/require_maybe_test.rb".freeze, "tests/responding_test.rb".freeze, "tests/rotate_test.rb".freeze, "tests/scope_test.rb".freeze, "tests/secure_write_test.rb".freeze, "tests/sexy_singleton_test.rb".freeze, "tests/string_byte_order_mark_test.rb".freeze, "tests/string_camelize_test.rb".freeze, "tests/string_underscore_test.rb".freeze, "tests/string_version_test.rb".freeze, "tests/subhash_test.rb".freeze, "tests/temp_io_test.rb".freeze, "tests/test_helper.rb".freeze, "tests/time_dummy_test.rb".freeze, "tests/time_freezer_test.rb".freeze, "tests/to_test.rb".freeze, "tests/token_test.rb".freeze, "tests/uniq_by_test.rb".freeze, "tests/unit_test.rb".freeze, "tins.gemspec".freeze]
|
16
16
|
s.homepage = "https://github.com/flori/tins".freeze
|
17
17
|
s.licenses = ["MIT".freeze]
|
18
18
|
s.rdoc_options = ["--title".freeze, "Tins - Useful stuff.".freeze, "--main".freeze, "README.md".freeze]
|
19
19
|
s.required_ruby_version = Gem::Requirement.new(">= 2.0".freeze)
|
20
|
-
s.rubygems_version = "3.5.
|
20
|
+
s.rubygems_version = "3.5.18".freeze
|
21
21
|
s.summary = "Useful stuff.".freeze
|
22
|
-
s.test_files = ["tests/annotate_test.rb".freeze, "tests/ask_and_send_test.rb".freeze, "tests/attempt_test.rb".freeze, "tests/bijection_test.rb".freeze, "tests/blank_full_test.rb".freeze, "tests/case_predicate_test.rb".freeze, "tests/concern_test.rb".freeze, "tests/count_by_test.rb".freeze, "tests/date_dummy_test.rb".freeze, "tests/date_time_dummy_test.rb".freeze, "tests/deep_const_get_test.rb".freeze, "tests/deep_dup_test.rb".freeze, "tests/delegate_test.rb".freeze, "tests/dslkit_test.rb".freeze, "tests/duration_test.rb".freeze, "tests/dynamic_scope_test.rb".freeze, "tests/expose_test.rb".freeze, "tests/extract_last_argument_options_test.rb".freeze, "tests/file_binary_test.rb".freeze, "tests/find_test.rb".freeze, "tests/from_module_test.rb".freeze, "tests/generator_test.rb".freeze, "tests/go_test.rb".freeze, "tests/hash_symbolize_keys_recursive_test.rb".freeze, "tests/hash_union_test.rb".freeze, "tests/if_predicate_test.rb".freeze, "tests/implement_test.rb".freeze, "tests/limited_test.rb".freeze, "tests/lines_file_test.rb".freeze, "tests/lru_cache_test.rb".freeze, "tests/memoize_test.rb".freeze, "tests/method_description_test.rb".freeze, "tests/minimize_test.rb".freeze, "tests/module_group_test.rb".freeze, "tests/named_set_test.rb".freeze, "tests/named_test.rb".freeze, "tests/null_test.rb".freeze, "tests/p_test.rb".freeze, "tests/partial_application_test.rb".freeze, "tests/proc_compose_test.rb".freeze, "tests/proc_prelude_test.rb".freeze, "tests/range_plus_test.rb".freeze, "tests/require_maybe_test.rb".freeze, "tests/responding_test.rb".freeze, "tests/rotate_test.rb".freeze, "tests/scope_test.rb".freeze, "tests/secure_write_test.rb".freeze, "tests/sexy_singleton_test.rb".freeze, "tests/string_byte_order_mark_test.rb".freeze, "tests/string_camelize_test.rb".freeze, "tests/string_underscore_test.rb".freeze, "tests/string_version_test.rb".freeze, "tests/subhash_test.rb".freeze, "tests/temp_io_test.rb".freeze, "tests/test_helper.rb".freeze, "tests/time_dummy_test.rb".freeze, "tests/time_freezer_test.rb".freeze, "tests/to_test.rb".freeze, "tests/token_test.rb".freeze, "tests/uniq_by_test.rb".freeze, "tests/unit_test.rb".freeze, "tests/annotate_test.rb".freeze, "tests/ask_and_send_test.rb".freeze, "tests/attempt_test.rb".freeze, "tests/bijection_test.rb".freeze, "tests/blank_full_test.rb".freeze, "tests/case_predicate_test.rb".freeze, "tests/concern_test.rb".freeze, "tests/count_by_test.rb".freeze, "tests/date_dummy_test.rb".freeze, "tests/date_time_dummy_test.rb".freeze, "tests/deep_const_get_test.rb".freeze, "tests/deep_dup_test.rb".freeze, "tests/delegate_test.rb".freeze, "tests/dslkit_test.rb".freeze, "tests/duration_test.rb".freeze, "tests/dynamic_scope_test.rb".freeze, "tests/expose_test.rb".freeze, "tests/extract_last_argument_options_test.rb".freeze, "tests/file_binary_test.rb".freeze, "tests/find_test.rb".freeze, "tests/from_module_test.rb".freeze, "tests/generator_test.rb".freeze, "tests/go_test.rb".freeze, "tests/hash_symbolize_keys_recursive_test.rb".freeze, "tests/hash_union_test.rb".freeze, "tests/if_predicate_test.rb".freeze, "tests/implement_test.rb".freeze, "tests/limited_test.rb".freeze, "tests/lines_file_test.rb".freeze, "tests/lru_cache_test.rb".freeze, "tests/memoize_test.rb".freeze, "tests/method_description_test.rb".freeze, "tests/minimize_test.rb".freeze, "tests/module_group_test.rb".freeze, "tests/named_set_test.rb".freeze, "tests/named_test.rb".freeze, "tests/null_test.rb".freeze, "tests/p_test.rb".freeze, "tests/partial_application_test.rb".freeze, "tests/proc_compose_test.rb".freeze, "tests/proc_prelude_test.rb".freeze, "tests/range_plus_test.rb".freeze, "tests/require_maybe_test.rb".freeze, "tests/responding_test.rb".freeze, "tests/rotate_test.rb".freeze, "tests/scope_test.rb".freeze, "tests/secure_write_test.rb".freeze, "tests/sexy_singleton_test.rb".freeze, "tests/string_byte_order_mark_test.rb".freeze, "tests/string_camelize_test.rb".freeze, "tests/string_underscore_test.rb".freeze, "tests/string_version_test.rb".freeze, "tests/subhash_test.rb".freeze, "tests/temp_io_test.rb".freeze, "tests/time_dummy_test.rb".freeze, "tests/time_freezer_test.rb".freeze, "tests/to_test.rb".freeze, "tests/token_test.rb".freeze, "tests/uniq_by_test.rb".freeze, "tests/unit_test.rb".freeze]
|
22
|
+
s.test_files = ["tests/annotate_test.rb".freeze, "tests/ask_and_send_test.rb".freeze, "tests/attempt_test.rb".freeze, "tests/bijection_test.rb".freeze, "tests/blank_full_test.rb".freeze, "tests/case_predicate_test.rb".freeze, "tests/concern_test.rb".freeze, "tests/count_by_test.rb".freeze, "tests/date_dummy_test.rb".freeze, "tests/date_time_dummy_test.rb".freeze, "tests/deep_const_get_test.rb".freeze, "tests/deep_dup_test.rb".freeze, "tests/delegate_test.rb".freeze, "tests/deprecate_test.rb".freeze, "tests/dslkit_test.rb".freeze, "tests/duration_test.rb".freeze, "tests/dynamic_scope_test.rb".freeze, "tests/expose_test.rb".freeze, "tests/extract_last_argument_options_test.rb".freeze, "tests/file_binary_test.rb".freeze, "tests/find_test.rb".freeze, "tests/from_module_test.rb".freeze, "tests/generator_test.rb".freeze, "tests/go_test.rb".freeze, "tests/hash_bfs_test.rb".freeze, "tests/hash_symbolize_keys_recursive_test.rb".freeze, "tests/hash_union_test.rb".freeze, "tests/if_predicate_test.rb".freeze, "tests/implement_test.rb".freeze, "tests/limited_test.rb".freeze, "tests/lines_file_test.rb".freeze, "tests/lru_cache_test.rb".freeze, "tests/memoize_test.rb".freeze, "tests/method_description_test.rb".freeze, "tests/minimize_test.rb".freeze, "tests/module_group_test.rb".freeze, "tests/named_set_test.rb".freeze, "tests/named_test.rb".freeze, "tests/null_test.rb".freeze, "tests/p_test.rb".freeze, "tests/partial_application_test.rb".freeze, "tests/proc_compose_test.rb".freeze, "tests/proc_prelude_test.rb".freeze, "tests/range_plus_test.rb".freeze, "tests/require_maybe_test.rb".freeze, "tests/responding_test.rb".freeze, "tests/rotate_test.rb".freeze, "tests/scope_test.rb".freeze, "tests/secure_write_test.rb".freeze, "tests/sexy_singleton_test.rb".freeze, "tests/string_byte_order_mark_test.rb".freeze, "tests/string_camelize_test.rb".freeze, "tests/string_underscore_test.rb".freeze, "tests/string_version_test.rb".freeze, "tests/subhash_test.rb".freeze, "tests/temp_io_test.rb".freeze, "tests/test_helper.rb".freeze, "tests/time_dummy_test.rb".freeze, "tests/time_freezer_test.rb".freeze, "tests/to_test.rb".freeze, "tests/token_test.rb".freeze, "tests/uniq_by_test.rb".freeze, "tests/unit_test.rb".freeze, "tests/annotate_test.rb".freeze, "tests/ask_and_send_test.rb".freeze, "tests/attempt_test.rb".freeze, "tests/bijection_test.rb".freeze, "tests/blank_full_test.rb".freeze, "tests/case_predicate_test.rb".freeze, "tests/concern_test.rb".freeze, "tests/count_by_test.rb".freeze, "tests/date_dummy_test.rb".freeze, "tests/date_time_dummy_test.rb".freeze, "tests/deep_const_get_test.rb".freeze, "tests/deep_dup_test.rb".freeze, "tests/delegate_test.rb".freeze, "tests/deprecate_test.rb".freeze, "tests/dslkit_test.rb".freeze, "tests/duration_test.rb".freeze, "tests/dynamic_scope_test.rb".freeze, "tests/expose_test.rb".freeze, "tests/extract_last_argument_options_test.rb".freeze, "tests/file_binary_test.rb".freeze, "tests/find_test.rb".freeze, "tests/from_module_test.rb".freeze, "tests/generator_test.rb".freeze, "tests/go_test.rb".freeze, "tests/hash_bfs_test.rb".freeze, "tests/hash_symbolize_keys_recursive_test.rb".freeze, "tests/hash_union_test.rb".freeze, "tests/if_predicate_test.rb".freeze, "tests/implement_test.rb".freeze, "tests/limited_test.rb".freeze, "tests/lines_file_test.rb".freeze, "tests/lru_cache_test.rb".freeze, "tests/memoize_test.rb".freeze, "tests/method_description_test.rb".freeze, "tests/minimize_test.rb".freeze, "tests/module_group_test.rb".freeze, "tests/named_set_test.rb".freeze, "tests/named_test.rb".freeze, "tests/null_test.rb".freeze, "tests/p_test.rb".freeze, "tests/partial_application_test.rb".freeze, "tests/proc_compose_test.rb".freeze, "tests/proc_prelude_test.rb".freeze, "tests/range_plus_test.rb".freeze, "tests/require_maybe_test.rb".freeze, "tests/responding_test.rb".freeze, "tests/rotate_test.rb".freeze, "tests/scope_test.rb".freeze, "tests/secure_write_test.rb".freeze, "tests/sexy_singleton_test.rb".freeze, "tests/string_byte_order_mark_test.rb".freeze, "tests/string_camelize_test.rb".freeze, "tests/string_underscore_test.rb".freeze, "tests/string_version_test.rb".freeze, "tests/subhash_test.rb".freeze, "tests/temp_io_test.rb".freeze, "tests/time_dummy_test.rb".freeze, "tests/time_freezer_test.rb".freeze, "tests/to_test.rb".freeze, "tests/token_test.rb".freeze, "tests/uniq_by_test.rb".freeze, "tests/unit_test.rb".freeze]
|
23
23
|
|
24
24
|
s.specification_version = 4
|
25
25
|
|
26
|
-
s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 1.
|
27
|
-
s.add_development_dependency(%q<utils>.freeze, [">= 0".freeze])
|
26
|
+
s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 1.18.0".freeze])
|
28
27
|
s.add_development_dependency(%q<all_images>.freeze, [">= 0".freeze])
|
29
28
|
s.add_development_dependency(%q<debug>.freeze, [">= 0".freeze])
|
30
29
|
s.add_development_dependency(%q<term-ansicolor>.freeze, [">= 0".freeze])
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tins
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.35.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Florian Frank
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-10-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gem_hadar
|
@@ -16,28 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: 1.18.0
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: utils
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ">="
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
26
|
+
version: 1.18.0
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
28
|
name: all_images
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -160,6 +146,7 @@ extra_rdoc_files:
|
|
160
146
|
- lib/tins/date_time_dummy.rb
|
161
147
|
- lib/tins/deep_const_get.rb
|
162
148
|
- lib/tins/deep_dup.rb
|
149
|
+
- lib/tins/deprecate.rb
|
163
150
|
- lib/tins/dslkit.rb
|
164
151
|
- lib/tins/duration.rb
|
165
152
|
- lib/tins/expose.rb
|
@@ -168,6 +155,7 @@ extra_rdoc_files:
|
|
168
155
|
- lib/tins/find.rb
|
169
156
|
- lib/tins/generator.rb
|
170
157
|
- lib/tins/go.rb
|
158
|
+
- lib/tins/hash_bfs.rb
|
171
159
|
- lib/tins/hash_symbolize_keys_recursive.rb
|
172
160
|
- lib/tins/hash_union.rb
|
173
161
|
- lib/tins/if_predicate.rb
|
@@ -222,11 +210,13 @@ extra_rdoc_files:
|
|
222
210
|
- lib/tins/xt/date_time_dummy.rb
|
223
211
|
- lib/tins/xt/deep_const_get.rb
|
224
212
|
- lib/tins/xt/deep_dup.rb
|
213
|
+
- lib/tins/xt/deprecate.rb
|
225
214
|
- lib/tins/xt/dslkit.rb
|
226
215
|
- lib/tins/xt/expose.rb
|
227
216
|
- lib/tins/xt/extract_last_argument_options.rb
|
228
217
|
- lib/tins/xt/file_binary.rb
|
229
218
|
- lib/tins/xt/full.rb
|
219
|
+
- lib/tins/xt/hash_bfs.rb
|
230
220
|
- lib/tins/xt/hash_symbolize_keys_recursive.rb
|
231
221
|
- lib/tins/xt/hash_union.rb
|
232
222
|
- lib/tins/xt/if_predicate.rb
|
@@ -257,6 +247,7 @@ extra_rdoc_files:
|
|
257
247
|
- lib/tins/xt/uniq_by.rb
|
258
248
|
- lib/tins/xt/write.rb
|
259
249
|
files:
|
250
|
+
- CHANGES.md
|
260
251
|
- COPYING
|
261
252
|
- Gemfile
|
262
253
|
- README.md
|
@@ -304,6 +295,7 @@ files:
|
|
304
295
|
- lib/tins/date_time_dummy.rb
|
305
296
|
- lib/tins/deep_const_get.rb
|
306
297
|
- lib/tins/deep_dup.rb
|
298
|
+
- lib/tins/deprecate.rb
|
307
299
|
- lib/tins/dslkit.rb
|
308
300
|
- lib/tins/duration.rb
|
309
301
|
- lib/tins/expose.rb
|
@@ -312,6 +304,7 @@ files:
|
|
312
304
|
- lib/tins/find.rb
|
313
305
|
- lib/tins/generator.rb
|
314
306
|
- lib/tins/go.rb
|
307
|
+
- lib/tins/hash_bfs.rb
|
315
308
|
- lib/tins/hash_symbolize_keys_recursive.rb
|
316
309
|
- lib/tins/hash_union.rb
|
317
310
|
- lib/tins/if_predicate.rb
|
@@ -366,11 +359,13 @@ files:
|
|
366
359
|
- lib/tins/xt/date_time_dummy.rb
|
367
360
|
- lib/tins/xt/deep_const_get.rb
|
368
361
|
- lib/tins/xt/deep_dup.rb
|
362
|
+
- lib/tins/xt/deprecate.rb
|
369
363
|
- lib/tins/xt/dslkit.rb
|
370
364
|
- lib/tins/xt/expose.rb
|
371
365
|
- lib/tins/xt/extract_last_argument_options.rb
|
372
366
|
- lib/tins/xt/file_binary.rb
|
373
367
|
- lib/tins/xt/full.rb
|
368
|
+
- lib/tins/xt/hash_bfs.rb
|
374
369
|
- lib/tins/xt/hash_symbolize_keys_recursive.rb
|
375
370
|
- lib/tins/xt/hash_union.rb
|
376
371
|
- lib/tins/xt/if_predicate.rb
|
@@ -413,6 +408,7 @@ files:
|
|
413
408
|
- tests/deep_const_get_test.rb
|
414
409
|
- tests/deep_dup_test.rb
|
415
410
|
- tests/delegate_test.rb
|
411
|
+
- tests/deprecate_test.rb
|
416
412
|
- tests/dslkit_test.rb
|
417
413
|
- tests/duration_test.rb
|
418
414
|
- tests/dynamic_scope_test.rb
|
@@ -423,6 +419,7 @@ files:
|
|
423
419
|
- tests/from_module_test.rb
|
424
420
|
- tests/generator_test.rb
|
425
421
|
- tests/go_test.rb
|
422
|
+
- tests/hash_bfs_test.rb
|
426
423
|
- tests/hash_symbolize_keys_recursive_test.rb
|
427
424
|
- tests/hash_union_test.rb
|
428
425
|
- tests/if_predicate_test.rb
|
@@ -485,7 +482,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
485
482
|
- !ruby/object:Gem::Version
|
486
483
|
version: '0'
|
487
484
|
requirements: []
|
488
|
-
rubygems_version: 3.5.
|
485
|
+
rubygems_version: 3.5.18
|
489
486
|
signing_key:
|
490
487
|
specification_version: 4
|
491
488
|
summary: Useful stuff.
|
@@ -503,6 +500,7 @@ test_files:
|
|
503
500
|
- tests/deep_const_get_test.rb
|
504
501
|
- tests/deep_dup_test.rb
|
505
502
|
- tests/delegate_test.rb
|
503
|
+
- tests/deprecate_test.rb
|
506
504
|
- tests/dslkit_test.rb
|
507
505
|
- tests/duration_test.rb
|
508
506
|
- tests/dynamic_scope_test.rb
|
@@ -513,6 +511,7 @@ test_files:
|
|
513
511
|
- tests/from_module_test.rb
|
514
512
|
- tests/generator_test.rb
|
515
513
|
- tests/go_test.rb
|
514
|
+
- tests/hash_bfs_test.rb
|
516
515
|
- tests/hash_symbolize_keys_recursive_test.rb
|
517
516
|
- tests/hash_union_test.rb
|
518
517
|
- tests/if_predicate_test.rb
|