tins 1.37.0 → 1.37.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '049e3bf81de447eec53664f5555656602906bbd44a5f98b2e0e953318aadff77'
4
- data.tar.gz: 14debef966e248366ec1ef72b39b8ccc094a91049ed6cd44e9ee2550c607ae02
3
+ metadata.gz: 45cdce796cfd7bd217b41dde419d3a3399e6b06a71a3aad809ed1ffd81fee1b6
4
+ data.tar.gz: cc3474c0776f6feaa025dedf5ae466bad277de63b9ba34343a43e8c5e281c531
5
5
  SHA512:
6
- metadata.gz: c93d9b5b23c3305f422f0efd81e0828591682331532b51f4de1a84e305f77bb3f9374abcf8b725cd665a74ef352cabb525f49b4dfa68fc78f5568e87a5e78012
7
- data.tar.gz: 4b8d5d1da5bffb1b26449f96aa0f292a28582e5409d734ba5cdc18c428a2e6b57f577662773b776abcbb5464d505ae6726b60bba54f2142ddf5a32faae5fd9e9
6
+ metadata.gz: 9506088d3c0c744bc706753accf329f2995d20400a43fdc738c31d4965ff66266d2d2143796f2812daa3adefedcdf49281eb0ba209f7b0d474c857ca707c4d82
7
+ data.tar.gz: af4c092a1bf371da47fa061565d3fed7a65132231762bfefb566c126137febf4fb212535581928d068ac607beb5cd83a55f338ef345dfcca2a59e443f9ce7a23
data/CHANGES.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changes
2
2
 
3
+ ## 2024-12-13 v1.37.1
4
+
5
+ * Renamed `ZERO` and `BINARY` constants to `ZERO_RE` and `BINARY_RE` to avoid
6
+ collisions with Logger/File constants.
7
+
3
8
  ## 2024-10-19 v1.37.0
4
9
 
5
10
  * Add support for module prepended blocks in **Tins::Concern**:
data/README.md CHANGED
@@ -10,87 +10,6 @@ Non yet.
10
10
 
11
11
  [![Code Coverage](https://codeclimate.com/github/flori/tins/coverage.png)](https://codeclimate.com/github/flori/tins)
12
12
 
13
- ## Changes
14
-
15
- * 2018-11-14 Release 1.20.2
16
- - Fix ~x options
17
- * 2018-11-14 Release 1.20.1
18
- - Add disabling boolean options in Tins::GO#go method.
19
- * 2018-11-14 Release 1.20.0
20
- - Support default arguments in Tins::GO#go method.
21
- * 2018-11-07 Release 1.19.0
22
- - Allow annotations without arguments
23
- * 2018-11-02 Release 1.18.0
24
- - `thread_local` and `thread_global` with default block
25
- * 2018-10-15 Release 1.17.0
26
- - Add Tins::TempIO::Enum class to wrap `temp_io` into Enumerator.
27
- * 2017-12-05 Release 1.16.3
28
- - Improve `temp_io` method by not changing working dir.
29
- * 2017-12-05 Release 1.16.2
30
- - Improve `temp_io` method with a given name.
31
- * 2017-12-05 Release 1.16.1
32
- - Improve `temp_io` method with block
33
- * 2017-11-29 Release 1.16.0
34
- - Prove `temp_io` method with block
35
- * 2017-06-29 Release 1.15.0
36
- - Add support for smart duration formats with %D directive
37
- * 2017-05-16 Release 1.14.0
38
- - Add visit proc to determine if file should be visited.
39
- * 2017-05-14 Release 1.13.3
40
- - Fix some debugging warnings
41
- * 2017-02-03 Release 1.13.2
42
- - Fix test on older rubies
43
- * 2016-11-23 Release 1.13.1
44
- - Fix comparibility of Tins::Duration instances
45
- * 2016-11-23 Release 1.13.0
46
- - Add expose method mostly for testing hidden methods.
47
- * 2016-08-04 Release 1.12.0
48
- - Add Tins::Unit.parse? method to check for units in strings.
49
- * 2016-07-12 Release 1.11.0
50
- - Provide Tins::Unit.format and Tins::Unit.parse methods.
51
- * 2016-05-25 Release 1.10.2
52
- - Avoid some warnings.
53
- * 2016-04-15 Release 1.10.1
54
- - Fix bug in go if a concatenated argument comes last.
55
- * 2016-04-12 Release 1.10.0
56
- - Support mixed rest arguments in go argument parsing.
57
- * 2016-03-10 Release 1.9.0
58
- - Add Tins::Duration for displaying durations.
59
- * 2016-01-18 Release 1.8.2
60
- - Implement Tins::StringVersion::Version#dup and
61
- Tins::StringVersion::Version#clone.
62
- * 2015-12-03 Release 1.8.1
63
- - Remove some backports already existant in the newer supported rubies.
64
- * 2015-12-01 Release 1.8.0
65
- - Add `foo_of` and `foo_annotations` methods to instances of classes with
66
- annotated methods.
67
- * 2015-11-09 Release 1.7.0
68
- - Officially require ruby >= 2.0 and use new hash syntax.
69
- - New feature attempt: sleep:-30 sleeps upto 30 seconds while retrying with
70
- an exponential waiting pattern.
71
- - Remove rotate and shuffle, recent rubies all support them.
72
- - Add an object oriented view on method signatures and use it to create
73
- method descriptions.
74
- * 2015-08-13 Release 1.6.0
75
- - Add complete method for readline completion
76
- * 2015-06-21 Release 1.5.4
77
- - Avoid %i syntax for now
78
- * 2015-06-17 Release 1.5.3
79
- - Make it run on 1.9 again.
80
- - Avoid a warning in Time.dummy implementation.
81
- * 2015-05-27 Release 1.5.2
82
- - Fix parameter naming for c-methods in method descriptions.
83
- * 2015-04-24 Release 1.5.0/1.5.1
84
- - Implement bump logic for StringVersion
85
- * 2015-04-23 Release 1.4.0
86
- - Add implement module helper method.
87
- * 2015-03-03 Release 1.3.5
88
- - Don't automatically include #to method into Object, this can lead to some
89
- confusion.
90
- * 2015-02-04 Release 1.3.4
91
- - Add some default alphabets to Tins::Token, e. g. Base64
92
- - Add changes to Readme
93
-
94
13
  ## Author
95
14
 
96
15
  Florian Frank mailto:flori@ping.de
@@ -3,12 +3,12 @@ module Tins
3
3
  module Constants
4
4
  SEEK_SET = ::File::SEEK_SET
5
5
 
6
- ZERO = "\x00"
7
- BINARY = "\x01-\x1f\x7f-\xff"
6
+ ZERO_RE = "\x00"
7
+ BINARY_RE = "\x01-\x1f\x7f-\xff"
8
8
 
9
9
  if defined?(::Encoding)
10
- ZERO.force_encoding(Encoding::ASCII_8BIT)
11
- BINARY.force_encoding(Encoding::ASCII_8BIT)
10
+ ZERO_RE.force_encoding(Encoding::ASCII_8BIT)
11
+ BINARY_RE.force_encoding(Encoding::ASCII_8BIT)
12
12
  end
13
13
  end
14
14
 
@@ -39,9 +39,9 @@ module Tins
39
39
  data = read options[:buffer_size]
40
40
  !data or data.empty? and return nil
41
41
  data_size = data.size
42
- data.count(Constants::ZERO).to_f / data_size >
42
+ data.count(Constants::ZERO_RE).to_f / data_size >
43
43
  options[:percentage_zeros] / 100.0 and return true
44
- data.count(Constants::BINARY).to_f / data_size >
44
+ data.count(Constants::BINARY_RE).to_f / data_size >
45
45
  options[:percentage_binary] / 100.0
46
46
  ensure
47
47
  old_pos and seek old_pos, Constants::SEEK_SET
data/lib/tins/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Tins
2
2
  # Tins version
3
- VERSION = '1.37.0'
3
+ VERSION = '1.37.1'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
@@ -1,7 +1,7 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class ConcernTest < Test::Unit::TestCase
4
- module AC
4
+ module C1
5
5
  extend Tins::Concern
6
6
 
7
7
  included do
@@ -38,12 +38,27 @@ class ConcernTest < Test::Unit::TestCase
38
38
  $included = nil
39
39
  $prepended = nil
40
40
 
41
+ module C2
42
+ extend Tins::Concern
43
+
44
+ def foo
45
+ :'prepended-foo'
46
+ end
47
+ end
48
+
49
+
41
50
  class A
42
- include AC
51
+ include C1
43
52
  end
44
53
 
45
54
  class B
46
- prepend AC
55
+ prepend C1
56
+ end
57
+
58
+ class C
59
+ def foo
60
+ :foo
61
+ end
47
62
  end
48
63
 
49
64
  def test_concern_include
@@ -54,19 +69,26 @@ class ConcernTest < Test::Unit::TestCase
54
69
  assert_equal :baz1, A.baz1
55
70
  assert_equal :baz2, A.baz2
56
71
  assert_raise(StandardError) do
57
- AC.module_eval { included {} }
72
+ C1.module_eval { included {} }
58
73
  end
59
74
  end
60
75
 
61
76
  def test_concern_prepend
62
- a = B.new
77
+ b = B.new
63
78
  assert_equal B, $prepended
64
- assert_equal :foo, a.foo
79
+ assert_equal :foo, b.foo
65
80
  assert_equal :bar, B.bar
66
81
  assert_equal :baz1, B.baz1
67
82
  assert_equal :baz2, B.baz2
68
83
  assert_raise(StandardError) do
69
- AC.module_eval { prepended {} }
84
+ C1.module_eval { prepended {} }
70
85
  end
71
86
  end
87
+
88
+ def test_prepended_method
89
+ c = C.new
90
+ assert_equal :foo, c.foo
91
+ C.class_eval { prepend C2 }
92
+ assert_equal :'prepended-foo', c.foo
93
+ end
72
94
  end
data/tins.gemspec CHANGED
@@ -1,14 +1,14 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: tins 1.37.0 ruby lib
2
+ # stub: tins 1.37.1 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "tins".freeze
6
- s.version = "1.37.0".freeze
6
+ s.version = "1.37.1".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-10-19"
11
+ s.date = "2024-12-13"
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
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]
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
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.18".freeze
20
+ s.rubygems_version = "3.5.23".freeze
21
21
  s.summary = "Useful stuff.".freeze
22
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
 
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.37.0
4
+ version: 1.37.1
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-10-19 00:00:00.000000000 Z
11
+ date: 2024-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gem_hadar
@@ -482,7 +482,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
482
482
  - !ruby/object:Gem::Version
483
483
  version: '0'
484
484
  requirements: []
485
- rubygems_version: 3.5.18
485
+ rubygems_version: 3.5.23
486
486
  signing_key:
487
487
  specification_version: 4
488
488
  summary: Useful stuff.