lounger 0.3.1 → 0.3.4

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
- SHA1:
3
- metadata.gz: 11ac13fa2d6f6eb0b5154ed80d986d867764e151
4
- data.tar.gz: 41ceb2e39c847fff0b12de6d374db13d6ded06e9
2
+ SHA256:
3
+ metadata.gz: 2f68fdc6654fca34e8985ed2f60cb76dcf5e08bd6d30fc164915debb01a73275
4
+ data.tar.gz: 5c5b902147bcf40b3d8b3d316f055cb4ddd0b6588be3801d42a3f25e44c0e90b
5
5
  SHA512:
6
- metadata.gz: d04aa8779babc1c568af75bb6d49e055da458805e10b4938354f31499b6f6f2cbc5eea03daa6c94e5d132f1f12e7329b82b0631945726d2c0d1347264945acc5
7
- data.tar.gz: f67a0e8d973557924b912fc348c89a41416735fb527bd65388a2aa917cb481414288690eb43907f5cfa2bf855398173248002041f3b615558b4773371d2e2b31
6
+ metadata.gz: d2055798672712fee16e6f9550b433b4395f1d448d86d822d68f039393d4b9dbd64143b90443fc6de187648f7e826fae8a68c74fe7595081510794ec5d33d76d
7
+ data.tar.gz: 0d893675cce811c0fa85de875a1d395aa1e4eea9b3d4169f0849e8d4b8d18c656da68e0091bdf945c35d2f86efb42890180290980a0ab8c2a12bf8f5bda446fb
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  class Lounger
2
- VERSION = "0.3.1"
4
+ VERSION = '0.3.4'
3
5
  end
data/lib/lounger.rb CHANGED
@@ -1,7 +1,11 @@
1
- require "lounger/version"
1
+ # frozen_string_literal: true
2
2
 
3
+ require 'lounger/version'
4
+
5
+ # The Lounger class is the main class which will allow to handle traps
6
+ # in simple way.
3
7
  class Lounger
4
- SIGNALS = ["INT", "TERM", "EXIT", "USR1", "QUIT"]
8
+ SIGNALS = %w[INT TERM EXIT USR1 QUIT].freeze
5
9
 
6
10
  def initialize(include_signals: [], exclude_signals: [])
7
11
  @lock = Mutex.new
@@ -11,10 +15,7 @@ class Lounger
11
15
  @idle = false
12
16
 
13
17
  (SIGNALS + include_signals - exclude_signals).each do |s|
14
- prev = Signal.trap(s) do
15
- @condition.signal
16
- prev.call unless prev.is_a?(String)
17
- end
18
+ Signal.trap(s) { @condition.signal }
18
19
  end
19
20
  end
20
21
 
@@ -24,7 +25,7 @@ class Lounger
24
25
  @pending_signals = 0 if ignore_pending
25
26
  @idle = true
26
27
 
27
- if @pending_signals > 0
28
+ if @pending_signals.positive?
28
29
  @pending_signals -= 1
29
30
  else
30
31
  @condition.wait(@lock)
@@ -35,11 +36,11 @@ class Lounger
35
36
  result = @buffer.shift
36
37
  end
37
38
 
38
- return result
39
+ result
39
40
  end
40
41
 
41
42
  def idle?
42
- return @idle
43
+ @idle
43
44
  end
44
45
 
45
46
  def wakeup!(value = nil)
@@ -57,4 +58,4 @@ class Lounger
57
58
  alias_method :waiting?, :idle?
58
59
  alias_method :wait, :idle
59
60
  alias_method :signal, :wakeup!
60
- end
61
+ end
data/lounger.gemspec CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
21
 
22
- spec.add_development_dependency "bundler", "~> 1.11"
23
- spec.add_development_dependency "rake", "~> 10.0"
24
- spec.add_development_dependency "rspec", "~> 3.0"
22
+ spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.33'
23
+ spec.add_development_dependency 'rake', '~> 13.0', '>= 12.3.3'
24
+ spec.add_development_dependency 'rspec', '~> 3.0'
25
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lounger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Groza Sergiu
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-11-28 00:00:00.000000000 Z
11
+ date: 2024-01-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,28 +16,40 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.11'
19
+ version: '2.2'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.2.33
20
23
  type: :development
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: '1.11'
29
+ version: '2.2'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 2.2.33
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: rake
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '10.0'
39
+ version: '13.0'
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: 12.3.3
34
43
  type: :development
35
44
  prerelease: false
36
45
  version_requirements: !ruby/object:Gem::Requirement
37
46
  requirements:
38
47
  - - "~>"
39
48
  - !ruby/object:Gem::Version
40
- version: '10.0'
49
+ version: '13.0'
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: 12.3.3
41
53
  - !ruby/object:Gem::Dependency
42
54
  name: rspec
43
55
  requirement: !ruby/object:Gem::Requirement
@@ -91,10 +103,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
103
  - !ruby/object:Gem::Version
92
104
  version: '0'
93
105
  requirements: []
94
- rubyforge_project:
95
- rubygems_version: 2.6.10
106
+ rubygems_version: 3.4.10
96
107
  signing_key:
97
108
  specification_version: 4
98
109
  summary: A simple Ruby gem for current thread idling
99
110
  test_files: []
100
- has_rdoc: