dnsimple 4.4.0 → 5.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. checksums.yaml +5 -5
  2. data/.dependabot/config.yml +9 -0
  3. data/.rubocop.yml +2 -0
  4. data/.rubocop_dnsimple.yml +110 -39
  5. data/.travis.yml +8 -9
  6. data/CHANGELOG.md +55 -24
  7. data/CONTRIBUTING.md +55 -7
  8. data/Gemfile +4 -1
  9. data/LICENSE.txt +1 -1
  10. data/README.md +8 -6
  11. data/dnsimple.gemspec +3 -3
  12. data/lib/dnsimple.rb +2 -0
  13. data/lib/dnsimple/client.rb +12 -10
  14. data/lib/dnsimple/client/accounts.rb +2 -1
  15. data/lib/dnsimple/client/certificates.rb +3 -0
  16. data/lib/dnsimple/client/clients.rb +6 -2
  17. data/lib/dnsimple/client/contacts.rb +2 -5
  18. data/lib/dnsimple/client/domains.rb +3 -5
  19. data/lib/dnsimple/client/{collaborators.rb → domains_collaborators.rb} +3 -1
  20. data/lib/dnsimple/client/domains_delegation_signer_records.rb +2 -0
  21. data/lib/dnsimple/client/domains_dnssec.rb +2 -0
  22. data/lib/dnsimple/client/domains_email_forwards.rb +2 -0
  23. data/lib/dnsimple/client/domains_pushes.rb +2 -0
  24. data/lib/dnsimple/client/identity.rb +2 -0
  25. data/lib/dnsimple/client/oauth.rb +2 -0
  26. data/lib/dnsimple/client/registrar.rb +46 -0
  27. data/lib/dnsimple/client/registrar_auto_renewal.rb +2 -0
  28. data/lib/dnsimple/client/registrar_delegation.rb +6 -4
  29. data/lib/dnsimple/client/registrar_whois_privacy.rb +23 -1
  30. data/lib/dnsimple/client/services.rb +2 -2
  31. data/lib/dnsimple/client/services_domains.rb +2 -0
  32. data/lib/dnsimple/client/templates.rb +2 -0
  33. data/lib/dnsimple/client/templates_domains.rb +2 -0
  34. data/lib/dnsimple/client/templates_records.rb +2 -0
  35. data/lib/dnsimple/client/tlds.rb +16 -17
  36. data/lib/dnsimple/client/vanity_name_servers.rb +12 -10
  37. data/lib/dnsimple/client/webhooks.rb +2 -3
  38. data/lib/dnsimple/client/zones.rb +2 -1
  39. data/lib/dnsimple/client/zones_distributions.rb +49 -0
  40. data/lib/dnsimple/client/zones_records.rb +25 -28
  41. data/lib/dnsimple/default.rb +11 -9
  42. data/lib/dnsimple/error.rb +2 -0
  43. data/lib/dnsimple/extra.rb +2 -0
  44. data/lib/dnsimple/options.rb +2 -0
  45. data/lib/dnsimple/response.rb +6 -4
  46. data/lib/dnsimple/struct.rb +5 -0
  47. data/lib/dnsimple/struct/account.rb +2 -0
  48. data/lib/dnsimple/struct/certificate.rb +23 -2
  49. data/lib/dnsimple/struct/certificate_bundle.rb +5 -0
  50. data/lib/dnsimple/struct/certificate_purchase.rb +2 -0
  51. data/lib/dnsimple/struct/certificate_renewal.rb +2 -0
  52. data/lib/dnsimple/struct/collaborator.rb +2 -0
  53. data/lib/dnsimple/struct/contact.rb +2 -0
  54. data/lib/dnsimple/struct/delegation_signer_record.rb +2 -0
  55. data/lib/dnsimple/struct/dnssec.rb +2 -0
  56. data/lib/dnsimple/struct/domain.rb +24 -3
  57. data/lib/dnsimple/struct/domain_check.rb +2 -0
  58. data/lib/dnsimple/struct/domain_premium_price.rb +2 -0
  59. data/lib/dnsimple/struct/domain_push.rb +2 -0
  60. data/lib/dnsimple/struct/domain_registration.rb +2 -0
  61. data/lib/dnsimple/struct/domain_renewal.rb +2 -0
  62. data/lib/dnsimple/struct/domain_transfer.rb +5 -0
  63. data/lib/dnsimple/struct/email_forward.rb +2 -0
  64. data/lib/dnsimple/struct/extended_attribute.rb +2 -0
  65. data/lib/dnsimple/struct/oauth_token.rb +2 -0
  66. data/lib/dnsimple/struct/service.rb +2 -0
  67. data/lib/dnsimple/struct/template.rb +2 -0
  68. data/lib/dnsimple/struct/template_record.rb +2 -0
  69. data/lib/dnsimple/struct/tld.rb +2 -0
  70. data/lib/dnsimple/struct/user.rb +2 -0
  71. data/lib/dnsimple/struct/vanity_name_server.rb +27 -0
  72. data/lib/dnsimple/struct/webhook.rb +2 -0
  73. data/lib/dnsimple/struct/whoami.rb +2 -0
  74. data/lib/dnsimple/struct/whois_privacy.rb +2 -0
  75. data/lib/dnsimple/struct/whois_privacy_renewal.rb +30 -0
  76. data/lib/dnsimple/struct/zone.rb +2 -0
  77. data/lib/dnsimple/struct/zone_distribution.rb +13 -0
  78. data/lib/dnsimple/struct/zone_file.rb +2 -0
  79. data/lib/dnsimple/struct/zone_record.rb +2 -0
  80. data/lib/dnsimple/version.rb +3 -1
  81. data/spec/dnsimple/client/accounts_spec.rb +2 -0
  82. data/spec/dnsimple/client/certificates_spec.rb +36 -33
  83. data/spec/dnsimple/client/client_service_spec.rb +2 -0
  84. data/spec/dnsimple/client/contacts_spec.rb +2 -0
  85. data/spec/dnsimple/client/{collaborators_spec.rb → domains_collaborators_spec.rb} +2 -0
  86. data/spec/dnsimple/client/domains_delegation_signer_records_spec.rb +2 -0
  87. data/spec/dnsimple/client/domains_dnssec_spec.rb +2 -0
  88. data/spec/dnsimple/client/domains_email_forwards_spec.rb +2 -0
  89. data/spec/dnsimple/client/domains_pushes_spec.rb +2 -0
  90. data/spec/dnsimple/client/domains_spec.rb +16 -13
  91. data/spec/dnsimple/client/identity_spec.rb +2 -0
  92. data/spec/dnsimple/client/oauth_spec.rb +2 -0
  93. data/spec/dnsimple/client/registrar_auto_renewal_spec.rb +2 -0
  94. data/spec/dnsimple/client/registrar_delegation_spec.rb +5 -2
  95. data/spec/dnsimple/client/registrar_spec.rb +70 -1
  96. data/spec/dnsimple/client/registrar_whois_privacy_spec.rb +57 -0
  97. data/spec/dnsimple/client/services_domains_spec.rb +2 -0
  98. data/spec/dnsimple/client/services_spec.rb +2 -0
  99. data/spec/dnsimple/client/templates_domains_spec.rb +2 -0
  100. data/spec/dnsimple/client/templates_records_spec.rb +2 -0
  101. data/spec/dnsimple/client/templates_spec.rb +2 -0
  102. data/spec/dnsimple/client/tlds_spec.rb +15 -12
  103. data/spec/dnsimple/client/vanity_name_servers_spec.rb +2 -0
  104. data/spec/dnsimple/client/webhooks_spec.rb +2 -0
  105. data/spec/dnsimple/client/zones_distributions_spec.rb +137 -0
  106. data/spec/dnsimple/client/zones_records_spec.rb +35 -33
  107. data/spec/dnsimple/client/zones_spec.rb +2 -0
  108. data/spec/dnsimple/client_spec.rb +8 -6
  109. data/spec/dnsimple/extra_spec.rb +2 -0
  110. data/spec/dnsimple/options/base_spec.rb +2 -0
  111. data/spec/dnsimple/options/list_options_spec.rb +2 -0
  112. data/spec/fixtures.http/cancelDomainTransfer/success.http +19 -0
  113. data/spec/fixtures.http/checkZoneDistribution/error.http +21 -0
  114. data/spec/fixtures.http/checkZoneDistribution/failure.http +21 -0
  115. data/spec/fixtures.http/checkZoneDistribution/success.http +21 -0
  116. data/spec/fixtures.http/checkZoneRecordDistribution/error.http +21 -0
  117. data/spec/fixtures.http/checkZoneRecordDistribution/failure.http +21 -0
  118. data/spec/fixtures.http/checkZoneRecordDistribution/success.http +21 -0
  119. data/spec/fixtures.http/createDomain/created.http +21 -16
  120. data/spec/fixtures.http/getCertificate/success.http +11 -11
  121. data/spec/fixtures.http/getDomain/success.http +14 -9
  122. data/spec/fixtures.http/getDomainTransfer/success.http +21 -0
  123. data/spec/fixtures.http/issueLetsencryptCertificate/success.http +19 -21
  124. data/spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http +19 -21
  125. data/spec/fixtures.http/listCertificates/success.http +11 -11
  126. data/spec/fixtures.http/listDomains/success.http +21 -16
  127. data/spec/fixtures.http/purchaseLetsencryptCertificate/success.http +21 -21
  128. data/spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http +21 -21
  129. data/spec/fixtures.http/registerDomain/success.http +2 -2
  130. data/spec/fixtures.http/renewDomain/success.http +2 -2
  131. data/spec/fixtures.http/renewWhoisPrivacy/success.http +21 -0
  132. data/spec/fixtures.http/renewWhoisPrivacy/whois-privacy-duplicated-order.http +19 -0
  133. data/spec/fixtures.http/renewWhoisPrivacy/whois-privacy-not-found.http +19 -0
  134. data/spec/fixtures.http/transferDomain/success.http +2 -2
  135. data/spec/spec_helper.rb +4 -2
  136. data/spec/support/helpers.rb +2 -0
  137. data/spec/support/webmock.rb +2 -0
  138. metadata +38 -17
  139. data/.ruby-gemset +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5798dd92561074094a81017acdd5337d2497e6b0
4
- data.tar.gz: cde903898b98b7d316d0542f7e9257de64f5196a
2
+ SHA256:
3
+ metadata.gz: eb65512fa0b18965225026494660cee2722a79b2bfd0f54e514c66ab4671d4c6
4
+ data.tar.gz: af619ac80882ec17cea64ba6ea7d3552688cb08a2b0306aaf2b909e8d23a5555
5
5
  SHA512:
6
- metadata.gz: dc7c8c73aa1deace9034c3d5e4f8a392c0dbd966b73ff28c1771f581614f6efbe74e331b01225552513c63d006637f24d3df07ac68b44940aa9ada62d0a99c99
7
- data.tar.gz: 6c1cc1d2121ccbbc316bcd55a99d3c4fca2a00410298c56f69bbc22b925ce0cee1b46bc30ed97467d202183a690982b61c49ad3d84fefecbb1800b91394fe924
6
+ metadata.gz: 32f3d80ebbf898ed8dcd8ecd30b32f1e27caf5883f05c8a86874227a739eedd8b81cb30dbb31651797de927257d025b54bc57d9d324c5eb4fb196483ecf22e60
7
+ data.tar.gz: 5f793cf92e6b11a46eca6eaaee769580cb1b168b94d3b9e10c0605eda6865c954dacee9daf213575b950b5c7557475947c0e578d3267208b5098d96073989653
@@ -0,0 +1,9 @@
1
+ version: 1
2
+ update_configs:
3
+ - package_manager: "ruby:bundler"
4
+ directory: "/"
5
+ update_schedule: "daily"
6
+ default_labels:
7
+ - "task"
8
+ - "dependencies"
9
+ - "backlog-dependencies"
@@ -2,6 +2,8 @@ inherit_from:
2
2
  - .rubocop_todo.yml
3
3
  - .rubocop_dnsimple.yml
4
4
 
5
+ require: rubocop-performance
6
+
5
7
  AllCops:
6
8
  Exclude:
7
9
  - '*.gemspec'
@@ -1,4 +1,8 @@
1
1
  # Defaults https://github.com/bbatsov/rubocop/blob/master/config/default.yml
2
+ #
3
+ # References:
4
+ # * https://github.com/bbatsov/ruby-style-guide
5
+ # * https://rubocop.readthedocs.io/
2
6
 
3
7
  AllCops:
4
8
  Exclude:
@@ -10,6 +14,15 @@ AllCops:
10
14
  Bundler/OrderedGems:
11
15
  Enabled: false
12
16
 
17
+ # This cop requires odd code indentations (as of rubocop 0.57.0)
18
+ # https://github.com/rubocop-hq/rubocop/issues/5956
19
+ Layout/AccessModifierIndentation:
20
+ Enabled: false
21
+
22
+ # It causes weird aligments, especially for specs.
23
+ Layout/BlockEndNewline:
24
+ Enabled: false
25
+
13
26
  # Generally, the keyword style uses a lot of space. This is particularly true when
14
27
  # you use case/if statements, in combination with a long-name variable.
15
28
  #
@@ -20,11 +33,19 @@ Bundler/OrderedGems:
20
33
  # do_else
21
34
  # end
22
35
  #
23
- Lint/EndAlignment:
36
+ Layout/EndAlignment:
24
37
  EnforcedStyleAlignWith: variable
25
38
 
26
39
  # [codesmell]
27
- Lint/HandleExceptions:
40
+ Layout/LineLength:
41
+ Enabled: false
42
+ Exclude:
43
+ - 'spec/**/*_spec.rb'
44
+ - 'test/**/*_test.rb'
45
+ Max: 100
46
+
47
+ # [codesmell]
48
+ Lint/SuppressedException:
28
49
  Enabled: false
29
50
 
30
51
  # [codesmell]
@@ -52,14 +73,6 @@ Metrics/ClassLength:
52
73
  - 'spec/**/*_spec.rb'
53
74
  - 'test/**/*_test.rb'
54
75
 
55
- # [codesmell]
56
- Metrics/LineLength:
57
- Enabled: false
58
- Exclude:
59
- - 'spec/**/*_spec.rb'
60
- - 'test/**/*_test.rb'
61
- Max: 100
62
-
63
76
  # [codesmell]
64
77
  Metrics/MethodLength:
65
78
  Enabled: false
@@ -84,6 +97,11 @@ Metrics/ParameterLists:
84
97
  Metrics/PerceivedComplexity:
85
98
  Enabled: false
86
99
 
100
+ # We tend to use @_name to represent a variable that is memoized,
101
+ # but it should not be accessed directly and kept as private.
102
+ Naming/MemoizedInstanceVariableName:
103
+ Enabled: false
104
+
87
105
  # We use it from time to time, as it's not always possible (or maintainable)
88
106
  # to use simple ? methods.
89
107
  # Moreover, it's actually more efficient to not-use predicates:
@@ -91,9 +109,21 @@ Metrics/PerceivedComplexity:
91
109
  Naming/PredicateName:
92
110
  Enabled: false
93
111
 
94
- # [codesmell]
95
- # I don't really get the point of this cop.
96
- Performance/RedundantMerge:
112
+ # The team agreed decided to use exception
113
+ Naming/RescuedExceptionsVariableName:
114
+ PreferredName: 'exception'
115
+
116
+ # This cop triggers several false positives that make sense in our domain model.
117
+ # For instance, ip is considered an uncommunicative parameter name:
118
+ #
119
+ # ipv4_to_arpa_name(ip)
120
+ #
121
+ Naming/MethodParameterName:
122
+ Enabled: false
123
+
124
+ # This cop returns false positive violations (as of rubocop 0.57.0)
125
+ # https://github.com/rubocop-hq/rubocop/issues/5953
126
+ Style/AccessModifierDeclarations:
97
127
  Enabled: false
98
128
 
99
129
  # Do not use "and" or "or" in conditionals, but for readability we can use it
@@ -111,12 +141,6 @@ Style/BlockDelimiters:
111
141
  IgnoredMethods:
112
142
  - expect
113
143
 
114
- # I'm not sure we should enforce a style,
115
- # but if we do, context_dependent offers a good compromise on readability.
116
- Style/BracesAroundHashParameters:
117
- Enabled: false
118
- EnforcedStyle: context_dependent
119
-
120
144
  # Warn on empty else.
121
145
  Style/EmptyElse:
122
146
  EnforcedStyle: empty
@@ -137,20 +161,26 @@ Style/FormatString:
137
161
  Style/FormatStringToken:
138
162
  Enabled: false
139
163
 
140
- # We don't support frozen strings.
141
- # This is an experimental feature and we don't know if it will be shipped with
142
- # Ruby 3.0 or not.
143
- Style/FrozenStringLiteralComment:
144
- Enabled: false
145
-
146
164
  # Prefer the latest Hash syntax
147
165
  Style/HashSyntax:
148
166
  Exclude:
149
- # But Rakefiles generally have some definition like
167
+ # Rakefiles generally have definitions like
150
168
  # :default => :test
151
169
  # that looks nicer with the old rocket syntax.
152
170
  - 'Rakefile'
153
171
 
172
+ # Enforces usage of Hash#each_key and Hash#each_value (vs. Hash#keys.each and Hash#values.each).
173
+ Style/HashEachMethods:
174
+ Enabled: true
175
+
176
+ # Enforce the use of Hash#TransformKeys introduced in Ruby 2.5 to transform Hash keys.
177
+ Style/HashTransformKeys:
178
+ Enabled: true
179
+
180
+ # Enforce the use of Hash#TransformValues introduced in Ruby 2.5 to transform Hash values.
181
+ Style/HashTransformValues:
182
+ Enabled: true
183
+
154
184
  # We want to be able to decide when to use one-line if/unless modifiers.
155
185
  Style/IfUnlessModifier:
156
186
  Enabled: false
@@ -161,7 +191,7 @@ Style/IfInsideElse:
161
191
  Enabled: false
162
192
 
163
193
  # module_function doesn't respect the visibility of the methods,
164
- # and doesn't work well when the module contain both public/private methods.
194
+ # and doesn't work well when the module contains both public/private methods.
165
195
  Style/ModuleFunction:
166
196
  Enabled: false
167
197
 
@@ -229,7 +259,12 @@ Style/StringLiteralsInInterpolation:
229
259
 
230
260
  # It's nice to be consistent. The trailing comma also allows easy reordering,
231
261
  # and doesn't cause a diff in Git when you add a line to the bottom.
232
- Style/TrailingCommaInLiteral:
262
+ Style/TrailingCommaInArrayLiteral:
263
+ EnforcedStyleForMultiline: consistent_comma
264
+
265
+ # It's nice to be consistent. The trailing comma also allows easy reordering,
266
+ # and doesn't cause a diff in Git when you add a line to the bottom.
267
+ Style/TrailingCommaInHashLiteral:
233
268
  EnforcedStyleForMultiline: consistent_comma
234
269
 
235
270
  Style/TrivialAccessors:
@@ -311,18 +346,16 @@ Layout/EmptyLineBetweenDefs:
311
346
  Enabled: false
312
347
 
313
348
  # Multi-line differs from standard indentation, they are indented twice.
314
- Layout/FirstParameterIndentation:
349
+ Layout/FirstArgumentIndentation:
315
350
  IndentationWidth: 4
316
351
 
317
- # Array indentation should be considered like MultilineMethodCallIndentation indentation
318
- # and use 4 spaces instead of 2.
319
- Layout/IndentArray:
320
- IndentationWidth: 4
352
+ # Array indentation should be consistent with method/variable definition.
353
+ Layout/FirstArrayElementIndentation:
354
+ EnforcedStyle: consistent
321
355
 
322
- # Hash indentation should be considered like MultilineMethodCallIndentation indentation
323
- # and use 4 spaces instead of 2.
324
- Layout/IndentHash:
325
- IndentationWidth: 4
356
+ # Hash indentation should be consistent with method/variable definition.
357
+ Layout/FirstHashElementIndentation:
358
+ EnforcedStyle: consistent
326
359
 
327
360
  # Multi-line differs from standard indentation, they are indented twice.
328
361
  Layout/MultilineMethodCallIndentation:
@@ -338,9 +371,47 @@ Layout/MultilineOperationIndentation:
338
371
  #
339
372
  # %w( foo bar )
340
373
  #
341
- # looks better to me than
374
+ # looks better than:
342
375
  #
343
- # %w( foo bar )
376
+ # %w(foo bar)
344
377
  #
345
378
  Layout/SpaceInsidePercentLiteralDelimiters:
346
379
  Enabled: false
380
+
381
+
382
+ # New cops
383
+ # We'll remove them once they become defaults.
384
+ # See https://docs.rubocop.org/en/latest/versioning/
385
+
386
+
387
+ Layout/SpaceAroundMethodCallOperator:
388
+ Enabled: true
389
+
390
+ Lint/RaiseException:
391
+ Enabled: true
392
+
393
+ Lint/StructNewOverride:
394
+ Enabled: true
395
+
396
+ Style/ExponentialNotation:
397
+ Enabled: true
398
+
399
+ Layout/EmptyLinesAroundAttributeAccessor:
400
+ Enabled: true
401
+
402
+ Style/SlicingWithRange:
403
+ Enabled: true
404
+
405
+ # Introduced in rubocop 0.84.0
406
+ Lint/DeprecatedOpenSSLConstant:
407
+ Enabled: true
408
+
409
+ # Introduced in rubocop 0.85.0
410
+ Lint/MixedRegexpCaptureTypes:
411
+ Enabled: true
412
+
413
+ Style/RedundantRegexpCharacterClass:
414
+ Enabled: true
415
+
416
+ Style/RedundantRegexpEscape:
417
+ Enabled: true
@@ -1,18 +1,17 @@
1
1
  language: ruby
2
2
 
3
- sudo: false
4
-
5
3
  rvm:
6
- - 2.0
7
- - 2.1
8
- - 2.2
9
- - 2.3
10
4
  - 2.4
5
+ - 2.5
6
+ - 2.6
7
+ - 2.7
11
8
 
12
9
  env:
13
10
  - COVERALL=1
14
11
 
15
12
  before_install:
16
- - rvm get latest
17
- - gem update --system
18
- - gem install bundler
13
+ - gem install bundler -v 1.17.3
14
+
15
+ notifications:
16
+ slack:
17
+ secure: "N9zPR5jnF1TBiqvb3mCV6Wem3TIvqu4tXiob2P66vBMwmj1ewWvyUzNLwAEOCDc3mRfsI50IYXHewckAUpCWW7XEJlT/pv8llMsoiHqArb7SGJyDdy3ZRr35L7glixs/ikod+xhRKXMM3jML/2MgSa+Culzhl42tMUFDk+bBBQU="
@@ -2,27 +2,58 @@
2
2
 
3
3
  This project uses [Semantic Versioning 2.0.0](http://semver.org/).
4
4
 
5
+ ## 5.2.0
5
6
 
6
- #### 4.4.0
7
+ - CHANGED: `Certificate#expires_on` (date only) is deprecated in favor of `Certificate#expires_at` (timestamp). (dnsimple/dnsimple-ruby#190)
8
+
9
+ ## 5.1.0
10
+
11
+ - CHANGED: `Domain#expires_on` (date only) is deprecated in favor of `Domain#expires_at` (timestamp). (dnsimple/dnsimple-ruby#186)
12
+
13
+ ## 5.0.0
14
+
15
+ - CHANGED: Minimum Ruby version is now 2.4
16
+ - CHANGED: User-agent format has been changed to prepend custom token before default token.
17
+ - NEW: Added `registrar.get_domain_transfer` to retrieve a domain transfer. (dnsimple/dnsimple-ruby#180)
18
+ - NEW: Added `registrar.cancel_domain_transfer` to cancel an in progress domain transfer. (dnsimple/dnsimple-ruby#180)
19
+ - NEW: Added `DomainTransfer#status_description` attribute to identify the failure reason of a transfer. (dnsimple/dnsimple-ruby#180).
20
+
21
+ ## 4.6.0
22
+
23
+ - NEW: Added WHOIS privacy renewal (GH-171)
24
+
25
+
26
+ ## 4.5.0
27
+
28
+ - NEW: Added zone distribution and zone record distribution (GH-160)
29
+
30
+ - CHANGED: Bump minimum Ruby requirement to 2.1
31
+ - CHANGED: Introduce Dnsimple::Struct::VanityNameServer (GH-144)
32
+ - CHANGED: Fix name inconsistency of the Collaborator module (GH-154)
33
+
34
+ - REMOVED: Removed extra alias (GH-168). You should use `dnsimple.foo.list_foo` instead of `dnsimple.foo.list`. Same for create/update. The change ensures consistency across the various clients. We prefer fully qualified methods.
35
+
36
+
37
+ ## 4.4.0
7
38
 
8
39
  - NEW: Added Let's Encrypt certificate methods (GH-159)
9
40
 
10
41
  - REMOVED: Removed premium_price attribute from registrar order responses (GH-163). Please do not rely on that attribute, as it returned an incorrect value. The attribute is going to be removed, and the API now returns a null value.
11
42
 
12
43
 
13
- #### 4.3.0
44
+ ## 4.3.0
14
45
 
15
46
  - NEW: Added `certificates.all_certificates` (dnsimple/dnsimple-ruby#155)
16
47
 
17
48
  - CHANGED: Updated registrar URLs (dnsimple/dnsimple-ruby#153)
18
49
 
19
50
 
20
- #### 4.2.0
51
+ ## 4.2.0
21
52
 
22
53
  - NEW: Added DNSSEC support support (dnsimple/dnsimple-ruby#152)
23
54
 
24
55
 
25
- #### 4.1.0
56
+ ## 4.1.0
26
57
 
27
58
  - NEW: Added domain premium price support (dnsimple/dnsimple-ruby#143)
28
59
 
@@ -30,7 +61,7 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
30
61
  - CHANGED: Normalize unique string identifiers to SID (dnsimple/dnsimple-ruby#141)
31
62
 
32
63
 
33
- #### 4.0.0
64
+ ## 4.0.0
34
65
 
35
66
  - NEW: Added domain collaborators support (GH-137).
36
67
  - NEW: Added regions support for zone records (GH-135, GH-139).
@@ -47,7 +78,7 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
47
78
  - CHANGED: Renamed registrar `auth_info` into `auth_code` (GH-136).
48
79
 
49
80
 
50
- #### 3.1.0
81
+ ## 3.1.0
51
82
 
52
83
  - NEW: Added accounts support (GH-113).
53
84
  - NEW: Added sorting and filtering support (GH-112).
@@ -61,9 +92,9 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
61
92
  - REMOVED: Removed support for wildcard accounts (GH-107).
62
93
 
63
94
 
64
- #### 3.0.0
95
+ ## 3.0.0
65
96
 
66
- ##### stable
97
+ ### stable
67
98
 
68
99
  - FIXED: The client was using the wrong key to store the ContactsService which could cause conflicts with the DomainsService.
69
100
 
@@ -77,13 +108,13 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
77
108
 
78
109
  - CHANGED: Error detection is now smarter. If the error is deserializable and contains a message, the message is attached to the exception (GH-94, GH-95, GH-100).
79
110
 
80
- ##### beta2
111
+ ### beta2
81
112
 
82
113
  - FIXED: `state` and `redirect_uri` are not properly passed in the request to exchang the code for an access token (GH-89, GH-90).
83
114
 
84
115
  - FIXED: Request body is not properly serialized to JSON, and the "Content-Type" header was omissed (GH-91).
85
116
 
86
- ##### beta1
117
+ ### beta1
87
118
 
88
119
  - CHANGED: Minimum Ruby version >= 2
89
120
 
@@ -93,15 +124,15 @@ The client has been completely redesigned to support the [API v2](https://develo
93
124
 
94
125
  Internal changes were made to match conventions adopted in other clients, such as the Go one and the Elixir one.
95
126
 
96
- #### 2.1.1
127
+ ## 2.1.1
97
128
 
98
129
  - FIXED: Paths may mistakenly be generated use \ on windows.
99
130
 
100
- #### 2.1.0
131
+ ## 2.1.0
101
132
 
102
133
  - NEW: Add the ability to set headers and pass extra connection params in each API method (GH-64)
103
134
 
104
- #### 2.0.0
135
+ ## 2.0.0
105
136
 
106
137
  **2.0.0.alpha**
107
138
 
@@ -113,7 +144,7 @@ Internal changes were made to match conventions adopted in other clients, such a
113
144
 
114
145
  - CHANGED: Drop 1.8.7, 1.9.2 support. Required Ruby >= 1.9.3.
115
146
 
116
- - CHANGED: This package no longer provides a CLI. The CLI has been extracted to [aetrion/dnsimple-ruby-cli](https://github.com/aetrion/dnsimple-ruby-cli)
147
+ - CHANGED: This package no longer provides a CLI. The CLI has been extracted to [dnsimple-ruby-cli](https://github.com/dnsimple/dnsimple-ruby-cli)
117
148
 
118
149
  - CHANGED: Renamed the Gem from "dnsimple-ruby" to "dnsimple" (GH-23).
119
150
 
@@ -125,23 +156,23 @@ Internal changes were made to match conventions adopted in other clients, such a
125
156
 
126
157
  - FIXED: Fixed a bug where API token environment variables were not properly detected (GH-59, GH-62). Thanks @oguzbilgic and @rupurt.
127
158
 
128
- #### Release 1.7.1
159
+ ## Release 1.7.1
129
160
 
130
161
  - FIXED: Updated Certificate to match the serialized attributes (GH-53).
131
162
 
132
- #### Release 1.7.0
163
+ ## Release 1.7.0
133
164
 
134
165
  - NEW: Add support for Domain-based authentication (GH-40, GH-46). Thanks @dwradcliffe and @samsonasu.
135
166
 
136
- #### Release 1.6.0
167
+ ## Release 1.6.0
137
168
 
138
169
  - NEW: Add support for 2FA (GH-44)
139
170
 
140
- #### Release 1.5.5
171
+ ## Release 1.5.5
141
172
 
142
173
  - NEW: Add notice about the CLI moving to a new location
143
174
 
144
- #### Release 1.5.4
175
+ ## Release 1.5.4
145
176
 
146
177
  - NEW: Added domain#expires_on attribute (GH-34). Thanks @alkema
147
178
 
@@ -151,23 +182,23 @@ Internal changes were made to match conventions adopted in other clients, such a
151
182
 
152
183
  - CHANGED: User.me now uses the correct patch for API v1.
153
184
 
154
- #### Release 1.5.3
185
+ ## Release 1.5.3
155
186
 
156
187
  - FIXED: In some cases the client crashed with NoMethodError VERSION (GH-35).
157
188
 
158
- #### Release 1.5.2
189
+ ## Release 1.5.2
159
190
 
160
191
  - NEW: Provide a meaningful user-agent.
161
192
 
162
- #### Release 1.5.1
193
+ ## Release 1.5.1
163
194
 
164
195
  - FIXED: Invalid base URI.
165
196
 
166
- #### Release 1.5.0
197
+ ## Release 1.5.0
167
198
 
168
199
  - CHANGED: Added support for versioned API (GH-33)
169
200
 
170
- #### Release 1.4.0
201
+ ## Release 1.4.0
171
202
 
172
203
  - CHANGED: Normalized exception handling. No more RuntimeError.
173
204
  In case of request error, the client raises RequestError, RecordExists or RecodNotFound