benchmark_driver 0.16.4 → 0.17.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
2
  SHA256:
3
- metadata.gz: 7f9cf509e30003805a04ef225d6941f96b355f833121ef8bc3dcb35476a12569
4
- data.tar.gz: d8709282ed2d0505322b124c68a6a618f3085f906ae3f503cf6b2333756c7d02
3
+ metadata.gz: 4bb392e10b5a3f1af16a45c89b9e26442b9c50c5e050f7ca4cb66471fe8193f1
4
+ data.tar.gz: dd4897cbabfb67f617398a7c97f91cf12bd9c31c84f27f886aabea768ec096d0
5
5
  SHA512:
6
- metadata.gz: dcc32a63dc71bfa73a80f2e21adff057ef24baa939c17f613e7c26c4cd737c1345ecd713c5f4245eb8877fa08528d219e44a31b1dfe2c2924a683f003293a53f
7
- data.tar.gz: deff92f21009fe2d306a49b100b3a04c1ec490f4658400573dc71345f276ffee99956c8c340cd0704548d99b6bb716ebd0d35c8e91b07692d32a79fa8b240830
6
+ metadata.gz: f480a2ecd2f46b0e59cb3d741c0bcb58593152646cefdf27a762a672e10bace574f0c1fbe2f979a7e40326893f39032f894100d698a4c3510285158b7de5d61d
7
+ data.tar.gz: ac15e3d03b9481d027e1fbbf5f12d8927035961bb771a450e4b8aa3d10a9a93b14aef8b31cda346924503d171f2993b7a4e2f630725d199bed2e5d8b2f288c97
@@ -0,0 +1,46 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ permissions:
9
+ contents: read
10
+
11
+ jobs:
12
+ push:
13
+ if: github.repository_owner == 'benchmark-driver'
14
+ runs-on: ubuntu-latest
15
+
16
+ environment:
17
+ name: rubygems.org
18
+ url: https://rubygems.org/gems/benchmark_driver
19
+
20
+ permissions:
21
+ contents: write
22
+ id-token: write
23
+
24
+ steps:
25
+ - name: Harden Runner
26
+ uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
27
+ with:
28
+ egress-policy: audit
29
+
30
+ - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
31
+
32
+ - name: Set up Ruby
33
+ uses: ruby/setup-ruby@eaecf785f6a34567a6d97f686bbb7bccc1ac1e5c # v1.237.0
34
+ with:
35
+ ruby-version: ruby
36
+ bundler-cache: true
37
+
38
+ - name: Publish to RubyGems
39
+ uses: rubygems/release-gem@a25424ba2ba8b387abc8ef40807c2c85b96cbe32 # v1.1.1
40
+
41
+ - name: Create GitHub release
42
+ run: |
43
+ tag_name="$(git describe --tags --abbrev=0)"
44
+ gh release create "${tag_name}" --verify-tag --generate-notes
45
+ env:
46
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -16,11 +16,9 @@ jobs:
16
16
  strategy:
17
17
  matrix:
18
18
  ruby:
19
- - '2.5'
20
- - '2.6'
21
- - '2.7'
22
- - '3.0'
23
- - '3.1'
19
+ - '3.2'
20
+ - '3.3'
21
+ - '3.4'
24
22
  fail-fast: false
25
23
  steps:
26
24
  - uses: actions/checkout@v2
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ # v0.17.0
2
+
3
+ - Bump required Ruby version to 2.3
4
+
5
+ # v0.16.5
6
+
7
+ - Handle cpuinfo without MHz [#79](https://github.com/benchmark-driver/benchmark-driver/pull/79)
8
+
1
9
  # v0.16.4
2
10
 
3
11
  - Fix broken output on `-o markdown --output-compare`
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.bindir = 'exe'
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ['lib']
22
- spec.required_ruby_version = '>= 2.5.0'
22
+ spec.required_ruby_version = '>= 3.2.0'
23
23
 
24
24
  spec.add_development_dependency 'bundler'
25
25
  spec.add_development_dependency 'rake'
@@ -99,7 +99,7 @@ class BenchmarkDriver::Output::Compare
99
99
  result = @job_results.first
100
100
  sec = result.duration
101
101
  iter = result.loop_count
102
- if File.exist?('/proc/cpuinfo') && (clks = estimate_clock(sec, iter)) < 1_000
102
+ if File.exist?('/proc/cpuinfo') && (clks = estimate_clock(sec, iter)) && (clks < 1_000)
103
103
  $stdout.print(" (#{pretty_sec(sec, iter)}/i, #{clks}clocks/i)")
104
104
  else
105
105
  $stdout.print(" (#{pretty_sec(sec, iter)}/i)")
@@ -156,7 +156,11 @@ class BenchmarkDriver::Output::Compare
156
156
  end
157
157
 
158
158
  def estimate_clock sec, iter
159
- hz = File.read('/proc/cpuinfo').scan(/cpu MHz\s+:\s+([\d\.]+)/){|(f)| break hz = Rational(f.to_f) * 1_000_000}
159
+ hz = nil
160
+
161
+ File.read('/proc/cpuinfo').scan(/cpu MHz\s+:\s+([\d\.]+)/){|(f)| break hz = Rational(f.to_f) * 1_000_000}
162
+ return unless hz
163
+
160
164
  r = Rational(sec, iter)
161
165
  Integer(r/(1/hz))
162
166
  end
@@ -1,3 +1,3 @@
1
1
  module BenchmarkDriver
2
- VERSION = '0.16.4'
2
+ VERSION = '0.17.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: benchmark_driver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.4
4
+ version: 0.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takashi Kokubun
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2023-09-30 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: bundler
@@ -74,6 +73,7 @@ executables:
74
73
  extensions: []
75
74
  extra_rdoc_files: []
76
75
  files:
76
+ - ".github/workflows/release.yml"
77
77
  - ".github/workflows/test.yml"
78
78
  - ".gitignore"
79
79
  - ".rspec"
@@ -132,7 +132,6 @@ homepage: https://github.com/benchmark-driver/benchmark-driver
132
132
  licenses:
133
133
  - MIT
134
134
  metadata: {}
135
- post_install_message:
136
135
  rdoc_options: []
137
136
  require_paths:
138
137
  - lib
@@ -140,15 +139,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
140
139
  requirements:
141
140
  - - ">="
142
141
  - !ruby/object:Gem::Version
143
- version: 2.5.0
142
+ version: 3.2.0
144
143
  required_rubygems_version: !ruby/object:Gem::Requirement
145
144
  requirements:
146
145
  - - ">="
147
146
  - !ruby/object:Gem::Version
148
147
  version: '0'
149
148
  requirements: []
150
- rubygems_version: 3.4.10
151
- signing_key:
149
+ rubygems_version: 3.6.7
152
150
  specification_version: 4
153
151
  summary: Fully-featured accurate benchmark driver for Ruby
154
152
  test_files: []