60 lines
1.6 KiB
Makefile
60 lines
1.6 KiB
Makefile
set quiet
|
|
|
|
import? '../sdk-codegen/utils.just'
|
|
|
|
# make vendored executables callable directly
|
|
export PATH := "vendor/bin:" + env_var('PATH')
|
|
|
|
_default:
|
|
just --list --unsorted
|
|
|
|
# install vendored dependencies
|
|
install *args:
|
|
composer install {{ if is_dependency() == "true" {"--quiet"} else {""} }} {{ args }}
|
|
|
|
# ⭐ run full unit test suite; needs stripe-mock
|
|
[no-exit-message]
|
|
test *args: install
|
|
phpunit {{ args }}
|
|
|
|
# run tests in CI; can use autoload mode (or not)
|
|
[confirm("This will modify local files and is intended for use in CI; do you want to proceed?")]
|
|
ci-test autoload:
|
|
./build.php {{ autoload }}
|
|
|
|
# ⭐ format all files
|
|
format *args: install
|
|
PHP_CS_FIXER_IGNORE_ENV=1 php-cs-fixer fix -v --using-cache=no {{ args }}
|
|
|
|
# check formatting for, but don't modify, files
|
|
format-check: (format "--dry-run")
|
|
|
|
# ⭐ statically analyze code
|
|
lint *args:
|
|
php -d memory_limit=512M vendor/bin/phpstan analyse lib tests {{args}}
|
|
|
|
# for backwards compatibility; ideally removed later
|
|
[private]
|
|
alias phpstan := lint
|
|
|
|
# called by tooling
|
|
[private]
|
|
update-version version:
|
|
echo "{{ version }}" > VERSION
|
|
perl -pi -e 's|VERSION = '\''[.\-\w\d]+'\''|VERSION = '\''{{ version }}'\''|' lib/Stripe.php
|
|
|
|
|
|
PHPDOCUMENTOR_VERSION := "v3.0.0"
|
|
# generates docs; currently broken? can unhide if working
|
|
[private]
|
|
phpdoc:
|
|
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
if [ ! -f vendor/bin/phpdoc ]; then
|
|
curl -sfL https://github.com/phpDocumentor/phpDocumentor/releases/download/{{ PHPDOCUMENTOR_VERSION }}/phpDocumentor.phar -o vendor/bin/phpdoc
|
|
chmod +x vendor/bin/phpdoc
|
|
fi
|
|
|
|
phpdoc
|