schwad_performance_logger 0.2.0 → 0.3.0

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: 674ca62fc24c2236c78edd52c4c17fab4c46d946
4
- data.tar.gz: 8a2f881fc9ab052022799e2f634599c7b9a59d6c
2
+ SHA256:
3
+ metadata.gz: 8823086eed0c0363c91480f19696b7a643880c1a368f992c47ba91f523e689de
4
+ data.tar.gz: e8d5e0f0d27facc1fecb0c30c7af37eb27e5f3cd9424cfc0a2ac5bfd63cce612
5
5
  SHA512:
6
- metadata.gz: 13cd63c83a5ab428a8665324a6f691d08b523949797374ea34a283d5c61b36041ffec4b426edb13f7ec5801dd2ca12105584f9046a49bd622534f3a920899e8f
7
- data.tar.gz: 5586264c2c7028890803417ee1875c65acec5731b3345d16c68d0181ab40afb044c198df6970eeb9b15078e30fef8abc17a329b20731a84cb1372094fe1693e5
6
+ metadata.gz: 94f1e01c9f41e6fb2911f3d129203cf12826ab7ee868890fefaf1f208314163d42d4f0e3c8eb2064bc25659536f9f0ed5dd14d305ff566f44d28dd0cb28590a1
7
+ data.tar.gz: 0e8a7d78bab70bab0653579d3dd00ddce12dd3e1374974d0d8bd23e985577dc5abd28d9772344d0edaa77d73df3ba6ce8ca6e4912ebfb39336e3cc71246572b1
data/.gitignore CHANGED
File without changes
data/.rspec CHANGED
File without changes
data/.travis.yml CHANGED
File without changes
data/CODE_OF_CONDUCT.md CHANGED
File without changes
data/Gemfile CHANGED
File without changes
data/Gemfile.lock CHANGED
File without changes
data/LICENSE.txt CHANGED
File without changes
data/README.md CHANGED
File without changes
data/Rakefile CHANGED
File without changes
@@ -2,6 +2,7 @@ require 'schwad_performance_logger/version'
2
2
  require 'csv'
3
3
  require 'logger'
4
4
  require 'get_process_mem'
5
+ require 'benchmark/ips'
5
6
  require 'schwad_performance_logger/schwad_performance_logger'
6
7
 
7
8
 
@@ -13,4 +14,39 @@ module SchwadPerformanceLogger
13
14
  puts "I'm sorry, I don't know what you're trying to pass here!\n\n Please refer to the docs or pass an options hash https://github.com/oceanshq/schwad_performance_logger"
14
15
  end
15
16
  end
17
+
18
+ def self.ips
19
+ Benchmark.ips do |x|
20
+ x.report("PerformanceLogMethod") do
21
+ suppress_output do
22
+ yield
23
+ end
24
+ end
25
+ end
26
+ end
27
+
28
+ def self.time
29
+ suppress_output do
30
+ length_of_time = []
31
+ 10.times do
32
+ start_time = Time.now
33
+ yield
34
+ length_of_time << Time.now - start_time
35
+ end
36
+ end
37
+ puts "Average runtime #{length_of_time.sum / 10.0} seconds. Max time #{length_of_time.max}.seconds"
38
+ end
39
+
40
+ private
41
+
42
+ def self.suppress_output
43
+ original_stderr = $stderr.clone
44
+ original_stdout = $stdout.clone
45
+ $stderr.reopen(File.new('/dev/null', 'w'))
46
+ $stdout.reopen(File.new('/dev/null', 'w'))
47
+ yield
48
+ ensure
49
+ $stdout.reopen(original_stdout)
50
+ $stderr.reopen(original_stderr)
51
+ end
16
52
  end
@@ -1,3 +1,3 @@
1
1
  module SchwadPerformanceLogger
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["nicholas.schwaderer@gmail.com"]
11
11
 
12
12
  spec.summary = %q{Track your memory and time performance in console, csv and/or logs.}
13
- spec.homepage = "https://github.com/oceanshq/schwad_performance_logger"
13
+ spec.homepage = "https://schwad.github.io"
14
14
  spec.license = "MIT"
15
15
 
16
16
  # Specify which files should be added to the gem when it is released.
@@ -23,6 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.require_paths = ["lib"]
24
24
 
25
25
  spec.add_dependency "get_process_mem"
26
+ spec.add_dependency "benchmark-ips"
26
27
 
27
28
  spec.add_development_dependency "bundler", "~> 1.16"
28
29
  spec.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schwad_performance_logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Schwaderer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-30 00:00:00.000000000 Z
11
+ date: 2019-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: get_process_mem
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: benchmark-ips
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -88,7 +102,7 @@ files:
88
102
  - lib/schwad_performance_logger/schwad_performance_logger.rb
89
103
  - lib/schwad_performance_logger/version.rb
90
104
  - schwad_performance_logger.gemspec
91
- homepage: https://github.com/oceanshq/schwad_performance_logger
105
+ homepage: https://schwad.github.io
92
106
  licenses:
93
107
  - MIT
94
108
  metadata: {}
@@ -107,8 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
121
  - !ruby/object:Gem::Version
108
122
  version: '0'
109
123
  requirements: []
110
- rubyforge_project:
111
- rubygems_version: 2.6.14.1
124
+ rubygems_version: 3.0.6
112
125
  signing_key:
113
126
  specification_version: 4
114
127
  summary: Track your memory and time performance in console, csv and/or logs.