sys-uptime 0.7.5 → 0.7.6

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: 559d060a4c5cb7ef11471f1e079d53e6e758fbece095ceca8cb5906d1f9aaa93
4
- data.tar.gz: 857205d6d793b0db9b3756cab8c22a85d0a02a3fd397eb6a483bc7820ae13054
3
+ metadata.gz: '09aa4c4ea6a68982ee2b7574e18041b0a476f06f3531e71736d83d54b3322b49'
4
+ data.tar.gz: 4aab0dd2a800aa78d4597876c1e7889e8970037e9493d1a0faf7780c81133b9b
5
5
  SHA512:
6
- metadata.gz: 7e5ed8ebd668466adb8277a8fd397ff248ef4ca7e8353eb5f558ad147a07dafc288f7db8767ac1500e66732cedcad9af681c7369bd13fcd5461f68656bb18a00
7
- data.tar.gz: 4b2f55fe62abfce0a863dd096e03dba42b6dcb85e34f1fa82f87beff20e70f49dc3bcf93059de52eee223a89745d7d53d9f9d670058d9ac61cb35319908f8dd6
6
+ metadata.gz: 222cc669eccbd1d04ea4d5410be8193b265dac268c4bb1e652d9e560a8d4c119225626abf103112988402d215d78ebab1ce317350e87cdd95af5c561ddd9b7c1
7
+ data.tar.gz: 599316932c555fb289ff1f9aa277e397f33764e474ce16d9e8244e0e3373d9a60fc355f688afe7f963f42c033c6c0df927d0295b8df42796023a813aa780b77f
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGES.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## 0.7.6 - 9-Apr-2023
2
+ * Constructor is now officially private, as are several constants that were
3
+ never meant to be public.
4
+ * Lots of rubocop suggested updates.
5
+ * Minor refactoring for Windows.
6
+ * Minor updates, including Rakefile and gemspec metadata.
7
+
1
8
  ## 0.7.5 - 29-Oct-2020
2
9
  * Switched docs to markdown format.
3
10
  * Added a Gemfile.
data/Gemfile CHANGED
@@ -1,11 +1,2 @@
1
- source 'https://rubygems.org' do
2
- gem 'rake'
3
-
4
- platforms :ruby do
5
- gem 'ffi', '~> 1.1'
6
- end
7
-
8
- group 'test' do
9
- gem 'rspec', '~> 3.9'
10
- end
11
- end
1
+ source 'https://rubygems.org'
2
+ gemspec
data/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ [![Ruby](https://github.com/djberg96/sys-uptime/actions/workflows/ruby.yml/badge.svg)](https://github.com/djberg96/sys-uptime/actions/workflows/ruby.yml)
2
+
1
3
  ## Description
2
4
  A Ruby interface for getting system uptime information.
3
5
 
@@ -9,7 +11,7 @@ ffi 0.1.0 or later on Unixy platforms.
9
11
  `gem install sys-uptime`
10
12
 
11
13
  ## Synopsis
12
- ```
14
+ ```ruby
13
15
  require 'sys-uptime'
14
16
  include Sys
15
17
 
@@ -46,7 +48,7 @@ website at https://github.com/djberg96/sys-uptime.
46
48
  Apache-2.0
47
49
 
48
50
  ## Copyright
49
- Copyright 2002-2019, Daniel J. Berger
51
+ Copyright 2002-2023, Daniel J. Berger
50
52
 
51
53
  All Rights Reserved. This module is free software. It may be used,
52
54
  redistributed and/or modified under the same terms as Ruby itself.
data/Rakefile CHANGED
@@ -2,6 +2,7 @@ require 'rake'
2
2
  require 'rake/clean'
3
3
  require 'rake/testtask'
4
4
  require 'rspec/core/rake_task'
5
+ require 'rubocop/rake_task'
5
6
 
6
7
  CLEAN.include("**/*.gem", "**/*.rbx", "**/*.rbc", "**/*.lock")
7
8
 
@@ -9,15 +10,8 @@ namespace 'gem' do
9
10
  desc 'Build the sys-uptime gem'
10
11
  task :create => [:clean] do
11
12
  require 'rubygems/package'
12
- spec = eval(IO.read('sys-uptime.gemspec'))
13
+ spec = Gem::Specification.load('sys-uptime.gemspec')
13
14
  spec.signing_key = File.join(Dir.home, '.ssh', 'gem-private_key.pem')
14
-
15
- if File::ALT_SEPARATOR
16
- spec.platform = Gem::Platform.new(['universal', 'mingw32'])
17
- else
18
- spec.add_dependency('ffi', '~> 1.1')
19
- end
20
-
21
15
  Gem::Package.build(spec)
22
16
  end
23
17
 
@@ -28,6 +22,8 @@ namespace 'gem' do
28
22
  end
29
23
  end
30
24
 
25
+ RuboCop::RakeTask.new
26
+
31
27
  desc "Run the test suite"
32
28
  RSpec::Core::RakeTask.new(:spec)
33
29
 
@@ -1,8 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'ffi'
2
4
 
3
5
  # The Sys module serves as a namespace only.
4
6
  module Sys
5
-
6
7
  # The Uptime class encapsulates various bits of information regarding your
7
8
  # system's uptime, including boot time.
8
9
  class Uptime
@@ -12,8 +13,6 @@ module Sys
12
13
  # Error typically raised in one of the Uptime methods should fail.
13
14
  class Error < StandardError; end
14
15
 
15
- private
16
-
17
16
  # Hit this issue on Linux, not sure why
18
17
  begin
19
18
  find_type(:clock_t)
@@ -29,7 +28,7 @@ module Sys
29
28
  private_class_method :strerror, :sysconf, :time, :times, :new
30
29
 
31
30
  begin
32
- attach_function :sysctl, [:pointer, :uint, :pointer, :pointer, :pointer, :size_t], :int
31
+ attach_function :sysctl, %i[pointer uint pointer pointer pointer size_t], :int
33
32
  private_class_method :sysctl
34
33
  rescue FFI::NotFoundError
35
34
  attach_function :setutxent, [], :void
@@ -43,6 +42,11 @@ module Sys
43
42
  TICKS = 100 # Ticks per second (TODO: use sysconf)
44
43
  BOOT_TIME = 2 # Boot time
45
44
 
45
+ private_constant :CTL_KERN
46
+ private_constant :KERN_BOOTTIME
47
+ private_constant :TICKS
48
+ private_constant :BOOT_TIME
49
+
46
50
  class Tms < FFI::Struct
47
51
  layout(
48
52
  :tms_utime, :clock_t,
@@ -52,6 +56,8 @@ module Sys
52
56
  )
53
57
  end
54
58
 
59
+ private_constant :Tms
60
+
55
61
  class Timeval < FFI::Struct
56
62
  layout(
57
63
  :tv_sec, :long,
@@ -59,6 +65,8 @@ module Sys
59
65
  )
60
66
  end
61
67
 
68
+ private_constant :Timeval
69
+
62
70
  class ExitStatus < FFI::Struct
63
71
  layout(
64
72
  :e_termination, :short,
@@ -66,6 +74,8 @@ module Sys
66
74
  )
67
75
  end
68
76
 
77
+ private_constant :ExitStatus
78
+
69
79
  class Utmpx < FFI::Struct
70
80
  layout(
71
81
  :ut_user, [:char, 32],
@@ -81,7 +91,7 @@ module Sys
81
91
  )
82
92
  end
83
93
 
84
- public
94
+ private_constant :Utmpx
85
95
 
86
96
  # Returns a Time object indicating the time the system was last booted.
87
97
  #
@@ -91,14 +101,14 @@ module Sys
91
101
  #
92
102
  def self.boot_time
93
103
  if RbConfig::CONFIG['host_os'] =~ /linux/i
94
- Time.now - self.seconds
104
+ Time.now - seconds
95
105
  elsif respond_to?(:sysctl, true)
96
106
  tv = Timeval.new
97
107
  mib = FFI::MemoryPointer.new(:int, 2).write_array_of_int([CTL_KERN, KERN_BOOTTIME])
98
108
  size = FFI::MemoryPointer.new(:long, 1).write_int(tv.size)
99
109
 
100
110
  if sysctl(mib, 2, tv, size, nil, 0) != 0
101
- raise SystemCallError, 'sysctl() - ' + strerror(FFI.errno)
111
+ raise SystemCallError, "sysctl function failed: #{strerror(FFI.errno)}"
102
112
  end
103
113
 
104
114
  Time.at(tv[:tv_sec], tv[:tv_usec])
@@ -126,18 +136,20 @@ module Sys
126
136
  #
127
137
  def self.seconds
128
138
  if RbConfig::CONFIG['host_os'] =~ /linux/i
139
+ # rubocop:disable Lint/RescueException
129
140
  begin
130
- IO.read('/proc/uptime').split.first.to_i
141
+ File.read('/proc/uptime').split.first.to_i
131
142
  rescue Exception => err
132
143
  raise Error, err
133
144
  end
145
+ # rubocop:enable Lint/RescueException
134
146
  elsif respond_to?(:sysctl, true)
135
147
  tv = Timeval.new
136
148
  mib = FFI::MemoryPointer.new(:int, 2).write_array_of_int([CTL_KERN, KERN_BOOTTIME])
137
149
  size = FFI::MemoryPointer.new(:long, 1).write_int(tv.size)
138
150
 
139
151
  if sysctl(mib, 2, tv, size, nil, 0) != 0
140
- raise SystemCallError, 'sysctl() - ' + strerror(FFI.errno)
152
+ raise SystemCallError, "sysctl function failed: #{strerror(FFI.errno)}"
141
153
  end
142
154
 
143
155
  time(nil) - tv[:tv_sec]
@@ -187,11 +199,11 @@ module Sys
187
199
  def self.uptime
188
200
  secs = seconds
189
201
  days = secs / 86400
190
- secs -= days * 86400
202
+ secs -= days * 86400
191
203
  hours = secs / 3600
192
- secs -= hours * 3600
193
- mins = secs / 60
194
- secs -= mins * 60
204
+ secs -= hours * 3600
205
+ mins = secs / 60
206
+ secs -= mins * 60
195
207
 
196
208
  "#{days}:#{hours}:#{mins}:#{secs}"
197
209
  end
data/lib/sys/uptime.rb CHANGED
@@ -1,12 +1,18 @@
1
+ # frozen_string_literal: true
2
+
1
3
  if File::ALT_SEPARATOR
2
4
  require_relative 'windows/sys/uptime'
3
5
  else
4
6
  require_relative 'unix/sys/uptime'
5
7
  end
6
8
 
9
+ # The Sys module serves as a namespace only.
7
10
  module Sys
11
+ # The Uptime class serves as a base singleton class to hang uptime related methods on.
8
12
  class Uptime
9
13
  # The version of the sys-uptime library
10
- VERSION = '0.7.5'.freeze
14
+ VERSION = '0.7.6'
15
+
16
+ private_class_method :new
11
17
  end
12
18
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'win32ole'
2
4
  require 'socket'
3
5
  require 'date'
@@ -5,11 +7,9 @@ require 'time'
5
7
 
6
8
  # The Sys module serves as a namespace only.
7
9
  module Sys
8
-
9
10
  # The Uptime class encapsulates various bits of information regarding your
10
11
  # system's uptime, including boot time.
11
12
  class Uptime
12
-
13
13
  # Error typically raised in one of the Uptime methods should fail.
14
14
  class Error < StandardError; end
15
15
 
@@ -26,15 +26,12 @@ module Sys
26
26
  cs = "winmgmts://#{host}/root/cimv2"
27
27
  begin
28
28
  wmi = WIN32OLE.connect(cs)
29
- rescue WIN32OLERuntimeError => e
30
- raise Error, e
29
+ rescue WIN32OLERuntimeError => err
30
+ raise Error, err
31
31
  else
32
- query = "select LastBootupTime from Win32_OperatingSystem"
33
- results = wmi.ExecQuery(query)
34
- results.each{ |ole|
35
- time_array = parse_ms_date(ole.LastBootupTime)
36
- return Time.mktime(*time_array)
37
- }
32
+ query = 'select LastBootupTime from Win32_OperatingSystem'
33
+ result = wmi.ExecQuery(query).itemIndex(0).LastBootupTime
34
+ Time.parse(result.split('.').first)
38
35
  end
39
36
  end
40
37
 
@@ -81,7 +78,7 @@ module Sys
81
78
  #
82
79
  # Sys::Uptime.hours # => 33
83
80
  #
84
- def self.hours(host=Socket.gethostname)
81
+ def self.hours(host = Socket.gethostname)
85
82
  minutes(host) / 60
86
83
  end
87
84
 
@@ -92,7 +89,7 @@ module Sys
92
89
  #
93
90
  # Sys::Uptime.minutes # => 1980
94
91
  #
95
- def self.minutes(host=Socket.gethostname)
92
+ def self.minutes(host = Socket.gethostname)
96
93
  seconds(host) / 60
97
94
  end
98
95
 
@@ -103,7 +100,7 @@ module Sys
103
100
  #
104
101
  # Sys::Uptime.seconds # => 118800
105
102
  #
106
- def self.seconds(host=Socket.gethostname)
103
+ def self.seconds(host = Socket.gethostname)
107
104
  get_seconds(host)
108
105
  end
109
106
 
@@ -114,7 +111,7 @@ module Sys
114
111
  #
115
112
  def self.parse_ms_date(str)
116
113
  return if str.nil?
117
- return Time.parse(str.split('.').first)
114
+ Time.parse(str.split('.').first)
118
115
  end
119
116
 
120
117
  private_class_method :parse_ms_date
@@ -139,7 +136,7 @@ module Sys
139
136
  # Returns the number of seconds since boot.
140
137
  #
141
138
  def self.get_seconds(host)
142
- (Time.now - boot_time).to_i
139
+ (Time.now - boot_time(host)).to_i
143
140
  end
144
141
 
145
142
  private_class_method :get_seconds
data/lib/sys-uptime.rb CHANGED
@@ -1 +1,3 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'sys/uptime'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #####################################################################
2
4
  # sys_uptime_spec.rb
3
5
  #
@@ -8,96 +10,102 @@ require 'sys/uptime'
8
10
  require 'rspec'
9
11
  require 'socket'
10
12
 
11
- describe Sys::Uptime do
12
- example "version is set to expected value" do
13
- expect(Sys::Uptime::VERSION).to eql('0.7.5')
13
+ RSpec.describe Sys::Uptime do
14
+ let(:plausible_seconds) { ENV['CI'] ? 30 : 120 }
15
+
16
+ example 'version is set to expected value' do
17
+ expect(Sys::Uptime::VERSION).to eql('0.7.6')
14
18
  expect(Sys::Uptime::VERSION.frozen?).to be(true)
15
19
  end
16
20
 
17
- example "seconds method basic functionality" do
18
- expect(Sys::Uptime).to respond_to(:seconds)
19
- expect{ Sys::Uptime.seconds }.not_to raise_error
21
+ example 'constructor is private' do
22
+ expect{ described_class.new }.to raise_error(NoMethodError)
23
+ end
24
+
25
+ example 'seconds method basic functionality' do
26
+ expect(described_class).to respond_to(:seconds)
27
+ expect{ described_class.seconds }.not_to raise_error
20
28
  end
21
29
 
22
- example "seconds method returns a plausible value" do
23
- expect(Sys::Uptime.seconds).to be_kind_of(Integer)
24
- expect(Sys::Uptime.seconds).to be > 300
30
+ example 'seconds method returns a plausible value' do
31
+ expect(described_class.seconds).to be_a(Integer)
32
+ expect(described_class.seconds).to be > plausible_seconds
25
33
  end
26
34
 
27
- example "minutes method basic functionality" do
28
- expect(Sys::Uptime).to respond_to(:minutes)
29
- expect{ Sys::Uptime.minutes }.not_to raise_error
35
+ example 'minutes method basic functionality' do
36
+ expect(described_class).to respond_to(:minutes)
37
+ expect{ described_class.minutes }.not_to raise_error
30
38
  end
31
39
 
32
- example "minutes method returns a plausible value" do
33
- expect(Sys::Uptime.minutes).to be_kind_of(Integer)
34
- expect(Sys::Uptime.minutes).to be > 5
40
+ example 'minutes method returns a plausible value', :unless => ENV.fetch('CI', nil) do
41
+ expect(described_class.minutes).to be_a(Integer)
42
+ expect(described_class.minutes).to be > 3
35
43
  end
36
44
 
37
- example "hours method basic functionality" do
38
- expect(Sys::Uptime).to respond_to(:hours)
39
- expect{ Sys::Uptime.hours }.not_to raise_error
45
+ example 'hours method basic functionality' do
46
+ expect(described_class).to respond_to(:hours)
47
+ expect{ described_class.hours }.not_to raise_error
40
48
  end
41
49
 
42
- example "hours method returns a plausible value" do
43
- expect(Sys::Uptime.hours).to be_kind_of(Integer)
44
- expect(Sys::Uptime.hours).to be > 0
50
+ example 'hours method returns a plausible value' do
51
+ expect(described_class.hours).to be_a(Integer)
52
+ expect(described_class.hours).to be >= 0
45
53
  end
46
54
 
47
- example "days method basic functionality" do
48
- expect(Sys::Uptime).to respond_to(:days)
49
- expect{ Sys::Uptime.days }.not_to raise_error
55
+ example 'days method basic functionality' do
56
+ expect(described_class).to respond_to(:days)
57
+ expect{ described_class.days }.not_to raise_error
50
58
  end
51
59
 
52
- example "days method returns a plausible value" do
53
- expect(Sys::Uptime.days).to be_kind_of(Integer)
54
- expect(Sys::Uptime.days).to be >= 0
60
+ example 'days method returns a plausible value' do
61
+ expect(described_class.days).to be_a(Integer)
62
+ expect(described_class.days).to be >= 0
55
63
  end
56
64
 
57
- example "uptime method basic functionality" do
58
- expect(Sys::Uptime).to respond_to(:uptime)
59
- expect{ Sys::Uptime.uptime }.not_to raise_error
65
+ example 'uptime method basic functionality' do
66
+ expect(described_class).to respond_to(:uptime)
67
+ expect{ described_class.uptime }.not_to raise_error
60
68
  end
61
69
 
62
- example "uptime method returns a non-empty string" do
63
- expect(Sys::Uptime.uptime).to be_kind_of(String)
64
- expect(Sys::Uptime.uptime.empty?).to be(false)
70
+ example 'uptime method returns a non-empty string' do
71
+ expect(described_class.uptime).to be_a(String)
72
+ expect(described_class.uptime.empty?).to be(false)
65
73
  end
66
74
 
67
- example "uptime method does not accept any arguments", :unless => File::ALT_SEPARATOR do
68
- expect{ Sys::Uptime.uptime(1) }.to raise_error(ArgumentError)
75
+ example 'uptime method does not accept any arguments', :unless => File::ALT_SEPARATOR do
76
+ expect{ described_class.uptime(1) }.to raise_error(ArgumentError)
69
77
  end
70
78
 
71
- example "uptime accepts a host name on Windows", :if => File::ALT_SEPARATOR do
72
- expect{ Sys::Uptime.uptime(Socket.gethostname) }.not_to raise_error
79
+ example 'uptime accepts a host name on Windows', :if => File::ALT_SEPARATOR do
80
+ expect{ described_class.uptime(Socket.gethostname) }.not_to raise_error
73
81
  end
74
82
 
75
- example "dhms method basic functionality" do
76
- expect(Sys::Uptime).to respond_to(:dhms)
77
- expect{ Sys::Uptime.dhms }.not_to raise_error
78
- expect(Sys::Uptime.dhms).to be_kind_of(Array)
83
+ example 'dhms method basic functionality' do
84
+ expect(described_class).to respond_to(:dhms)
85
+ expect{ described_class.dhms }.not_to raise_error
86
+ expect(described_class.dhms).to be_a(Array)
79
87
  end
80
88
 
81
- example "dhms method returns an array of four elements" do
82
- expect(Sys::Uptime.dhms).not_to be_empty
83
- expect(Sys::Uptime.dhms.length).to eql(4)
89
+ example 'dhms method returns an array of four elements' do
90
+ expect(described_class.dhms).not_to be_empty
91
+ expect(described_class.dhms.length).to eq(4)
84
92
  end
85
93
 
86
- example "boot_time method basic functionality" do
87
- expect(Sys::Uptime).to respond_to(:boot_time)
88
- expect{ Sys::Uptime.boot_time }.not_to raise_error
94
+ example 'boot_time method basic functionality' do
95
+ expect(described_class).to respond_to(:boot_time)
96
+ expect{ described_class.boot_time }.not_to raise_error
89
97
  end
90
98
 
91
- example "boot_time method returns a Time object" do
92
- expect(Sys::Uptime.boot_time).to be_kind_of(Time)
99
+ example 'boot_time method returns a Time object' do
100
+ expect(described_class.boot_time).to be_a(Time)
93
101
  end
94
102
 
95
- example "Uptime class cannot be instantiated" do
96
- expect{ Sys::Uptime.new }.to raise_error(StandardError)
103
+ example 'Uptime class cannot be instantiated' do
104
+ expect{ described_class.new }.to raise_error(StandardError)
97
105
  end
98
106
 
99
- example "Ensure that ffi functions are private" do
100
- methods = Sys::Uptime.methods(false).map{ |e| e.to_s }
107
+ example 'Ensure that ffi functions are private' do
108
+ methods = described_class.methods(false).map(&:to_s)
101
109
  expect(methods).not_to include('time', 'times')
102
110
  end
103
111
  end
data/sys-uptime.gemspec CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'sys-uptime'
5
- spec.version = '0.7.5'
5
+ spec.version = '0.7.6'
6
6
  spec.author = 'Daniel J. Berger'
7
7
  spec.license = 'Apache-2.0'
8
8
  spec.email = 'djberg96@gmail.com'
@@ -12,15 +12,26 @@ Gem::Specification.new do |spec|
12
12
  spec.files = Dir["**/*"].reject{ |f| f.include?('git') }
13
13
  spec.cert_chain = ['certs/djberg96_pub.pem']
14
14
 
15
- spec.add_development_dependency 'rspec', '~> 3.9'
15
+ if File::ALT_SEPARATOR
16
+ spec.platform = Gem::Platform.new(['universal', 'mingw32'])
17
+ else
18
+ spec.add_dependency('ffi', '~> 1.1')
19
+ end
20
+
21
+ spec.add_development_dependency('rake')
22
+ spec.add_development_dependency('rspec', '~> 3.9')
23
+ spec.add_development_dependency('rubocop')
24
+ spec.add_development_dependency('rubocop-rspec')
16
25
 
17
26
  spec.metadata = {
18
- 'homepage_uri' => 'https://github.com/djberg96/sys-uptime',
19
- 'bug_tracker_uri' => 'https://github.com/djberg96/sys-uptime/issues',
20
- 'changelog_uri' => 'https://github.com/djberg96/sys-uptime/blob/ffi/CHANGES.md',
21
- 'documentation_uri' => 'https://github.com/djberg96/sys-uptime/wiki',
22
- 'source_code_uri' => 'https://github.com/djberg96/sys-uptime',
23
- 'wiki_uri' => 'https://github.com/djberg96/sys-uptime/wiki'
27
+ 'homepage_uri' => 'https://github.com/djberg96/sys-uptime',
28
+ 'bug_tracker_uri' => 'https://github.com/djberg96/sys-uptime/issues',
29
+ 'changelog_uri' => 'https://github.com/djberg96/sys-uptime/blob/main/CHANGES.md',
30
+ 'documentation_uri' => 'https://github.com/djberg96/sys-uptime/wiki',
31
+ 'source_code_uri' => 'https://github.com/djberg96/sys-uptime',
32
+ 'wiki_uri' => 'https://github.com/djberg96/sys-uptime/wiki',
33
+ 'rubygems_mfa_required' => 'true',
34
+ 'github_repo' => 'https://github.com/djberg96/sys-uptime'
24
35
  }
25
36
 
26
37
  spec.description = <<-EOF
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sys-uptime
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.5
4
+ version: 0.7.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel J. Berger
@@ -35,8 +35,36 @@ cert_chain:
35
35
  ORVCZpRuCPpmC8qmqxUnARDArzucjaclkxjLWvCVHeFa9UP7K3Nl9oTjJNv+7/jM
36
36
  WZs4eecIcUc4tKdHxcAJ0MO/Dkqq7hGaiHpwKY76wQ1+8xAh
37
37
  -----END CERTIFICATE-----
38
- date: 2020-10-29 00:00:00.000000000 Z
38
+ date: 2023-04-10 00:00:00.000000000 Z
39
39
  dependencies:
40
+ - !ruby/object:Gem::Dependency
41
+ name: ffi
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.1'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.1'
54
+ - !ruby/object:Gem::Dependency
55
+ name: rake
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ type: :development
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
40
68
  - !ruby/object:Gem::Dependency
41
69
  name: rspec
42
70
  requirement: !ruby/object:Gem::Requirement
@@ -52,19 +80,33 @@ dependencies:
52
80
  - !ruby/object:Gem::Version
53
81
  version: '3.9'
54
82
  - !ruby/object:Gem::Dependency
55
- name: ffi
83
+ name: rubocop
56
84
  requirement: !ruby/object:Gem::Requirement
57
85
  requirements:
58
- - - "~>"
86
+ - - ">="
59
87
  - !ruby/object:Gem::Version
60
- version: '1.1'
61
- type: :runtime
88
+ version: '0'
89
+ type: :development
62
90
  prerelease: false
63
91
  version_requirements: !ruby/object:Gem::Requirement
64
92
  requirements:
65
- - - "~>"
93
+ - - ">="
66
94
  - !ruby/object:Gem::Version
67
- version: '1.1'
95
+ version: '0'
96
+ - !ruby/object:Gem::Dependency
97
+ name: rubocop-rspec
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
68
110
  description: |2
69
111
  The sys-uptime library is a simple interface for gathering uptime
70
112
  information. You can retrieve data in seconds, minutes, days, hours,
@@ -94,10 +136,12 @@ licenses:
94
136
  metadata:
95
137
  homepage_uri: https://github.com/djberg96/sys-uptime
96
138
  bug_tracker_uri: https://github.com/djberg96/sys-uptime/issues
97
- changelog_uri: https://github.com/djberg96/sys-uptime/blob/ffi/CHANGES.md
139
+ changelog_uri: https://github.com/djberg96/sys-uptime/blob/main/CHANGES.md
98
140
  documentation_uri: https://github.com/djberg96/sys-uptime/wiki
99
141
  source_code_uri: https://github.com/djberg96/sys-uptime
100
142
  wiki_uri: https://github.com/djberg96/sys-uptime/wiki
143
+ rubygems_mfa_required: 'true'
144
+ github_repo: https://github.com/djberg96/sys-uptime
101
145
  post_install_message:
102
146
  rdoc_options: []
103
147
  require_paths:
@@ -113,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
113
157
  - !ruby/object:Gem::Version
114
158
  version: '0'
115
159
  requirements: []
116
- rubygems_version: 3.1.4
160
+ rubygems_version: 3.3.26
117
161
  signing_key:
118
162
  specification_version: 4
119
163
  summary: A Ruby interface for getting system uptime information.
metadata.gz.sig CHANGED
Binary file