Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,9 @@ docs/public/
.php-cs-fixer.cache
.phpunit.cache/
.phpunit.result.cache
box.phar
build
composer.lock
composer.phar
minfraud.phar
/phpDocumentor.phar
phpunit.xml
t.php
vendor/
Expand Down
5 changes: 3 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
CHANGELOG
=========

3.7.0
3.7.0 (2026-07-21)
------------------

* Added the `residential` property to the `anonymizer` object on
`MaxMind\MinFraud\Model\IpAddress`. This is a `GeoIp2\Record\AnonymizerFeed`
object providing residential proxy data for the network: `confidence`,
`networkLastSeen`, and `providerName`. It may be populated even when no
other anonymizer properties are set. This data is available from the
minFraud Insights and Factors web services.
minFraud Insights and Factors web services. `geoip2/geoip2` 3.4.0 is now
required for this data.
* Added `tracking_token` to the `/device` request object. This is the
token generated by the
[Device Tracking Add-on](https://dev.maxmind.com/minfraud/track-devices)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ You should now have the file `composer.phar` in your project directory.
Run in your project root:

```
php composer.phar require maxmind/minfraud:^3.6.0
php composer.phar require maxmind/minfraud:^3.7.0
```

You should now have the files `composer.json` and `composer.lock` as well as
Expand Down
33 changes: 10 additions & 23 deletions dev-bin/release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,12 @@ fi

check_command perl
check_command php
check_command wget

# box.phar, composer.phar, and phpDocumentor.phar are managed by mise (see
# mise.toml)
check_command box.phar
check_command composer.phar
check_command phpDocumentor.phar

# Check that we're not on the main branch
current_branch=$(git branch --show-current)
Expand Down Expand Up @@ -91,21 +96,12 @@ if [ -d vendor ]; then
rm -fr vendor
fi

php composer.phar self-update
php composer.phar update --no-dev
composer.phar update --no-dev

perl -pi -e "s/(?<=const VERSION = ').+?(?=';)/$tag/g" src/MinFraud/ServiceClient.php
perl -pi -e "s{(?<=php composer\.phar require maxmind\/minfraud:).+}{^$version}g" README.md

box_phar_hash='f98cf885a7c07c84df66e33888f1d93f063298598e0a5f41ca322aeb9683179b box.phar'

if ! echo "$box_phar_hash" | sha256sum -c; then
wget -O box.phar "https://github.com/box-project/box/releases/download/4.6.10/box.phar"
fi

echo "$box_phar_hash" | sha256sum -c

php box.phar compile
box.phar compile

phar_test=$(./dev-bin/phar-test.php)
if [[ -n $phar_test ]]; then
Expand All @@ -114,7 +110,7 @@ if [[ -n $phar_test ]]; then
fi

# Download test deps
php composer.phar update
composer.phar update

./vendor/bin/phpunit

Expand Down Expand Up @@ -143,20 +139,11 @@ if [ -n "$(git status --porcelain)" ]; then
exit 1
fi

# Using Composer is possible, but they don't recommend it.
phpdocumentor_phar_hash='aa00973d88b278fe59fd8dce826d8d5419df589cb7563ac379856ec305d6b938 phpDocumentor.phar'

if ! echo "$phpdocumentor_phar_hash" | sha256sum -c; then
wget -O phpDocumentor.phar https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.8.1/phpDocumentor.phar
fi

echo "$phpdocumentor_phar_hash" | sha256sum -c

# Use cache dir in /tmp as otherwise cache files get into the output directory.
cachedir="/tmp/phpdoc-$$-$RANDOM"
rm -rf "$cachedir"

php phpDocumentor.phar \
phpDocumentor.phar \
--visibility=public \
--cache-folder="$cachedir" \
--title="minFraud PHP API $tag" \
Expand Down
138 changes: 138 additions & 0 deletions mise.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions mise.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ disable_backends = [
[tools]
hugo = "latest"
lychee = "latest"
"github:box-project/box" = "latest"
"github:composer/composer" = "latest"
"github:phpDocumentor/phpDocumentor" = "latest"

[hooks]
enter = "mise install --quiet"
Expand Down
2 changes: 1 addition & 1 deletion src/MinFraud/ServiceClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

abstract class ServiceClient
{
public const VERSION = 'v3.6.0';
public const VERSION = 'v3.7.0';

/**
* @var Client
Expand Down