minfraud 1.0.4 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.github/dependabot.yml +11 -0
- data/.github/workflows/release.yml +28 -0
- data/.github/workflows/rubocop.yml +18 -0
- data/.github/workflows/test.yml +36 -0
- data/.gitignore +2 -0
- data/.rubocop.yml +90 -0
- data/CHANGELOG.md +197 -4
- data/CODE_OF_CONDUCT.md +4 -4
- data/Gemfile +2 -2
- data/LICENSE.txt +2 -1
- data/README.dev.md +4 -0
- data/README.md +255 -58
- data/Rakefile +9 -3
- data/bin/console +4 -3
- data/dev-bin/release.sh +59 -0
- data/lib/minfraud/assessments.rb +127 -53
- data/lib/minfraud/components/account.rb +31 -9
- data/lib/minfraud/components/addressable.rb +73 -26
- data/lib/minfraud/components/base.rb +26 -14
- data/lib/minfraud/components/billing.rb +5 -0
- data/lib/minfraud/components/credit_card.rb +117 -29
- data/lib/minfraud/components/custom_inputs.rb +25 -0
- data/lib/minfraud/components/device.rb +51 -10
- data/lib/minfraud/components/email.rb +120 -9
- data/lib/minfraud/components/event.rb +60 -13
- data/lib/minfraud/components/order.rb +59 -22
- data/lib/minfraud/components/payment.rb +192 -22
- data/lib/minfraud/components/report/transaction.rb +80 -0
- data/lib/minfraud/components/shipping.rb +15 -6
- data/lib/minfraud/components/shopping_cart.rb +19 -12
- data/lib/minfraud/components/shopping_cart_item.rb +42 -13
- data/lib/minfraud/enum.rb +22 -8
- data/lib/minfraud/error_handler.rb +45 -18
- data/lib/minfraud/errors.rb +22 -2
- data/lib/minfraud/http_service/response.rb +61 -17
- data/lib/minfraud/model/abstract.rb +20 -0
- data/lib/minfraud/model/address.rb +52 -0
- data/lib/minfraud/model/billing_address.rb +11 -0
- data/lib/minfraud/model/credit_card.rb +75 -0
- data/lib/minfraud/model/device.rb +51 -0
- data/lib/minfraud/model/disposition.rb +42 -0
- data/lib/minfraud/model/email.rb +54 -0
- data/lib/minfraud/model/email_domain.rb +24 -0
- data/lib/minfraud/model/error.rb +28 -0
- data/lib/minfraud/model/factors.rb +24 -0
- data/lib/minfraud/model/geoip2_location.rb +25 -0
- data/lib/minfraud/model/insights.rb +68 -0
- data/lib/minfraud/model/ip_address.rb +58 -0
- data/lib/minfraud/model/ip_risk_reason.rb +48 -0
- data/lib/minfraud/model/issuer.rb +49 -0
- data/lib/minfraud/model/score.rb +76 -0
- data/lib/minfraud/model/score_ip_address.rb +23 -0
- data/lib/minfraud/model/shipping_address.rb +30 -0
- data/lib/minfraud/model/subscores.rb +156 -0
- data/lib/minfraud/model/warning.rb +63 -0
- data/lib/minfraud/report.rb +66 -0
- data/lib/minfraud/resolver.rb +25 -16
- data/lib/minfraud/validates.rb +187 -0
- data/lib/minfraud/version.rb +4 -1
- data/lib/minfraud.rb +55 -16
- data/minfraud.gemspec +27 -18
- metadata +107 -36
- data/.travis.yml +0 -5
- data/lib/minfraud/http_service/request.rb +0 -37
- data/lib/minfraud/http_service.rb +0 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 14d6fda0782c4f12ecd3599b4d6f3887be93845fca267490bbc64ad6bf5e3518
|
4
|
+
data.tar.gz: 0dbcb74c203b066c41ad1d85b25e236a63c9e2904a87064bece9ce69a60eecc6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74a6d172a649d417c89ca8a22a454407e54d70a19cea0583594165a2de23ac9df889478675fadad4becade61a84ac7fb39950ae890cd8d98c80e2dcdb6a2d38d
|
7
|
+
data.tar.gz: 7c9c52f1929869e043878b4f74c40d488fa5a44df587b63362a537b14b8f3602a4c78b51abeb18ab2404bf49ba2662b38919a5470de8270f2b53dc1ea2b80071
|
@@ -0,0 +1,28 @@
|
|
1
|
+
name: Release
|
2
|
+
|
3
|
+
on:
|
4
|
+
workflow_dispatch:
|
5
|
+
pull_request:
|
6
|
+
push:
|
7
|
+
branches:
|
8
|
+
- main
|
9
|
+
release:
|
10
|
+
types:
|
11
|
+
- published
|
12
|
+
|
13
|
+
jobs:
|
14
|
+
push:
|
15
|
+
if: github.event_name == 'release' && github.event.action == 'published'
|
16
|
+
runs-on: ubuntu-latest
|
17
|
+
environment: release
|
18
|
+
permissions:
|
19
|
+
id-token: write
|
20
|
+
steps:
|
21
|
+
- uses: actions/checkout@v4
|
22
|
+
- name: Set up Ruby
|
23
|
+
uses: ruby/setup-ruby@v1
|
24
|
+
with:
|
25
|
+
bundler-cache: true
|
26
|
+
ruby-version: ruby
|
27
|
+
|
28
|
+
- uses: rubygems/release-gem@v1
|
@@ -0,0 +1,18 @@
|
|
1
|
+
name: Run rubocop
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
pull_request:
|
6
|
+
schedule:
|
7
|
+
- cron: '4 0 * * SUN'
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
rubocop:
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v4
|
14
|
+
- uses: ruby/setup-ruby@v1
|
15
|
+
with:
|
16
|
+
ruby-version: 3.3
|
17
|
+
- run: bundle install
|
18
|
+
- run: bundle exec rake -t rubocop
|
@@ -0,0 +1,36 @@
|
|
1
|
+
name: Run tests
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
pull_request:
|
6
|
+
schedule:
|
7
|
+
- cron: '4 1 * * SUN'
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
test:
|
11
|
+
runs-on: ${{ matrix.os }}
|
12
|
+
strategy:
|
13
|
+
fail-fast: false
|
14
|
+
matrix:
|
15
|
+
os: [ubuntu-latest, windows-latest, macos-latest]
|
16
|
+
version:
|
17
|
+
[
|
18
|
+
2.7,
|
19
|
+
'3.0',
|
20
|
+
3.1,
|
21
|
+
3.2,
|
22
|
+
3.3,
|
23
|
+
jruby,
|
24
|
+
]
|
25
|
+
exclude:
|
26
|
+
- os: windows-latest
|
27
|
+
version: jruby
|
28
|
+
steps:
|
29
|
+
- uses: actions/checkout@v4
|
30
|
+
with:
|
31
|
+
submodules: true
|
32
|
+
- uses: ruby/setup-ruby@v1
|
33
|
+
with:
|
34
|
+
ruby-version: ${{ matrix.version }}
|
35
|
+
- run: bundle install
|
36
|
+
- run: bundle exec rake -t spec
|
data/.gitignore
CHANGED
data/.rubocop.yml
ADDED
@@ -0,0 +1,90 @@
|
|
1
|
+
AllCops:
|
2
|
+
TargetRubyVersion: 2.7
|
3
|
+
NewCops: enable
|
4
|
+
|
5
|
+
# Metrics.
|
6
|
+
|
7
|
+
Metrics/BlockLength:
|
8
|
+
Enabled: false # Default is true, but mostly hit in tests.
|
9
|
+
|
10
|
+
Metrics/AbcSize:
|
11
|
+
Enabled: false # To allow for pre-existing code.
|
12
|
+
|
13
|
+
Metrics/ClassLength:
|
14
|
+
Enabled: false # To allow for pre-existing code.
|
15
|
+
|
16
|
+
Metrics/CyclomaticComplexity:
|
17
|
+
Enabled: false # To allow for pre-existing code.
|
18
|
+
|
19
|
+
Metrics/MethodLength:
|
20
|
+
Enabled: false # To allow for pre-existing code.
|
21
|
+
|
22
|
+
Metrics/PerceivedComplexity:
|
23
|
+
Enabled: false # To allow for pre-existing code.
|
24
|
+
|
25
|
+
# Layout.
|
26
|
+
|
27
|
+
Layout/LineLength:
|
28
|
+
Max: 150 # Default is 120.
|
29
|
+
|
30
|
+
Layout/HashAlignment:
|
31
|
+
EnforcedHashRocketStyle: table # Default is key.
|
32
|
+
EnforcedColonStyle: table # Default is key.
|
33
|
+
|
34
|
+
Layout/ExtraSpacing:
|
35
|
+
ForceEqualSignAlignment: true # Default is false.
|
36
|
+
|
37
|
+
Layout/IndentationStyle:
|
38
|
+
IndentationWidth: 2 # Default is <none>.
|
39
|
+
|
40
|
+
# Style.
|
41
|
+
|
42
|
+
Style/HashSyntax:
|
43
|
+
EnforcedStyle: ruby19_no_mixed_keys # Default is ruby19. This one is better.
|
44
|
+
|
45
|
+
Style/CollectionMethods:
|
46
|
+
Enabled: true # Default is false.
|
47
|
+
|
48
|
+
Style/NumericLiterals:
|
49
|
+
MinDigits: 4 # Default is 5.
|
50
|
+
|
51
|
+
Style/NegatedIf: # I disagree with this.
|
52
|
+
Enabled: false
|
53
|
+
|
54
|
+
Style/IfUnlessModifier: # This doesn't always make sense.
|
55
|
+
Enabled: false
|
56
|
+
|
57
|
+
# Trailing commas are often good.
|
58
|
+
Style/TrailingCommaInArguments:
|
59
|
+
Enabled: false
|
60
|
+
Style/TrailingCommaInArrayLiteral:
|
61
|
+
Enabled: false
|
62
|
+
Style/TrailingCommaInHashLiteral:
|
63
|
+
Enabled: false
|
64
|
+
|
65
|
+
# Default is both which is probably fine, but it changes code and I don't want
|
66
|
+
# to investigate any possible behavior change right now.
|
67
|
+
Style/EmptyElse:
|
68
|
+
EnforcedStyle: empty
|
69
|
+
|
70
|
+
Style/ConditionalAssignment:
|
71
|
+
Enabled: false # This produces kind of strange results.
|
72
|
+
|
73
|
+
Style/GuardClause:
|
74
|
+
Enabled: false # Doesn't always make sense.
|
75
|
+
|
76
|
+
Style/FormatStringToken:
|
77
|
+
Enabled: false # Seems unnecessary.
|
78
|
+
|
79
|
+
# Seems unnecessary. Asks us to call super in a bunch of places when there's no
|
80
|
+
# need.
|
81
|
+
Lint/MissingSuper:
|
82
|
+
Enabled: false
|
83
|
+
|
84
|
+
# Naming.
|
85
|
+
|
86
|
+
Naming/VariableNumber:
|
87
|
+
Enabled: false # Doesn't always make sense.
|
88
|
+
|
89
|
+
Gemspec/DevelopmentDependencies:
|
90
|
+
Enabled: false
|
data/CHANGELOG.md
CHANGED
@@ -1,14 +1,207 @@
|
|
1
|
-
#
|
1
|
+
# Changelog
|
2
2
|
|
3
|
-
##
|
3
|
+
## v2.4.0 (2024-01-12)
|
4
|
+
|
5
|
+
* Ruby 2.7+ is now required. If you're using Ruby 2.5 or 2.6, please use
|
6
|
+
version 2.3.0 of this gem.
|
7
|
+
* Added the processors `:pxp_financial` and `:trustpay` to
|
8
|
+
`Minfraud::Components::Payment`.
|
9
|
+
|
10
|
+
## v2.3.0 (2023-12-04)
|
11
|
+
|
12
|
+
* Added the processor `:shopify_payments` to `Minfraud::Components::Payment`.
|
13
|
+
* Added the processor `:google_pay` to `Minfraud::Components::Payment`.
|
14
|
+
* Added the processor `:placetopay` to `Minfraud::Components::Payment`.
|
15
|
+
* In addition to the minfraud gem version, the User-Agent now includes the
|
16
|
+
version of Ruby and the version of the HTTP client in all HTTP requests.
|
17
|
+
* Updated `maxmind-geoip2` to version that includes the `anycast?` method
|
18
|
+
on `MaxMind::GeoIP2::Record::Traits`. This returns `true` if the IP
|
19
|
+
address belongs to an [anycast
|
20
|
+
network](https://en.wikipedia.org/wiki/Anycast). This is available in
|
21
|
+
minFraud Insights and Factors.
|
22
|
+
|
23
|
+
## v2.2.0 (2022-03-28)
|
24
|
+
|
25
|
+
* Added the input `/credit_card/country`. This is the country where the
|
26
|
+
issuer of the card is located. This may be passed instead of the
|
27
|
+
`/credit_card/issuer_id_number` if you do not wish to pass partial
|
28
|
+
account numbers or if your payment processor does not provide them. You
|
29
|
+
may provide this using the `country` attribute on
|
30
|
+
`Minfraud::Components::CreditCard`.
|
31
|
+
|
32
|
+
## v2.1.0 (2022-01-25)
|
33
|
+
|
34
|
+
* Adds the following new processor to `Minfraud::Components::Payment`:
|
35
|
+
* `:windcave`
|
36
|
+
* The `last_4_digits` input to `Minfraud::Components::CreditCard` has been
|
37
|
+
deprecated in favor of `last_digits` and will be removed in a future
|
38
|
+
release. `last_digits`/`last_4_digits` also now supports two digit values
|
39
|
+
in addition to the previous four digit values.
|
40
|
+
* Eight digit `issuer_id_number` inputs are now supported by
|
41
|
+
`Minfraud::Components::CreditCard` in addition to the previously accepted
|
42
|
+
six digit `issuer_id_number`. In most cases, you should send the last four
|
43
|
+
digits for `last_digits`. If you send an `issuer_id_number` that contains
|
44
|
+
an eight digit IIN, and if the credit card brand is not one of the
|
45
|
+
following, you should send the last two digits for `last_digits`:
|
46
|
+
* `Discover`
|
47
|
+
* `JCB`
|
48
|
+
* `Mastercard`
|
49
|
+
* `UnionPay`
|
50
|
+
* `Visa`
|
51
|
+
|
52
|
+
## v2.0.0 (2021-12-06)
|
53
|
+
|
54
|
+
* Breaking change from 1.x: Removed deprecated methods
|
55
|
+
`is_in_european_union`, `is_anonymous`, `is_anonymous_vpn`,
|
56
|
+
`is_hosting_provider`, `is_public_proxy`, and `is_tor_exit_node`. The
|
57
|
+
non-deprecated equivalents are `in_european_union?`, `anonymous?`,
|
58
|
+
`anonymous_vpn?`, `hosting_provider?`, `public_proxy?`, and
|
59
|
+
`tor_exit_node?`.
|
60
|
+
* Breaking change from 1.x: Removed deprecated methods for deprecated
|
61
|
+
subscores: `email_tenure` and `ip_tenure`. For `email_tenure`, please use
|
62
|
+
the `email_address` subscore instead. For `ip_tenure`, please use
|
63
|
+
`risk_score` instead.
|
64
|
+
* Breaking change from 1.x: Removed deprecated method for deprecated
|
65
|
+
attribute `ip_address.country.is_high_risk`.
|
66
|
+
* Breaking change from 1.x: Switches HTTP client from faraday to http.rb.
|
67
|
+
There should be no behavior change for most users, but this is
|
68
|
+
technically a breaking change from the perspective of semver. Most users
|
69
|
+
should not be affected as the changes are limited to attributes and
|
70
|
+
classes that would not normally be accessed outside the gem.
|
71
|
+
* Breaking change from 1.x: `user_id` is no longer supported as a way to
|
72
|
+
configure your MaxMind account ID. Use `account_id` instead.
|
73
|
+
* Breaking change from 1.x: Removed the `Minfraud.configuration` method.
|
74
|
+
* Breaking change from 1.x: Localized names are no longer exposed via
|
75
|
+
methods on `names` objects, only as hash keys. For example, use
|
76
|
+
`response.ip_address.country.names['en']` instead of
|
77
|
+
`response.ip_address.country.names.en`. The latter was deprecated.
|
78
|
+
* Adds mobile country code (MCC) and mobile network code (MNC) to minFraud
|
79
|
+
Insights and Factors responses. These are available at
|
80
|
+
`response.ip_address.traits.mobile_country_code` and
|
81
|
+
`response.ip_address.traits.mobile_network_code`. We expect this data to
|
82
|
+
be available by late January, 2022.
|
83
|
+
* Adds the following new processors to `Minfraud::Components::Payment`:
|
84
|
+
* `:boacompra`
|
85
|
+
* `:boku`
|
86
|
+
* `:coregateway`
|
87
|
+
* `:fiserv`
|
88
|
+
* `:neopay`
|
89
|
+
* `:neosurf`
|
90
|
+
* `:openbucks`
|
91
|
+
* `:paysera`
|
92
|
+
* `:payvision`
|
93
|
+
* `:trustly`
|
94
|
+
* Depend on the `maxmind-geoip2` gem. This allows us to delete classes from
|
95
|
+
that gem that we previously had included in this gem. There is no
|
96
|
+
functional difference.
|
97
|
+
|
98
|
+
## v1.6.0 (2021-08-19)
|
99
|
+
|
100
|
+
* Adds new processor to `Minfraud::Components::Payment`: `:cardknox`,
|
101
|
+
`:creditguard`, `:credorax`, `:datacap`, `:dlocal`, `:onpay`, and
|
102
|
+
`:safecharge`.
|
103
|
+
* Adds `rule_label` to minFraud output `/disposition`.
|
104
|
+
* Adds support for the `/credit_card/was_3d_secure_successful` input. This is
|
105
|
+
available by setting the `was_3d_secure_successful` attribute on
|
106
|
+
`Minfraud::Components::CreditCard`.
|
107
|
+
* Ruby 2.5+ is now required. If you're using Ruby 2.1, 2.2, 2.3, or 2.4,
|
108
|
+
please use version 1.5.0 of this gem.
|
109
|
+
|
110
|
+
## v1.5.0 (2021-02-02)
|
111
|
+
|
112
|
+
* Adds the `hash_address` attribute to `Minfraud::Components::Email`. If
|
113
|
+
this is `true`, the MD5 hash of the `address` will be sent instead of the
|
114
|
+
plain text `address`. Use this if you prefer to send the hash of the
|
115
|
+
`address` rather than the plain text. Note that this normalizes the
|
116
|
+
`address`, so we recommend using it as opposed to hashing the `address`
|
117
|
+
manually.
|
118
|
+
* The email `domain` input is now automatically set if the email `address`
|
119
|
+
input is set but the `domain` is not.
|
120
|
+
* Adds new payment processors `:apple_pay` and `:aps_payments` to
|
121
|
+
`Minfraud::Components::Payment`.
|
122
|
+
* Adds support for the IP address risk reasons in the minFraud Insights
|
123
|
+
and Factors responses. This is available at `.ip_address.risk_reasons`.
|
124
|
+
It is an array of `IPRiskReason` objects.
|
125
|
+
|
126
|
+
## v1.4.1 (2020-12-01)
|
127
|
+
|
128
|
+
* Do not throw an exception if the response does not include IP address
|
129
|
+
information. Previously we would incorrectly try to retrieve fields from
|
130
|
+
`nil`, leading to a `NoMethodError`.
|
131
|
+
|
132
|
+
## v1.4.0 (2020-10-13)
|
133
|
+
|
134
|
+
* IMPORTANT: Ruby 2.0 is no longer supported. If you're using Ruby 2.0,
|
135
|
+
please use version 1.3.0.
|
136
|
+
* Adds handling for the `REQUEST_INVALID` error code.
|
137
|
+
* The IP address is no longer a required input.
|
138
|
+
* Adds new payment processor `:tsys` to `Minfraud::Components::Payment`.
|
139
|
+
|
140
|
+
## v1.3.0 (2020-09-25)
|
141
|
+
|
142
|
+
* Adds support for persistent HTTP connections. Connections persist
|
143
|
+
automatically.
|
144
|
+
* IMPORTANT: Ruby 1.9 is no longer supported. If you're using Ruby 1.9,
|
145
|
+
please use version 1.2.0 or older.
|
146
|
+
* Adds support for client side validation of inputs. An `InvalidInputError`
|
147
|
+
exception will be raised if an input is invalid. This can be enabled by
|
148
|
+
setting `enable_validation` to `true` when configuring `Minfraud`. It is
|
149
|
+
disabled by default.
|
150
|
+
* Adds the `residential_proxy?` method to `MaxMind::GeoIP2::Record::Traits`
|
151
|
+
for use with minFraud Insights and Factors.
|
152
|
+
|
153
|
+
## v1.2.0 (2020-07-15)
|
154
|
+
|
155
|
+
* Adds new processor types to `Minfraud::Components::Payment`: `:cashfree`,
|
156
|
+
`:first_atlantic_commerce`, `:komoju`, `:paytm`, `:razorpay`, and
|
157
|
+
`:systempay`.
|
158
|
+
* Adds support for three new Factors outputs: `/subscores/device` (the risk
|
159
|
+
associated with the device), `/subscores/email_local_part` (the risk
|
160
|
+
associated with the part of the email address before the @ symbol) and
|
161
|
+
`/subscores/shipping_address` (the risk associated with the shipping
|
162
|
+
address).
|
163
|
+
* Adds support for providing your MaxMind account ID using the `account_id`
|
164
|
+
attribute instead of the `user_id` attribute. In a future release,
|
165
|
+
support for the `user_id` attribute will be removed.
|
166
|
+
|
167
|
+
## v1.1.0 (2020-06-19)
|
168
|
+
|
169
|
+
* Adds support for the minFraud Report Transaction API. Reporting
|
170
|
+
transactions to MaxMind helps us detect about 10-50% more fraud and
|
171
|
+
reduce false positives for you.
|
172
|
+
* Adds support for the new credit card output `/credit_card/is_business`.
|
173
|
+
This indicates whether the card is a business card. It may be accessed
|
174
|
+
via `response.credit_credit.is_business` on the minFraud Insights and
|
175
|
+
Factors response objects.
|
176
|
+
* Adds support for the new email domain output `/email/domain/first_seen`.
|
177
|
+
This may be accessed via `response.email.domain.first_seen` on the
|
178
|
+
minFraud Insights and Factors response objects.
|
179
|
+
* Rename `ErrorHandler#inspect` to `ErrorHandler#examine` in order not to
|
180
|
+
break LSP.
|
181
|
+
* Adds classes for the Score, Insights, and Factors responses. This allows
|
182
|
+
us to provide API documentation for the various response attributes.
|
183
|
+
* Removes `hashie` as a required dependency.
|
184
|
+
* Adds new processor types to `Minfraud::Components::Payment`: `:affirm`,
|
185
|
+
`:afterpay`, `:cardpay`, `:ccavenue`, `:cetelem`, `:ct_payments`,
|
186
|
+
`:dalenys`, `:datacash`, `:dotpay`, `:ecommpay`, `:epx`, `:g2a_pay`,
|
187
|
+
`:gocardless`, `:interac`, `:klarna`, `:mercanet`, `:oney`, `:payeezy`,
|
188
|
+
`:paylike`, `:payment_express`, `:paysafecard`, `:posconnect`,
|
189
|
+
`:smartdebit`, `:synapsefi`, and others.
|
190
|
+
* Adds support for passing custom inputs to minFraud. GitHub #6.
|
191
|
+
* Adds `:email_change`, `:password_reset`, and `:payout_change` as types to
|
192
|
+
`Minfraud::Components::Event`.
|
193
|
+
* Adds support for the `session_id` and `session_age` inputs.
|
194
|
+
|
195
|
+
## v1.0.4 (2016-12-23)
|
4
196
|
|
5
197
|
* Prevents boolean value conversion to string to avoid warnings
|
6
198
|
* Adds `amount` attribute to the `Minfraud::Components::Order` instances
|
7
199
|
|
8
|
-
## v1.0.3
|
200
|
+
## v1.0.3 (2016-11-24)
|
201
|
+
|
9
202
|
* Adds `token` attribute to the `Minfraud::Components::CreditCard` instances
|
10
203
|
according to the MinFraud Release Notes introduced on November 17, 2016
|
11
204
|
|
12
|
-
## v1.0.2
|
205
|
+
## v1.0.2 (2016-10-11)
|
13
206
|
|
14
207
|
* Adds support for Ruby >= 1.9
|
data/CODE_OF_CONDUCT.md
CHANGED
@@ -35,7 +35,7 @@ This code of conduct applies both within project spaces and in public spaces
|
|
35
35
|
when an individual is representing the project or its community.
|
36
36
|
|
37
37
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
38
|
-
reported by contacting a project maintainer at
|
38
|
+
reported by contacting a project maintainer at support@maxmind.com. All
|
39
39
|
complaints will be reviewed and investigated and will result in a response that
|
40
40
|
is deemed necessary and appropriate to the circumstances. Maintainers are
|
41
41
|
obligated to maintain confidentiality with regard to the reporter of an
|
@@ -43,7 +43,7 @@ incident.
|
|
43
43
|
|
44
44
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
45
45
|
version 1.3.0, available at
|
46
|
-
[
|
46
|
+
[https://contributor-covenant.org/version/1/3/0/][version]
|
47
47
|
|
48
|
-
[homepage]:
|
49
|
-
[version]:
|
48
|
+
[homepage]: https://contributor-covenant.org
|
49
|
+
[version]: https://contributor-covenant.org/version/1/3/0/
|
data/Gemfile
CHANGED
data/LICENSE.txt
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
The MIT License (MIT)
|
2
2
|
|
3
|
-
Copyright (c) 2016 kushnir.yb
|
3
|
+
Copyright (c) 2016-2020 kushnir.yb
|
4
|
+
Copyright (c) 2020-2024 MaxMind, Inc.
|
4
5
|
|
5
6
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
7
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.dev.md
ADDED