1ed285daaSGreg Roach{ 2a25f0a04SGreg Roach "name": "fisharebest/webtrees", 3ed285daaSGreg Roach "description": "webtrees online genealogy", 4ed285daaSGreg Roach "keywords": ["webtrees", "genealogy"], 531b7ad55SGreg Roach "license": "GPL-3.0-or-later", 6a25f0a04SGreg Roach "autoload": { 70e62c4b8SGreg Roach "psr-4": { 80e62c4b8SGreg Roach "Fisharebest\\Webtrees\\": "app/" 91f3fb95cSGreg Roach }, 101f3fb95cSGreg Roach "files": [ 111f3fb95cSGreg Roach "app/Helpers/functions.php" 121f3fb95cSGreg Roach ] 13a25f0a04SGreg Roach }, 1484e2cf4eSGreg Roach "autoload-dev": { 1584e2cf4eSGreg Roach "classmap": [ 1684e2cf4eSGreg Roach "tests/TestCase.php" 1784e2cf4eSGreg Roach ] 1884e2cf4eSGreg Roach }, 197286a40cSGreg Roach "config": { 207286a40cSGreg Roach "platform": { 21e70f282eSGreg Roach "php" : "7.1.3" 2222acdb08SGreg Roach }, 23425578caSGreg Roach "sort-packages": true, 24425578caSGreg Roach "process-timeout": 3600 257286a40cSGreg Roach }, 26ed285daaSGreg Roach "require": { 275f9f5f94SRico Sonntag "ext-curl": "*", 287286a40cSGreg Roach "ext-gd": "*", 297286a40cSGreg Roach "ext-iconv": "*", 305f9f5f94SRico Sonntag "ext-intl": "*", 318ae9e54eSRico Sonntag "ext-json": "*", 327286a40cSGreg Roach "ext-pcre": "*", 337286a40cSGreg Roach "ext-pdo": "*", 347286a40cSGreg Roach "ext-pdo_mysql": "*", 357286a40cSGreg Roach "ext-session": "*", 367286a40cSGreg Roach "ext-simplexml": "*", 377286a40cSGreg Roach "ext-xml": "*", 385f9f5f94SRico Sonntag "ext-zip": "*", 39362be83aSGreg Roach "doctrine/dbal": "~2.9", 40e70f282eSGreg Roach "filp/whoops": "~2.3", 41d592f2ecSGreg Roach "fisharebest/algorithm": "~1.3", 4293686a36SGreg Roach "fisharebest/ext-calendar": "~2.5", 4362bb28bdSGreg Roach "fisharebest/localization": "~1.12", 44cc26b3c3SGreg Roach "guzzlehttp/guzzle": "~6.0", 45*81083bd9SGreg Roach "illuminate/container": "^5.7.17", 46c9beb871SGreg Roach "illuminate/database": "^5.7.17", 47c9beb871SGreg Roach "illuminate/support": "^5.7.17", 48e70f282eSGreg Roach "league/commonmark": "~0.18", 49d592f2ecSGreg Roach "league/flysystem": "~1.0", 50d592f2ecSGreg Roach "league/flysystem-ziparchive": "~1.0", 51e70f282eSGreg Roach "league/glide": "~1.3", 52e70f282eSGreg Roach "ramsey/uuid": "~3.8", 538b04670aSGreg Roach "swiftmailer/swiftmailer": "~6.1", 54e70f282eSGreg Roach "symfony/expression-language": "~4.2", 55e70f282eSGreg Roach "symfony/http-foundation": "~4.2", 56e70f282eSGreg Roach "symfony/http-kernel": "~4.2", 57e70f282eSGreg Roach "symfony/polyfill-mbstring": "~1.10", 58e70f282eSGreg Roach "symfony/polyfill-php71": "~1.10", 59e70f282eSGreg Roach "symfony/polyfill-php72": "~1.10", 6022acdb08SGreg Roach "tecnickcom/tcpdf": "~6.2", 61e70f282eSGreg Roach "webuni/commonmark-table-extension": "~0.9" 6210a8d14fSGreg Roach }, 63db7d25eeSGreg Roach "require-dev": { 64bd52fa32SGreg Roach "maximebf/debugbar": "*", 65db7d25eeSGreg Roach "mockery/mockery": "*", 6695d954e1SGreg Roach "phpunit/phpunit": "*", 6795d954e1SGreg Roach "php-coveralls/php-coveralls": "*" 68db7d25eeSGreg Roach }, 69db6a3ae9SGreg Roach "scripts": { 703d9f187dSGreg Roach "webtrees:build": [ 7136eae03fSGreg Roach "@composer webtrees:mo", 72bcfab406SGreg Roach "git checkout language/en-US.mo", 73f872a3beSGreg Roach "rm -Rf webtrees/", 74f872a3beSGreg Roach "git archive --prefix=webtrees/ HEAD --format=tar | tar -x", 75bcfab406SGreg Roach "cp language/*.mo webtrees/language/", 76bcfab406SGreg Roach "zip --quiet --recurse-paths --move -9 webtrees.zip webtrees" 77f872a3beSGreg Roach ], 783d9f187dSGreg Roach "webtrees:check": [ 79425578caSGreg Roach "### PHP-CODE-ANALYZER", 80e70f282eSGreg Roach "phpca --since-version=7.1 app/", 81425578caSGreg Roach "### PHP-CODE-FIXER", 82425578caSGreg Roach "phpcf app/", 83c58d56c4SGreg Roach "### PAHOUT", 84e70f282eSGreg Roach "pahout --php-version 7.1.3 --ignore-paths=data .", 85771ae10aSGreg Roach "### PHP-PARALLEL-LINT", 86771ae10aSGreg Roach "parallel-lint --no-progress --exclude vendor .", 874686330aSGreg Roach "### PHP-CODE-SNIFFER", 88c00af032SGreg Roach "phpcs --standard=PSR12 -s --exclude=Generic.Files.LineLength,PSR2.ControlStructures.ControlStructureSpacing app routes", 89425578caSGreg Roach "### PHAN", 9003bd29eaSGreg Roach "PHAN_DISABLE_XDEBUG_WARN=1 phan --target-php-version=7.1 --progress-bar --directory . --exclude-directory-list data,resources,routes,tests,vendor", 91771ae10aSGreg Roach "### PHPSTAN", 9208198125SGreg Roach "phpstan --level=7 analyze index.php app", 93425578caSGreg Roach "### PSALM", 9403bd29eaSGreg Roach "psalm" 95425578caSGreg Roach ], 963d9f187dSGreg Roach "webtrees:tools": [ 97c58d56c4SGreg Roach "### PAHOUT", 98c58d56c4SGreg Roach "@composer global require wata727/pahout=*", 99425578caSGreg Roach "### PHAN", 100425578caSGreg Roach "@composer global require phan/phan=*", 101425578caSGreg Roach "### PHP-CODE-ANALYZER", 102425578caSGreg Roach "@composer global require wapmorgan/php-code-analyzer=*", 103425578caSGreg Roach "### PHP-CODE-FIXER", 104425578caSGreg Roach "@composer global require wapmorgan/php-code-fixer=*", 105425578caSGreg Roach "### PHP-PARALLEL-LINT", 106425578caSGreg Roach "@composer global require jakub-onderka/php-parallel-lint=*", 107425578caSGreg Roach "### PSALM", 108425578caSGreg Roach "@composer global require vimeo/psalm=*" 109425578caSGreg Roach ], 1103d9f187dSGreg Roach "webtrees:mo": [ 111869661cfSGreg Roach "for FILE in language/*.po; do msgfmt --output=$(dirname $FILE)/$(basename $FILE .po).mo $FILE; done", 112db6a3ae9SGreg Roach "rm -Rf data/cache/language*" 113cb14bb54SGreg Roach ], 1143d9f187dSGreg Roach "webtrees:po": [ 115cb14bb54SGreg Roach "sed -i.bak -e 's/\\(I18N::[^)]*[)]\\)/<?php echo \\1; ?>/g' modules*/*/*.xml", 116cb14bb54SGreg Roach "git grep -I --name-only --fixed-strings -e I18N:: -- '*.php' '*.xml' | xargs xgettext --package-name=webtrees --package-version=1.0 --msgid-bugs-address=i18n@webtrees.net --output=language/webtrees.pot --no-wrap --language=PHP --add-comments=I18N --from-code=utf-8 --keyword --keyword=translate:1 --keyword=translateContext:1c,2 --keyword=plural:1,2", 117cb14bb54SGreg Roach "find modules*/ -name '*.xml' -exec mv {}.bak {} \\;", 118cb14bb54SGreg Roach "find language -name '*.po' -exec msgmerge --no-wrap --sort-output --no-fuzzy-matching --quiet --output={} {} language/webtrees.pot \\;" 119db6a3ae9SGreg Roach ] 120db6a3ae9SGreg Roach }, 121cb14bb54SGreg Roach "scripts-descriptions": { 1223d9f187dSGreg Roach "webtrees:build": "Create a distribution file (webtrees.zip)", 1233d9f187dSGreg Roach "webtrees:check": "Run various static analysis tools", 1243d9f187dSGreg Roach "webtrees:mo": "Compile the language files (*.mo)", 1253d9f187dSGreg Roach "webtrees:po": "Update the language (webtrees.pot, *.po)", 1263d9f187dSGreg Roach "webtrees:tools": "Install the tools needed to run webtrees-check" 127ed285daaSGreg Roach } 128ed285daaSGreg Roach} 129