prometheus-client-mmap 0.20.3 → 0.22.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -46,13 +46,22 @@ module Prometheus
46
46
 
47
47
  private
48
48
 
49
+ def load_rust_extension
50
+ begin
51
+ ruby_version = /(\d+\.\d+)/.match(RUBY_VERSION)
52
+ require_relative "../../../#{ruby_version}/fast_mmaped_file_rs"
53
+ rescue LoadError
54
+ require 'fast_mmaped_file_rs'
55
+ end
56
+ end
57
+
49
58
  def check_for_rust
50
59
  # This will be evaluated on each invocation even with `||=` if
51
60
  # `@rust_available` if false. Running a `require` statement is slow,
52
61
  # so the `rust_impl_available?` method memoizes the result, external
53
62
  # callers can only trigger this method a single time.
54
63
  @rust_available = begin
55
- require 'fast_mmaped_file_rs'
64
+ load_rust_extension
56
65
  true
57
66
  rescue LoadError
58
67
  Prometheus::Client.logger.info('FastMmapedFileRs unavailable')
@@ -1,6 +1,13 @@
1
1
  require 'prometheus/client/helper/entry_parser'
2
2
  require 'prometheus/client/helper/file_locker'
3
- require 'fast_mmaped_file'
3
+
4
+ # load precompiled extension if available
5
+ begin
6
+ ruby_version = /(\d+\.\d+)/.match(RUBY_VERSION)
7
+ require_relative "../../../#{ruby_version}/fast_mmaped_file"
8
+ rescue LoadError
9
+ require 'fast_mmaped_file'
10
+ end
4
11
 
5
12
  module Prometheus
6
13
  module Client
@@ -1,5 +1,5 @@
1
1
  module Prometheus
2
2
  module Client
3
- VERSION = '0.20.3'.freeze
3
+ VERSION = '0.22.0'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,15 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prometheus-client-mmap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.3
4
+ version: 0.22.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Schmidt
8
8
  - Paweł Chojnacki
9
- autorequire:
9
+ - Stan Hu
10
+ - Will Chandler
11
+ autorequire:
10
12
  bindir: bin
11
13
  cert_chain: []
12
- date: 2023-04-19 00:00:00.000000000 Z
14
+ date: 2023-04-28 00:00:00.000000000 Z
13
15
  dependencies:
14
16
  - !ruby/object:Gem::Dependency
15
17
  name: rb_sys
@@ -79,14 +81,28 @@ dependencies:
79
81
  requirements:
80
82
  - - "~>"
81
83
  - !ruby/object:Gem::Version
82
- version: '1'
84
+ version: 1.2.1
83
85
  type: :development
84
86
  prerelease: false
85
87
  version_requirements: !ruby/object:Gem::Requirement
86
88
  requirements:
87
89
  - - "~>"
88
90
  - !ruby/object:Gem::Version
89
- version: '1'
91
+ version: 1.2.1
92
+ - !ruby/object:Gem::Dependency
93
+ name: rake-compiler-dock
94
+ requirement: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - "~>"
97
+ - !ruby/object:Gem::Version
98
+ version: 1.3.0
99
+ type: :development
100
+ prerelease: false
101
+ version_requirements: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - "~>"
104
+ - !ruby/object:Gem::Version
105
+ version: 1.3.0
90
106
  - !ruby/object:Gem::Dependency
91
107
  name: ruby-prof
92
108
  requirement: !ruby/object:Gem::Requirement
@@ -101,10 +117,12 @@ dependencies:
101
117
  - - "~>"
102
118
  - !ruby/object:Gem::Version
103
119
  version: 0.16.2
104
- description:
120
+ description:
105
121
  email:
106
122
  - ts@soundcloud.com
107
123
  - pawel@gitlab.com
124
+ - stanhu@gmail.com
125
+ - wchandler@gitlab.com
108
126
  executables: []
109
127
  extensions:
110
128
  - ext/fast_mmaped_file/extconf.rb
@@ -141,6 +159,7 @@ files:
141
159
  - ext/fast_mmaped_file_rs/src/macros.rs
142
160
  - ext/fast_mmaped_file_rs/src/map.rs
143
161
  - ext/fast_mmaped_file_rs/src/mmap.rs
162
+ - ext/fast_mmaped_file_rs/src/mmap/inner.rs
144
163
  - ext/fast_mmaped_file_rs/src/parser.rs
145
164
  - ext/fast_mmaped_file_rs/src/raw_entry.rs
146
165
  - ext/fast_mmaped_file_rs/src/testhelper.rs
@@ -197,7 +216,7 @@ homepage: https://gitlab.com/gitlab-org/prometheus-client-mmap
197
216
  licenses:
198
217
  - Apache-2.0
199
218
  metadata: {}
200
- post_install_message:
219
+ post_install_message:
201
220
  rdoc_options: []
202
221
  require_paths:
203
222
  - lib
@@ -210,10 +229,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
210
229
  requirements:
211
230
  - - ">="
212
231
  - !ruby/object:Gem::Version
213
- version: '0'
232
+ version: 3.3.22
214
233
  requirements: []
215
- rubygems_version: 3.4.12
216
- signing_key:
234
+ rubygems_version: 3.3.26
235
+ signing_key:
217
236
  specification_version: 4
218
237
  summary: A suite of instrumentation metric primitivesthat can be exposed through a
219
238
  web services interface.