dyndnsd 2.0.0.rc2 → 2.0.0

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: 7d12f3aa8ebb411e16c8c9bb117ccd6f3f1f06867c6e4feb2e54400ff7446457
4
- data.tar.gz: 8c97f20745b4f1fc494548f5f0ab923eaa311f354228b38ca757033a816332f6
3
+ metadata.gz: a8373e34fd44e861f221c7c1161190b337ef9c29b0ab1e78ffffba5a71640424
4
+ data.tar.gz: 0c65baa8f6ec8f2da2e2b0cd9789f7b0ed3c704fecb44d7463b9181044281a8c
5
5
  SHA512:
6
- metadata.gz: 84c42e1b4ae0733fd0d266c0349b56d92cf81253046525ecb653e2bc3ca7688f6fd9c42c1d1864bc9e21dddca88ee0be0866feef3cf003705fad12a15d18d353
7
- data.tar.gz: 18dac63a9287c6411baab8a325671516ac0663f68a557a7a107e52d10274a02cb1228f79acd167f78cec9d93a02e96c6d6973d522c0fcc4996c8e5de44594a8e
6
+ metadata.gz: e6b2c0fa580f6cb11317cf22444ff86833bf2cf5615c1a27519e2ef0f9b5d0855be5cb12ad527f013bc8274e4992d360e34dcc3a4c07be8db185dc126c249137
7
+ data.tar.gz: 25d1751affc10bfb8210142440fe6c191e1d84396f3d75d9eb1d71f7a9727aa41a9a09984fd4ff68caaec07abf8b44d2b620fdd78e360c0af3d6313ada441142
@@ -6,10 +6,19 @@ AllCops:
6
6
  Gemspec/OrderedDependencies:
7
7
  Enabled: false
8
8
 
9
+ Layout/AlignHash:
10
+ Enabled: false
11
+
12
+ Layout/EmptyLineAfterGuardClause:
13
+ Enabled: false
14
+
9
15
  # allows nicer usage of private_class_method
10
16
  Layout/EmptyLinesAroundArguments:
11
17
  Enabled: false
12
18
 
19
+ Layout/LeadingBlankLines:
20
+ Enabled: false
21
+
13
22
  Layout/SpaceInsideHashLiteralBraces:
14
23
  Enabled: false
15
24
 
@@ -2,6 +2,7 @@
2
2
  sudo: false
3
3
  language: ruby
4
4
  rvm:
5
+ - 2.6
5
6
  - 2.5
6
7
  - 2.4
7
8
  - 2.3
@@ -1,6 +1,6 @@
1
1
  # Changelog
2
2
 
3
- ## 2.0.0
3
+ ## 2.0.0 (January 25, 2019)
4
4
 
5
5
  IMPROVEMENTS:
6
6
 
@@ -8,7 +8,7 @@ IMPROVEMENTS:
8
8
  - Better protocol compliance by returning `badauth` in response body on HTTP 401 errors
9
9
  - Better code maintainability by refactorings
10
10
  - Update dependencies, mainly `rack` to new major version 2
11
- - Add Ruby 2.5 support
11
+ - Add Ruby 2.5 and Ruby 2.6 support
12
12
  - Add experimental [OpenTracing](http://opentracing.io/) support with [CNCF Jaeger](https://github.com/jaegertracing/jaeger)
13
13
  - Support host offlining by deleting the associated DNS records
14
14
  - Add textfile reporter to write Graphite-style metrics (also compatible with [Prometheus](https://prometheus.io/)) into a file
data/Rakefile CHANGED
@@ -1,8 +1,10 @@
1
1
  require 'bundler/gem_tasks'
2
2
  require 'rspec/core/rake_task'
3
3
  require 'rubocop/rake_task'
4
+ require 'bundler/audit/task'
4
5
 
5
6
  RSpec::Core::RakeTask.new(:spec)
6
7
  RuboCop::RakeTask.new
8
+ Bundler::Audit::Task.new
7
9
 
8
- task default: [:rubocop, :spec]
10
+ task default: [:rubocop, :spec, 'bundle:audit']
@@ -23,14 +23,14 @@ Gem::Specification.new do |s|
23
23
  s.add_runtime_dependency 'rack', '~> 2.0'
24
24
  s.add_runtime_dependency 'json'
25
25
  s.add_runtime_dependency 'metriks'
26
- s.add_runtime_dependency 'opentracing', '~> 0.4.0'
27
- s.add_runtime_dependency 'rack-tracer', '~> 0.5.0'
28
- s.add_runtime_dependency 'spanmanager', '~> 0.3.0'
29
- s.add_runtime_dependency 'jaeger-client', '~> 0.4.0'
26
+ s.add_runtime_dependency 'opentracing', '~> 0.5.0'
27
+ s.add_runtime_dependency 'rack-tracer', '~> 0.8.0'
28
+ s.add_runtime_dependency 'jaeger-client', '~> 0.10.0'
30
29
 
31
30
  s.add_development_dependency 'bundler'
32
31
  s.add_development_dependency 'rake'
33
32
  s.add_development_dependency 'rspec'
34
33
  s.add_development_dependency 'rack-test'
35
- s.add_development_dependency 'rubocop', '~> 0.55.0'
34
+ s.add_development_dependency 'rubocop', '~> 0.63.0'
35
+ s.add_development_dependency 'bundler-audit'
36
36
  end
@@ -10,7 +10,6 @@ require 'metriks'
10
10
  require 'metriks/reporter/graphite'
11
11
  require 'opentracing'
12
12
  require 'rack/tracer'
13
- require 'spanmanager'
14
13
 
15
14
  require 'dyndnsd/generator/bind'
16
15
  require 'dyndnsd/updater/command_with_bind_zone'
@@ -266,8 +265,6 @@ module Dyndnsd
266
265
  host: host, port: port, service_name: service_name, flush_interval: 1
267
266
  )
268
267
  end
269
- # always use SpanManager
270
- OpenTracing.global_tracer = SpanManager::Tracer.new(OpenTracing.global_tracer)
271
268
  end
272
269
 
273
270
  private_class_method def self.setup_rack(config)
@@ -28,13 +28,24 @@ module Dyndnsd
28
28
  end
29
29
 
30
30
  def self.span(operation, &block)
31
- span = OpenTracing.start_span(operation)
31
+ scope = OpenTracing.start_active_span(operation)
32
+ span = scope.span
32
33
  span.set_tag('component', 'dyndnsd')
33
34
  span.set_tag('span.kind', 'server')
34
35
  begin
35
36
  block.call(span)
37
+ rescue StandardError => e
38
+ span.set_tag('error', true)
39
+ span.log_kv(
40
+ event: 'error',
41
+ 'error.kind': e.class.to_s,
42
+ 'error.object': e,
43
+ message: e.message,
44
+ stack: e.backtrace.join("\n")
45
+ )
46
+ raise
36
47
  ensure
37
- span.finish
48
+ scope.close
38
49
  end
39
50
  end
40
51
  end
@@ -1,4 +1,4 @@
1
1
 
2
2
  module Dyndnsd
3
- VERSION = '2.0.0.rc2'.freeze
3
+ VERSION = '2.0.0'.freeze
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dyndnsd
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.rc2
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Nicolai
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-23 00:00:00.000000000 Z
11
+ date: 2019-01-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -54,20 +54,6 @@ dependencies:
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: opentracing
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: 0.4.0
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: 0.4.0
69
- - !ruby/object:Gem::Dependency
70
- name: rack-tracer
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - "~>"
@@ -81,33 +67,33 @@ dependencies:
81
67
  - !ruby/object:Gem::Version
82
68
  version: 0.5.0
83
69
  - !ruby/object:Gem::Dependency
84
- name: spanmanager
70
+ name: rack-tracer
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: 0.3.0
75
+ version: 0.8.0
90
76
  type: :runtime
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: 0.3.0
82
+ version: 0.8.0
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: jaeger-client
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
87
  - - "~>"
102
88
  - !ruby/object:Gem::Version
103
- version: 0.4.0
89
+ version: 0.10.0
104
90
  type: :runtime
105
91
  prerelease: false
106
92
  version_requirements: !ruby/object:Gem::Requirement
107
93
  requirements:
108
94
  - - "~>"
109
95
  - !ruby/object:Gem::Version
110
- version: 0.4.0
96
+ version: 0.10.0
111
97
  - !ruby/object:Gem::Dependency
112
98
  name: bundler
113
99
  requirement: !ruby/object:Gem::Requirement
@@ -170,14 +156,28 @@ dependencies:
170
156
  requirements:
171
157
  - - "~>"
172
158
  - !ruby/object:Gem::Version
173
- version: 0.55.0
159
+ version: 0.63.0
174
160
  type: :development
175
161
  prerelease: false
176
162
  version_requirements: !ruby/object:Gem::Requirement
177
163
  requirements:
178
164
  - - "~>"
179
165
  - !ruby/object:Gem::Version
180
- version: 0.55.0
166
+ version: 0.63.0
167
+ - !ruby/object:Gem::Dependency
168
+ name: bundler-audit
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
181
  description: A small, lightweight and extensible DynDNS server written with Ruby and
182
182
  Rack.
183
183
  email: chrnicolai@gmail.com
@@ -226,12 +226,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
226
226
  version: '2.3'
227
227
  required_rubygems_version: !ruby/object:Gem::Requirement
228
228
  requirements:
229
- - - ">"
229
+ - - ">="
230
230
  - !ruby/object:Gem::Version
231
- version: 1.3.1
231
+ version: '0'
232
232
  requirements: []
233
233
  rubyforge_project:
234
- rubygems_version: 2.7.6
234
+ rubygems_version: 2.7.7
235
235
  signing_key:
236
236
  specification_version: 4
237
237
  summary: dyndnsd.rb