dyndnsd 2.0.0.rc2 → 2.0.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: 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