dnsimple 4.6.0 → 7.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +12 -0
- data/.gitignore +3 -0
- data/.rubocop.yml +9 -13
- data/.rubocop_dnsimple.yml +42 -40
- data/.rubocop_todo.yml +44 -5
- data/.travis.yml +14 -8
- data/CHANGELOG.md +56 -26
- data/CONTRIBUTING.md +43 -0
- data/Gemfile +6 -1
- data/LICENSE.txt +1 -1
- data/README.md +10 -7
- data/dnsimple.gemspec +3 -3
- data/lib/dnsimple.rb +2 -0
- data/lib/dnsimple/client.rb +23 -13
- data/lib/dnsimple/client/accounts.rb +2 -0
- data/lib/dnsimple/client/certificates.rb +2 -0
- data/lib/dnsimple/client/clients.rb +5 -2
- data/lib/dnsimple/client/contacts.rb +2 -0
- data/lib/dnsimple/client/domains.rb +3 -19
- data/lib/dnsimple/client/domains_collaborators.rb +2 -0
- data/lib/dnsimple/client/domains_delegation_signer_records.rb +2 -0
- data/lib/dnsimple/client/domains_dnssec.rb +2 -0
- data/lib/dnsimple/client/domains_email_forwards.rb +2 -0
- data/lib/dnsimple/client/domains_pushes.rb +2 -0
- data/lib/dnsimple/client/identity.rb +2 -0
- data/lib/dnsimple/client/oauth.rb +2 -0
- data/lib/dnsimple/client/registrar.rb +69 -0
- data/lib/dnsimple/client/registrar_auto_renewal.rb +2 -0
- data/lib/dnsimple/client/registrar_delegation.rb +2 -0
- data/lib/dnsimple/client/registrar_whois_privacy.rb +3 -1
- data/lib/dnsimple/client/services.rb +2 -0
- data/lib/dnsimple/client/services_domains.rb +2 -0
- data/lib/dnsimple/client/templates.rb +2 -0
- data/lib/dnsimple/client/templates_domains.rb +2 -0
- data/lib/dnsimple/client/templates_records.rb +2 -0
- data/lib/dnsimple/client/tlds.rb +2 -0
- data/lib/dnsimple/client/vanity_name_servers.rb +12 -10
- data/lib/dnsimple/client/webhooks.rb +2 -0
- data/lib/dnsimple/client/zones.rb +2 -0
- data/lib/dnsimple/client/zones_distributions.rb +2 -0
- data/lib/dnsimple/client/zones_records.rb +2 -0
- data/lib/dnsimple/default.rb +12 -10
- data/lib/dnsimple/error.rb +3 -1
- data/lib/dnsimple/extra.rb +4 -2
- data/lib/dnsimple/options.rb +2 -0
- data/lib/dnsimple/response.rb +7 -7
- data/lib/dnsimple/struct.rb +3 -0
- data/lib/dnsimple/struct/account.rb +2 -0
- data/lib/dnsimple/struct/certificate.rb +4 -2
- data/lib/dnsimple/struct/certificate_bundle.rb +5 -0
- data/lib/dnsimple/struct/certificate_purchase.rb +2 -0
- data/lib/dnsimple/struct/certificate_renewal.rb +2 -0
- data/lib/dnsimple/struct/collaborator.rb +2 -0
- data/lib/dnsimple/struct/contact.rb +2 -0
- data/lib/dnsimple/struct/delegation_signer_record.rb +2 -0
- data/lib/dnsimple/struct/dnssec.rb +2 -0
- data/lib/dnsimple/struct/domain.rb +4 -3
- data/lib/dnsimple/struct/domain_check.rb +2 -0
- data/lib/dnsimple/struct/domain_premium_price.rb +2 -0
- data/lib/dnsimple/struct/domain_price.rb +24 -0
- data/lib/dnsimple/struct/domain_push.rb +2 -0
- data/lib/dnsimple/struct/domain_registration.rb +2 -0
- data/lib/dnsimple/struct/domain_renewal.rb +2 -0
- data/lib/dnsimple/struct/domain_transfer.rb +5 -0
- data/lib/dnsimple/struct/email_forward.rb +2 -0
- data/lib/dnsimple/struct/extended_attribute.rb +2 -0
- data/lib/dnsimple/struct/oauth_token.rb +2 -0
- data/lib/dnsimple/struct/service.rb +2 -0
- data/lib/dnsimple/struct/template.rb +2 -0
- data/lib/dnsimple/struct/template_record.rb +2 -0
- data/lib/dnsimple/struct/tld.rb +2 -0
- data/lib/dnsimple/struct/user.rb +2 -0
- data/lib/dnsimple/struct/vanity_name_server.rb +2 -0
- data/lib/dnsimple/struct/webhook.rb +2 -0
- data/lib/dnsimple/struct/whoami.rb +2 -0
- data/lib/dnsimple/struct/whois_privacy.rb +2 -0
- data/lib/dnsimple/struct/whois_privacy_renewal.rb +2 -0
- data/lib/dnsimple/struct/zone.rb +2 -0
- data/lib/dnsimple/struct/zone_distribution.rb +2 -0
- data/lib/dnsimple/struct/zone_file.rb +2 -0
- data/lib/dnsimple/struct/zone_record.rb +2 -0
- data/lib/dnsimple/version.rb +3 -1
- data/spec/dnsimple/client/accounts_spec.rb +2 -0
- data/spec/dnsimple/client/certificates_spec.rb +35 -33
- data/spec/dnsimple/client/client_service_spec.rb +3 -1
- data/spec/dnsimple/client/contacts_spec.rb +4 -2
- data/spec/dnsimple/client/domains_collaborators_spec.rb +4 -2
- data/spec/dnsimple/client/domains_delegation_signer_records_spec.rb +3 -1
- data/spec/dnsimple/client/domains_dnssec_spec.rb +2 -0
- data/spec/dnsimple/client/domains_email_forwards_spec.rb +10 -8
- data/spec/dnsimple/client/domains_pushes_spec.rb +4 -2
- data/spec/dnsimple/client/domains_spec.rb +16 -41
- data/spec/dnsimple/client/identity_spec.rb +2 -0
- data/spec/dnsimple/client/oauth_spec.rb +2 -0
- data/spec/dnsimple/client/registrar_auto_renewal_spec.rb +2 -0
- data/spec/dnsimple/client/registrar_delegation_spec.rb +4 -2
- data/spec/dnsimple/client/registrar_spec.rb +116 -4
- data/spec/dnsimple/client/registrar_whois_privacy_spec.rb +2 -0
- data/spec/dnsimple/client/services_domains_spec.rb +4 -4
- data/spec/dnsimple/client/services_spec.rb +3 -3
- data/spec/dnsimple/client/templates_domains_spec.rb +2 -0
- data/spec/dnsimple/client/templates_records_spec.rb +3 -1
- data/spec/dnsimple/client/templates_spec.rb +4 -2
- data/spec/dnsimple/client/tlds_spec.rb +2 -0
- data/spec/dnsimple/client/vanity_name_servers_spec.rb +2 -0
- data/spec/dnsimple/client/webhooks_spec.rb +3 -1
- data/spec/dnsimple/client/zones_distributions_spec.rb +2 -0
- data/spec/dnsimple/client/zones_records_spec.rb +4 -2
- data/spec/dnsimple/client/zones_spec.rb +3 -1
- data/spec/dnsimple/client_spec.rb +18 -16
- data/spec/dnsimple/extra_spec.rb +2 -0
- data/spec/dnsimple/options/base_spec.rb +2 -0
- data/spec/dnsimple/options/list_options_spec.rb +6 -4
- data/spec/fixtures.http/accounts/success-account.http +0 -1
- data/spec/fixtures.http/accounts/success-user.http +0 -1
- data/spec/fixtures.http/addCollaborator/invite-success.http +0 -1
- data/spec/fixtures.http/addCollaborator/success.http +0 -1
- data/spec/fixtures.http/appliedServices/success.http +0 -1
- data/spec/fixtures.http/cancelDomainTransfer/success.http +18 -0
- data/spec/fixtures.http/changeDomainDelegation/success.http +0 -1
- data/spec/fixtures.http/changeDomainDelegationToVanity/success.http +0 -1
- data/spec/fixtures.http/checkDomain/success.http +0 -1
- data/spec/fixtures.http/checkDomainPremiumPrice/error_400_not_a_premium_domain.http +18 -0
- data/spec/fixtures.http/checkDomainPremiumPrice/error_400_tld_not_supported.http +18 -0
- data/spec/fixtures.http/checkDomainPremiumPrice/success.http +20 -0
- data/spec/fixtures.http/checkZoneDistribution/error.http +0 -1
- data/spec/fixtures.http/checkZoneDistribution/failure.http +0 -1
- data/spec/fixtures.http/checkZoneDistribution/success.http +0 -1
- data/spec/fixtures.http/checkZoneRecordDistribution/error.http +0 -1
- data/spec/fixtures.http/checkZoneRecordDistribution/failure.http +0 -1
- data/spec/fixtures.http/checkZoneRecordDistribution/success.http +0 -1
- data/spec/fixtures.http/createContact/created.http +0 -1
- data/spec/fixtures.http/createDelegationSignerRecord/created.http +0 -1
- data/spec/fixtures.http/createDelegationSignerRecord/validation-error.http +0 -1
- data/spec/fixtures.http/createDomain/created.http +20 -16
- data/spec/fixtures.http/createEmailForward/created.http +21 -17
- data/spec/fixtures.http/createPrimaryServer/created.http +21 -0
- data/spec/fixtures.http/createSecondaryZone/created.http +21 -0
- data/spec/fixtures.http/createTemplate/created.http +0 -1
- data/spec/fixtures.http/createTemplateRecord/created.http +0 -1
- data/spec/fixtures.http/createWebhook/created.http +0 -1
- data/spec/fixtures.http/createZoneRecord/created-apex.http +0 -1
- data/spec/fixtures.http/createZoneRecord/created.http +0 -1
- data/spec/fixtures.http/deleteContact/error-contact-in-use.http +18 -0
- data/spec/fixtures.http/deleteEmailForward/success.http +12 -7
- data/spec/fixtures.http/disableDnssec/not-enabled.http +0 -1
- data/spec/fixtures.http/disableWhoisPrivacy/success.http +0 -1
- data/spec/fixtures.http/downloadCertificate/success.http +0 -1
- data/spec/fixtures.http/enableDnssec/success.http +0 -1
- data/spec/fixtures.http/enableVanityNameServers/success.http +0 -1
- data/spec/fixtures.http/enableWhoisPrivacy/created.http +0 -1
- data/spec/fixtures.http/enableWhoisPrivacy/success.http +0 -1
- data/spec/fixtures.http/getCertificate/success.http +10 -11
- data/spec/fixtures.http/getCertificatePrivateKey/success.http +0 -1
- data/spec/fixtures.http/getContact/success.http +0 -1
- data/spec/fixtures.http/getDelegationSignerRecord/success.http +0 -1
- data/spec/fixtures.http/getDnssec/success.http +0 -1
- data/spec/fixtures.http/getDomain/success.http +13 -9
- data/spec/fixtures.http/getDomainDelegation/success-empty.http +0 -1
- data/spec/fixtures.http/getDomainDelegation/success.http +0 -1
- data/spec/fixtures.http/getDomainPremiumPrice/failure.http +0 -1
- data/spec/fixtures.http/getDomainPremiumPrice/success.http +0 -1
- data/spec/fixtures.http/getDomainPrices/failure.http +19 -0
- data/spec/fixtures.http/getDomainPrices/success.http +21 -0
- data/spec/fixtures.http/getDomainTransfer/success.http +20 -0
- data/spec/fixtures.http/getEmailForward/success.http +14 -10
- data/spec/fixtures.http/getPrimaryServer/success.http +21 -0
- data/spec/fixtures.http/getService/success.http +0 -1
- data/spec/fixtures.http/getTemplate/success.http +0 -1
- data/spec/fixtures.http/getTemplateRecord/success.http +0 -1
- data/spec/fixtures.http/getTld/success.http +0 -1
- data/spec/fixtures.http/getTldExtendedAttributes/success-attributes.http +0 -1
- data/spec/fixtures.http/getTldExtendedAttributes/success-noattributes.http +0 -1
- data/spec/fixtures.http/getTldExtendedAttributes/success.http +0 -1
- data/spec/fixtures.http/getWebhook/success.http +0 -1
- data/spec/fixtures.http/getWhoisPrivacy/success.http +0 -1
- data/spec/fixtures.http/getZone/success.http +0 -1
- data/spec/fixtures.http/getZoneFile/success.http +0 -1
- data/spec/fixtures.http/getZoneRecord/success.http +0 -1
- data/spec/fixtures.http/initiatePush/success.http +0 -1
- data/spec/fixtures.http/issueLetsencryptCertificate/success.http +18 -21
- data/spec/fixtures.http/issueRenewalLetsencryptCertificate/success.http +18 -21
- data/spec/fixtures.http/linkPrimaryServer/success.http +21 -0
- data/spec/fixtures.http/listAccounts/success-account.http +0 -1
- data/spec/fixtures.http/listAccounts/success-user.http +0 -1
- data/spec/fixtures.http/listCertificates/success.http +10 -11
- data/spec/fixtures.http/listCollaborators/success.http +0 -1
- data/spec/fixtures.http/listContacts/success.http +0 -1
- data/spec/fixtures.http/listDelegationSignerRecords/success.http +0 -1
- data/spec/fixtures.http/listDomains/success.http +20 -16
- data/spec/fixtures.http/listEmailForwards/success.http +0 -1
- data/spec/fixtures.http/listPrimaryServers/success.http +21 -0
- data/spec/fixtures.http/listPushes/success.http +0 -1
- data/spec/fixtures.http/listServices/success.http +0 -1
- data/spec/fixtures.http/listTemplateRecords/success.http +0 -1
- data/spec/fixtures.http/listTemplates/success.http +0 -1
- data/spec/fixtures.http/listTlds/success.http +0 -1
- data/spec/fixtures.http/listWebhooks/success.http +0 -1
- data/spec/fixtures.http/listZoneRecords/success.http +0 -1
- data/spec/fixtures.http/listZones/success.http +0 -1
- data/spec/fixtures.http/method-not-allowed.http +0 -1
- data/spec/fixtures.http/notfound-certificate.http +0 -1
- data/spec/fixtures.http/notfound-collaborator.http +0 -1
- data/spec/fixtures.http/notfound-contact.http +0 -1
- data/spec/fixtures.http/notfound-delegationsignerrecord.http +0 -1
- data/spec/fixtures.http/notfound-domain.http +0 -1
- data/spec/fixtures.http/notfound-domainpush.http +0 -1
- data/spec/fixtures.http/notfound-emailforward.http +0 -1
- data/spec/fixtures.http/notfound-record.http +0 -1
- data/spec/fixtures.http/notfound-template.http +0 -1
- data/spec/fixtures.http/notfound-webhook.http +0 -1
- data/spec/fixtures.http/notfound-whoisprivacy.http +0 -1
- data/spec/fixtures.http/notfound-zone.http +0 -1
- data/spec/fixtures.http/oauthAccessToken/error-invalid-request.http +0 -1
- data/spec/fixtures.http/oauthAccessToken/success.http +0 -1
- data/spec/fixtures.http/pages-1of3.http +0 -1
- data/spec/fixtures.http/pages-2of3.http +0 -1
- data/spec/fixtures.http/pages-3of3.http +0 -1
- data/spec/fixtures.http/purchaseLetsencryptCertificate/success.http +20 -21
- data/spec/fixtures.http/purchaseRenewalLetsencryptCertificate/success.http +20 -21
- data/spec/fixtures.http/registerDomain/success.http +1 -2
- data/spec/fixtures.http/renewDomain/error-tooearly.http +0 -1
- data/spec/fixtures.http/renewDomain/success.http +1 -2
- data/spec/fixtures.http/renewWhoisPrivacy/success.http +0 -1
- data/spec/fixtures.http/renewWhoisPrivacy/whois-privacy-duplicated-order.http +1 -2
- data/spec/fixtures.http/renewWhoisPrivacy/whois-privacy-not-found.http +1 -2
- data/spec/fixtures.http/response.http +0 -1
- data/spec/fixtures.http/transferDomain/error-indnsimple.http +0 -1
- data/spec/fixtures.http/transferDomain/error-missing-authcode.http +0 -1
- data/spec/fixtures.http/transferDomain/success.http +1 -2
- data/spec/fixtures.http/unlinkPrimaryServer/success.http +21 -0
- data/spec/fixtures.http/updateContact/success.http +0 -1
- data/spec/fixtures.http/updateTemplate/success.http +0 -1
- data/spec/fixtures.http/updateZoneRecord/success.http +0 -1
- data/spec/fixtures.http/validation-error.http +0 -1
- data/spec/fixtures.http/whoami/success-account.http +0 -1
- data/spec/fixtures.http/whoami/success-user.http +0 -1
- data/spec/fixtures.http/whoami/success.http +0 -1
- data/spec/spec_helper.rb +3 -1
- data/spec/support/helpers.rb +2 -0
- data/spec/support/webmock.rb +2 -0
- metadata +36 -15
- data/.ruby-gemset +0 -1
- data/spec/fixtures.http/resetDomainToken/success.http +0 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2cf8d057d98c78bf3b8584e15b561624dfb35f1264f80d0c5861e970053b18f3
|
4
|
+
data.tar.gz: acc7e6f33680ba4195243b474dca108e566c953ed2474e36fd9631c9f6b1f2fc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 504d15c395fcbbb08a4c351912f9cb47e0dac082ae9da5ef22161bc5bc6a5fc6e1f46466ab7c482385c996a558a10dad4d12fc2cd1eac130c417f6c21e70cfd0
|
7
|
+
data.tar.gz: 3ebc372cd78a2bc5d4cf3bdcab9168e572856fe0614da843949c5a58a1508399281b25a621e399280b1e4464a72ea5099d9e88e227aec7a564213297d81a6720
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
@@ -2,22 +2,18 @@ inherit_from:
|
|
2
2
|
- .rubocop_todo.yml
|
3
3
|
- .rubocop_dnsimple.yml
|
4
4
|
|
5
|
+
require:
|
6
|
+
- rubocop-performance
|
7
|
+
- rubocop-rake
|
8
|
+
- rubocop-rspec
|
9
|
+
|
5
10
|
AllCops:
|
11
|
+
TargetRubyVersion: 2.6
|
6
12
|
Exclude:
|
7
13
|
- '*.gemspec'
|
8
14
|
- 'Rakefile'
|
15
|
+
- 'vendor/**/*'
|
9
16
|
|
10
|
-
#
|
11
|
-
|
12
|
-
# Hence keep it disabled, but don't include it in the DNSimple suite.
|
13
|
-
Lint/Loop:
|
14
|
-
Enabled: false
|
15
|
-
|
16
|
-
# It doesn't seem to work as expected.
|
17
|
-
Style/IfUnlessModifier:
|
18
|
-
Enabled: false
|
19
|
-
|
20
|
-
# This rule suggest to use safe navigation (&.) operator which was introduced
|
21
|
-
# with Ruby 2.3. Because we are supporting Ruby 2.0+ we can't use this operator.
|
22
|
-
Style/SafeNavigation:
|
17
|
+
# This rule conflicts with our specs codebase using Ruby 2.x and 3.x
|
18
|
+
Lint/NonDeterministicRequireOrder:
|
23
19
|
Enabled: false
|
data/.rubocop_dnsimple.yml
CHANGED
@@ -8,6 +8,7 @@ AllCops:
|
|
8
8
|
Exclude:
|
9
9
|
# Exclude .gemspec files because they are generally auto-generated
|
10
10
|
- '*.gemspec'
|
11
|
+
NewCops: enable
|
11
12
|
|
12
13
|
# In most cases, Gems are sorted alphabetically.
|
13
14
|
# However, in some few cases the order is relevant due to dependencies.
|
@@ -19,6 +20,10 @@ Bundler/OrderedGems:
|
|
19
20
|
Layout/AccessModifierIndentation:
|
20
21
|
Enabled: false
|
21
22
|
|
23
|
+
# It causes weird aligments, especially for specs.
|
24
|
+
Layout/BlockEndNewline:
|
25
|
+
Enabled: false
|
26
|
+
|
22
27
|
# Generally, the keyword style uses a lot of space. This is particularly true when
|
23
28
|
# you use case/if statements, in combination with a long-name variable.
|
24
29
|
#
|
@@ -33,7 +38,15 @@ Layout/EndAlignment:
|
|
33
38
|
EnforcedStyleAlignWith: variable
|
34
39
|
|
35
40
|
# [codesmell]
|
36
|
-
|
41
|
+
Layout/LineLength:
|
42
|
+
Enabled: false
|
43
|
+
Exclude:
|
44
|
+
- 'spec/**/*_spec.rb'
|
45
|
+
- 'test/**/*_test.rb'
|
46
|
+
Max: 100
|
47
|
+
|
48
|
+
# [codesmell]
|
49
|
+
Lint/SuppressedException:
|
37
50
|
Enabled: false
|
38
51
|
|
39
52
|
# [codesmell]
|
@@ -61,14 +74,6 @@ Metrics/ClassLength:
|
|
61
74
|
- 'spec/**/*_spec.rb'
|
62
75
|
- 'test/**/*_test.rb'
|
63
76
|
|
64
|
-
# [codesmell]
|
65
|
-
Metrics/LineLength:
|
66
|
-
Enabled: false
|
67
|
-
Exclude:
|
68
|
-
- 'spec/**/*_spec.rb'
|
69
|
-
- 'test/**/*_test.rb'
|
70
|
-
Max: 100
|
71
|
-
|
72
77
|
# [codesmell]
|
73
78
|
Metrics/MethodLength:
|
74
79
|
Enabled: false
|
@@ -105,17 +110,16 @@ Naming/MemoizedInstanceVariableName:
|
|
105
110
|
Naming/PredicateName:
|
106
111
|
Enabled: false
|
107
112
|
|
113
|
+
# The team agreed decided to use exception
|
114
|
+
Naming/RescuedExceptionsVariableName:
|
115
|
+
PreferredName: 'exception'
|
116
|
+
|
108
117
|
# This cop triggers several false positives that make sense in our domain model.
|
109
118
|
# For instance, ip is considered an uncommunicative parameter name:
|
110
119
|
#
|
111
120
|
# ipv4_to_arpa_name(ip)
|
112
121
|
#
|
113
|
-
Naming/
|
114
|
-
Enabled: false
|
115
|
-
|
116
|
-
# [codesmell]
|
117
|
-
# I don't really get the point of this cop.
|
118
|
-
Performance/RedundantMerge:
|
122
|
+
Naming/MethodParameterName:
|
119
123
|
Enabled: false
|
120
124
|
|
121
125
|
# This cop returns false positive violations (as of rubocop 0.57.0)
|
@@ -138,12 +142,6 @@ Style/BlockDelimiters:
|
|
138
142
|
IgnoredMethods:
|
139
143
|
- expect
|
140
144
|
|
141
|
-
# I'm not sure we should enforce a style,
|
142
|
-
# but if we do, context_dependent offers a good compromise on readability.
|
143
|
-
Style/BracesAroundHashParameters:
|
144
|
-
Enabled: false
|
145
|
-
EnforcedStyle: context_dependent
|
146
|
-
|
147
145
|
# Warn on empty else.
|
148
146
|
Style/EmptyElse:
|
149
147
|
EnforcedStyle: empty
|
@@ -164,20 +162,26 @@ Style/FormatString:
|
|
164
162
|
Style/FormatStringToken:
|
165
163
|
Enabled: false
|
166
164
|
|
167
|
-
# We don't support frozen strings.
|
168
|
-
# This is an experimental feature and we don't know if it will be shipped with
|
169
|
-
# Ruby 3.0 or not.
|
170
|
-
Style/FrozenStringLiteralComment:
|
171
|
-
Enabled: false
|
172
|
-
|
173
165
|
# Prefer the latest Hash syntax
|
174
166
|
Style/HashSyntax:
|
175
167
|
Exclude:
|
176
|
-
#
|
168
|
+
# Rakefiles generally have definitions like
|
177
169
|
# :default => :test
|
178
170
|
# that looks nicer with the old rocket syntax.
|
179
171
|
- 'Rakefile'
|
180
172
|
|
173
|
+
# Enforces usage of Hash#each_key and Hash#each_value (vs. Hash#keys.each and Hash#values.each).
|
174
|
+
Style/HashEachMethods:
|
175
|
+
Enabled: true
|
176
|
+
|
177
|
+
# Enforce the use of Hash#TransformKeys introduced in Ruby 2.5 to transform Hash keys.
|
178
|
+
Style/HashTransformKeys:
|
179
|
+
Enabled: true
|
180
|
+
|
181
|
+
# Enforce the use of Hash#TransformValues introduced in Ruby 2.5 to transform Hash values.
|
182
|
+
Style/HashTransformValues:
|
183
|
+
Enabled: true
|
184
|
+
|
181
185
|
# We want to be able to decide when to use one-line if/unless modifiers.
|
182
186
|
Style/IfUnlessModifier:
|
183
187
|
Enabled: false
|
@@ -188,7 +192,7 @@ Style/IfInsideElse:
|
|
188
192
|
Enabled: false
|
189
193
|
|
190
194
|
# module_function doesn't respect the visibility of the methods,
|
191
|
-
# and doesn't work well when the module
|
195
|
+
# and doesn't work well when the module contains both public/private methods.
|
192
196
|
Style/ModuleFunction:
|
193
197
|
Enabled: false
|
194
198
|
|
@@ -343,18 +347,16 @@ Layout/EmptyLineBetweenDefs:
|
|
343
347
|
Enabled: false
|
344
348
|
|
345
349
|
# Multi-line differs from standard indentation, they are indented twice.
|
346
|
-
Layout/
|
350
|
+
Layout/FirstArgumentIndentation:
|
347
351
|
IndentationWidth: 4
|
348
352
|
|
349
|
-
# Array indentation should be
|
350
|
-
|
351
|
-
|
352
|
-
IndentationWidth: 4
|
353
|
+
# Array indentation should be consistent with method/variable definition.
|
354
|
+
Layout/FirstArrayElementIndentation:
|
355
|
+
EnforcedStyle: consistent
|
353
356
|
|
354
|
-
# Hash indentation should be
|
355
|
-
|
356
|
-
|
357
|
-
IndentationWidth: 4
|
357
|
+
# Hash indentation should be consistent with method/variable definition.
|
358
|
+
Layout/FirstHashElementIndentation:
|
359
|
+
EnforcedStyle: consistent
|
358
360
|
|
359
361
|
# Multi-line differs from standard indentation, they are indented twice.
|
360
362
|
Layout/MultilineMethodCallIndentation:
|
@@ -370,9 +372,9 @@ Layout/MultilineOperationIndentation:
|
|
370
372
|
#
|
371
373
|
# %w( foo bar )
|
372
374
|
#
|
373
|
-
# looks better
|
375
|
+
# looks better than:
|
374
376
|
#
|
375
|
-
# %w(
|
377
|
+
# %w(foo bar)
|
376
378
|
#
|
377
379
|
Layout/SpaceInsidePercentLiteralDelimiters:
|
378
380
|
Enabled: false
|
data/.rubocop_todo.yml
CHANGED
@@ -1,14 +1,53 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2021-06-01 13:07:05 UTC using RuboCop version 1.16.0.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
# Offense count: 71
|
10
|
+
# Configuration parameters: CountAsOne.
|
11
|
+
RSpec/ExampleLength:
|
12
|
+
Max: 17
|
13
|
+
|
14
|
+
# Offense count: 1
|
15
|
+
RSpec/LeakyConstantDeclaration:
|
16
|
+
Exclude:
|
17
|
+
- 'spec/dnsimple/client/client_service_spec.rb'
|
18
|
+
|
19
|
+
# Offense count: 11
|
20
|
+
# Configuration parameters: .
|
21
|
+
# SupportedStyles: have_received, receive
|
22
|
+
RSpec/MessageSpies:
|
23
|
+
EnforcedStyle: receive
|
24
|
+
|
25
|
+
# Offense count: 112
|
26
|
+
RSpec/MultipleExpectations:
|
27
|
+
Max: 15
|
28
|
+
|
29
|
+
# Offense count: 375
|
30
|
+
# Configuration parameters: IgnoreSharedExamples.
|
31
|
+
RSpec/NamedSubject:
|
11
32
|
Enabled: false
|
33
|
+
|
34
|
+
# Offense count: 16
|
35
|
+
RSpec/SubjectStub:
|
12
36
|
Exclude:
|
13
|
-
- 'spec
|
14
|
-
- '
|
37
|
+
- 'spec/dnsimple/client/certificates_spec.rb'
|
38
|
+
- 'spec/dnsimple/client/contacts_spec.rb'
|
39
|
+
- 'spec/dnsimple/client/domains_delegation_signer_records_spec.rb'
|
40
|
+
- 'spec/dnsimple/client/domains_email_forwards_spec.rb'
|
41
|
+
- 'spec/dnsimple/client/domains_spec.rb'
|
42
|
+
- 'spec/dnsimple/client/services_spec.rb'
|
43
|
+
- 'spec/dnsimple/client/templates_records_spec.rb'
|
44
|
+
- 'spec/dnsimple/client/templates_spec.rb'
|
45
|
+
- 'spec/dnsimple/client/tlds_spec.rb'
|
46
|
+
- 'spec/dnsimple/client/zones_records_spec.rb'
|
47
|
+
- 'spec/dnsimple/client/zones_spec.rb'
|
48
|
+
- 'spec/dnsimple/client_spec.rb'
|
49
|
+
|
50
|
+
# Offense count: 37
|
51
|
+
# Configuration parameters: AllowedConstants.
|
52
|
+
Style/Documentation:
|
53
|
+
Enabled: false
|
data/.travis.yml
CHANGED
@@ -1,19 +1,25 @@
|
|
1
|
+
dist: focal
|
2
|
+
|
1
3
|
language: ruby
|
2
4
|
|
3
5
|
rvm:
|
4
|
-
- 2.1
|
5
|
-
- 2.2
|
6
|
-
- 2.3
|
7
|
-
- 2.4
|
8
|
-
- 2.5
|
9
6
|
- 2.6
|
7
|
+
- 2.7
|
8
|
+
- 3.0
|
9
|
+
- ruby-head
|
10
|
+
- truffleruby-head
|
11
|
+
|
12
|
+
cache: bundler
|
13
|
+
|
14
|
+
jobs:
|
15
|
+
allow_failures:
|
16
|
+
- rvm: ruby-head
|
17
|
+
- rvm: truffleruby-head
|
10
18
|
|
11
19
|
env:
|
12
20
|
- COVERALL=1
|
13
21
|
|
14
|
-
before_install:
|
15
|
-
- gem install bundler -v 1.17.3
|
16
|
-
|
17
22
|
notifications:
|
23
|
+
email: false
|
18
24
|
slack:
|
19
25
|
secure: "N9zPR5jnF1TBiqvb3mCV6Wem3TIvqu4tXiob2P66vBMwmj1ewWvyUzNLwAEOCDc3mRfsI50IYXHewckAUpCWW7XEJlT/pv8llMsoiHqArb7SGJyDdy3ZRr35L7glixs/ikod+xhRKXMM3jML/2MgSa+Culzhl42tMUFDk+bBBQU="
|
data/CHANGELOG.md
CHANGED
@@ -2,13 +2,43 @@
|
|
2
2
|
|
3
3
|
This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
4
4
|
|
5
|
+
## main
|
5
6
|
|
6
|
-
|
7
|
+
## 0.7.0
|
8
|
+
|
9
|
+
- CHANGED: Minimum Ruby version is now 2.6
|
10
|
+
- CHANGED: Deprecates `registrar.getDomainPremiumPrice` in favour of `registrar.getDomainPrices`
|
11
|
+
|
12
|
+
## 6.0.0
|
13
|
+
|
14
|
+
- NEW: Added `registrar.get_domain_prices` to retrieve whether a domain is premium and the prices to register, transfer, and renew. (dnsimple/dnsimple-ruby#230)
|
15
|
+
- REMOVED: `domain.reset_domain_token` endpoint no longer exists and the client method is removed.
|
16
|
+
(dnsimple/dnsimple-ruby#231)
|
17
|
+
- REMOVED: The deprecated `Domain.expires_on` is removed. (dnsimple/dnsimple-ruby#232)
|
18
|
+
- REMOVED: The deprecated `Certificate.expires_on` is removed. (dnsimple/dnsimple-ruby#232)
|
19
|
+
|
20
|
+
## 5.2.0
|
21
|
+
|
22
|
+
- CHANGED: `Certificate#expires_on` (date only) is deprecated in favor of `Certificate#expires_at` (timestamp). (dnsimple/dnsimple-ruby#190)
|
23
|
+
|
24
|
+
## 5.1.0
|
25
|
+
|
26
|
+
- CHANGED: `Domain#expires_on` (date only) is deprecated in favor of `Domain#expires_at` (timestamp). (dnsimple/dnsimple-ruby#186)
|
27
|
+
|
28
|
+
## 5.0.0
|
29
|
+
|
30
|
+
- CHANGED: Minimum Ruby version is now 2.4
|
31
|
+
- CHANGED: User-agent format has been changed to prepend custom token before default token.
|
32
|
+
- NEW: Added `registrar.get_domain_transfer` to retrieve a domain transfer. (dnsimple/dnsimple-ruby#180)
|
33
|
+
- NEW: Added `registrar.cancel_domain_transfer` to cancel an in progress domain transfer. (dnsimple/dnsimple-ruby#180)
|
34
|
+
- NEW: Added `DomainTransfer#status_description` attribute to identify the failure reason of a transfer. (dnsimple/dnsimple-ruby#180).
|
35
|
+
|
36
|
+
## 4.6.0
|
7
37
|
|
8
38
|
- NEW: Added WHOIS privacy renewal (GH-171)
|
9
39
|
|
10
40
|
|
11
|
-
|
41
|
+
## 4.5.0
|
12
42
|
|
13
43
|
- NEW: Added zone distribution and zone record distribution (GH-160)
|
14
44
|
|
@@ -19,26 +49,26 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
|
19
49
|
- 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.
|
20
50
|
|
21
51
|
|
22
|
-
|
52
|
+
## 4.4.0
|
23
53
|
|
24
54
|
- NEW: Added Let's Encrypt certificate methods (GH-159)
|
25
55
|
|
26
56
|
- 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.
|
27
57
|
|
28
58
|
|
29
|
-
|
59
|
+
## 4.3.0
|
30
60
|
|
31
61
|
- NEW: Added `certificates.all_certificates` (dnsimple/dnsimple-ruby#155)
|
32
62
|
|
33
63
|
- CHANGED: Updated registrar URLs (dnsimple/dnsimple-ruby#153)
|
34
64
|
|
35
65
|
|
36
|
-
|
66
|
+
## 4.2.0
|
37
67
|
|
38
68
|
- NEW: Added DNSSEC support support (dnsimple/dnsimple-ruby#152)
|
39
69
|
|
40
70
|
|
41
|
-
|
71
|
+
## 4.1.0
|
42
72
|
|
43
73
|
- NEW: Added domain premium price support (dnsimple/dnsimple-ruby#143)
|
44
74
|
|
@@ -46,7 +76,7 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
|
46
76
|
- CHANGED: Normalize unique string identifiers to SID (dnsimple/dnsimple-ruby#141)
|
47
77
|
|
48
78
|
|
49
|
-
|
79
|
+
## 4.0.0
|
50
80
|
|
51
81
|
- NEW: Added domain collaborators support (GH-137).
|
52
82
|
- NEW: Added regions support for zone records (GH-135, GH-139).
|
@@ -63,7 +93,7 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
|
63
93
|
- CHANGED: Renamed registrar `auth_info` into `auth_code` (GH-136).
|
64
94
|
|
65
95
|
|
66
|
-
|
96
|
+
## 3.1.0
|
67
97
|
|
68
98
|
- NEW: Added accounts support (GH-113).
|
69
99
|
- NEW: Added sorting and filtering support (GH-112).
|
@@ -77,9 +107,9 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
|
77
107
|
- REMOVED: Removed support for wildcard accounts (GH-107).
|
78
108
|
|
79
109
|
|
80
|
-
|
110
|
+
## 3.0.0
|
81
111
|
|
82
|
-
|
112
|
+
### stable
|
83
113
|
|
84
114
|
- FIXED: The client was using the wrong key to store the ContactsService which could cause conflicts with the DomainsService.
|
85
115
|
|
@@ -93,13 +123,13 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
|
93
123
|
|
94
124
|
- 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).
|
95
125
|
|
96
|
-
|
126
|
+
### beta2
|
97
127
|
|
98
128
|
- FIXED: `state` and `redirect_uri` are not properly passed in the request to exchang the code for an access token (GH-89, GH-90).
|
99
129
|
|
100
130
|
- FIXED: Request body is not properly serialized to JSON, and the "Content-Type" header was omissed (GH-91).
|
101
131
|
|
102
|
-
|
132
|
+
### beta1
|
103
133
|
|
104
134
|
- CHANGED: Minimum Ruby version >= 2
|
105
135
|
|
@@ -109,15 +139,15 @@ The client has been completely redesigned to support the [API v2](https://develo
|
|
109
139
|
|
110
140
|
Internal changes were made to match conventions adopted in other clients, such as the Go one and the Elixir one.
|
111
141
|
|
112
|
-
|
142
|
+
## 2.1.1
|
113
143
|
|
114
144
|
- FIXED: Paths may mistakenly be generated use \ on windows.
|
115
145
|
|
116
|
-
|
146
|
+
## 2.1.0
|
117
147
|
|
118
148
|
- NEW: Add the ability to set headers and pass extra connection params in each API method (GH-64)
|
119
149
|
|
120
|
-
|
150
|
+
## 2.0.0
|
121
151
|
|
122
152
|
**2.0.0.alpha**
|
123
153
|
|
@@ -129,7 +159,7 @@ Internal changes were made to match conventions adopted in other clients, such a
|
|
129
159
|
|
130
160
|
- CHANGED: Drop 1.8.7, 1.9.2 support. Required Ruby >= 1.9.3.
|
131
161
|
|
132
|
-
- CHANGED: This package no longer provides a CLI. The CLI has been extracted to [
|
162
|
+
- CHANGED: This package no longer provides a CLI. The CLI has been extracted to [dnsimple-ruby-cli](https://github.com/dnsimple/dnsimple-ruby-cli)
|
133
163
|
|
134
164
|
- CHANGED: Renamed the Gem from "dnsimple-ruby" to "dnsimple" (GH-23).
|
135
165
|
|
@@ -141,23 +171,23 @@ Internal changes were made to match conventions adopted in other clients, such a
|
|
141
171
|
|
142
172
|
- FIXED: Fixed a bug where API token environment variables were not properly detected (GH-59, GH-62). Thanks @oguzbilgic and @rupurt.
|
143
173
|
|
144
|
-
|
174
|
+
## Release 1.7.1
|
145
175
|
|
146
176
|
- FIXED: Updated Certificate to match the serialized attributes (GH-53).
|
147
177
|
|
148
|
-
|
178
|
+
## Release 1.7.0
|
149
179
|
|
150
180
|
- NEW: Add support for Domain-based authentication (GH-40, GH-46). Thanks @dwradcliffe and @samsonasu.
|
151
181
|
|
152
|
-
|
182
|
+
## Release 1.6.0
|
153
183
|
|
154
184
|
- NEW: Add support for 2FA (GH-44)
|
155
185
|
|
156
|
-
|
186
|
+
## Release 1.5.5
|
157
187
|
|
158
188
|
- NEW: Add notice about the CLI moving to a new location
|
159
189
|
|
160
|
-
|
190
|
+
## Release 1.5.4
|
161
191
|
|
162
192
|
- NEW: Added domain#expires_on attribute (GH-34). Thanks @alkema
|
163
193
|
|
@@ -167,23 +197,23 @@ Internal changes were made to match conventions adopted in other clients, such a
|
|
167
197
|
|
168
198
|
- CHANGED: User.me now uses the correct patch for API v1.
|
169
199
|
|
170
|
-
|
200
|
+
## Release 1.5.3
|
171
201
|
|
172
202
|
- FIXED: In some cases the client crashed with NoMethodError VERSION (GH-35).
|
173
203
|
|
174
|
-
|
204
|
+
## Release 1.5.2
|
175
205
|
|
176
206
|
- NEW: Provide a meaningful user-agent.
|
177
207
|
|
178
|
-
|
208
|
+
## Release 1.5.1
|
179
209
|
|
180
210
|
- FIXED: Invalid base URI.
|
181
211
|
|
182
|
-
|
212
|
+
## Release 1.5.0
|
183
213
|
|
184
214
|
- CHANGED: Added support for versioned API (GH-33)
|
185
215
|
|
186
|
-
|
216
|
+
## Release 1.4.0
|
187
217
|
|
188
218
|
- CHANGED: Normalized exception handling. No more RuntimeError.
|
189
219
|
In case of request error, the client raises RequestError, RecordExists or RecodNotFound
|