lounger 0.3.1 → 0.3.4

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
- 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: