diff --git a/.gitignore b/.gitignore index 9fd8d7b4..0f81fa9b 100644 --- a/.gitignore +++ b/.gitignore @@ -8,11 +8,8 @@ docs/public/ .phpunit.cache/ .phpunit.result.cache GeoLite2-City.mmdb -box.phar build composer.lock -composer.phar -/phpDocumentor.phar phpunit.xml geoip2.phar geoip2-php.sublime-* diff --git a/dev-bin/release.sh b/dev-bin/release.sh index 7b6dc3ca..914c8f4e 100755 --- a/dev-bin/release.sh +++ b/dev-bin/release.sh @@ -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) @@ -89,21 +94,12 @@ fi rm -fr vendor -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/WebService/Client.php perl -pi -e "s{(?<=php composer\.phar require geoip2/geoip2:).+}{^$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 @@ -112,7 +108,7 @@ if [[ -n $phar_test ]]; then fi # Download test deps -php composer.phar update +composer.phar update ./vendor/bin/phpunit @@ -141,20 +137,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="GeoIP PHP API $tag" \ diff --git a/mise.lock b/mise.lock index 66b9559b..746761ce 100644 --- a/mise.lock +++ b/mise.lock @@ -1,5 +1,129 @@ # @generated - this file is auto-generated by `mise lock` https://mise.jdx.dev/dev-tools/mise-lock.html +[[tools."github:box-project/box"]] +version = "4.7.0" +backend = "github:box-project/box" + +[tools."github:box-project/box"."platforms.linux-arm64"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[tools."github:box-project/box"."platforms.linux-arm64-musl"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[tools."github:box-project/box"."platforms.linux-x64"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[tools."github:box-project/box"."platforms.linux-x64-musl"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[tools."github:box-project/box"."platforms.macos-arm64"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[tools."github:box-project/box"."platforms.macos-x64"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[tools."github:box-project/box"."platforms.windows-x64"] +checksum = "sha256:3d390eeaec33288098fe83f8a54c60cc575cb6be295f38ff4482b4b4f26f8d52" +url = "https://github.com/box-project/box/releases/download/4.7.0/box.phar" +url_api = "https://api.github.com/repos/box-project/box/releases/assets/376333812" + +[[tools."github:composer/composer"]] +version = "2.10.2" +backend = "github:composer/composer" + +[tools."github:composer/composer"."platforms.linux-arm64"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[tools."github:composer/composer"."platforms.linux-arm64-musl"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[tools."github:composer/composer"."platforms.linux-x64"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[tools."github:composer/composer"."platforms.linux-x64-musl"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[tools."github:composer/composer"."platforms.macos-arm64"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[tools."github:composer/composer"."platforms.macos-x64"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[tools."github:composer/composer"."platforms.windows-x64"] +checksum = "sha256:5ee7125f8a30a34d246cefdc0bc85b8a783b28f2aec968994118512350d28027" +url = "https://github.com/composer/composer/releases/download/2.10.2/composer.phar" +url_api = "https://api.github.com/repos/composer/composer/releases/assets/463051343" +provenance = "github-attestations" + +[[tools."github:phpDocumentor/phpDocumentor"]] +version = "3.10.0" +backend = "github:phpDocumentor/phpDocumentor" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.linux-arm64"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.linux-arm64-musl"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.linux-x64"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.linux-x64-musl"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.macos-arm64"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.macos-x64"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + +[tools."github:phpDocumentor/phpDocumentor"."platforms.windows-x64"] +checksum = "sha256:fe1e7c23ba3329aa6f19ac3c807446159a431a195ec5d9163b0c281a15105207" +url = "https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.10.0/phpDocumentor.phar" +url_api = "https://api.github.com/repos/phpDocumentor/phpDocumentor/releases/assets/419563924" + [[tools.hugo]] version = "0.164.0" backend = "aqua:gohugoio/hugo" diff --git a/mise.toml b/mise.toml index 8a944863..5a31601a 100644 --- a/mise.toml +++ b/mise.toml @@ -6,6 +6,9 @@ disable_backends = [ ] [tools] +"github:box-project/box" = "latest" +"github:composer/composer" = "latest" +"github:phpDocumentor/phpDocumentor" = "latest" hugo = "latest" lychee = "latest"