diff --git a/vendor/aliyuncs/oss-sdk-php/build-phar.sh b/vendor/aliyuncs/oss-sdk-php/build-phar.sh old mode 100755 new mode 100644 diff --git a/vendor/autoload.php b/vendor/autoload.php index 90f0880f8..b43db8758 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInitb638b5638d156ef1335e2a3a226be4ad::getLoader(); +return ComposerAutoloaderInite11d5d0f579f9ff8739edc30bb4f8f32::getLoader(); diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index a750b2486..1d267a20c 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -101,13 +101,11 @@ return array( 'Qiniu\\Storage\\ResumeUploader' => $vendorDir . '/qiniu/php-sdk/src/Qiniu/Storage/ResumeUploader.php', 'Qiniu\\Storage\\UploadManager' => $vendorDir . '/qiniu/php-sdk/src/Qiniu/Storage/UploadManager.php', 'Qiniu\\Zone' => $vendorDir . '/qiniu/php-sdk/src/Qiniu/Zone.php', - 'Symfony\\Component\\OptionsResolver\\Debug\\OptionsResolverIntrospector' => $vendorDir . '/symfony/options-resolver/Debug/OptionsResolverIntrospector.php', 'Symfony\\Component\\OptionsResolver\\Exception\\AccessException' => $vendorDir . '/symfony/options-resolver/Exception/AccessException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\ExceptionInterface' => $vendorDir . '/symfony/options-resolver/Exception/ExceptionInterface.php', 'Symfony\\Component\\OptionsResolver\\Exception\\InvalidArgumentException' => $vendorDir . '/symfony/options-resolver/Exception/InvalidArgumentException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException' => $vendorDir . '/symfony/options-resolver/Exception/InvalidOptionsException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException' => $vendorDir . '/symfony/options-resolver/Exception/MissingOptionsException.php', - 'Symfony\\Component\\OptionsResolver\\Exception\\NoConfigurationException' => $vendorDir . '/symfony/options-resolver/Exception/NoConfigurationException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\NoSuchOptionException' => $vendorDir . '/symfony/options-resolver/Exception/NoSuchOptionException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\OptionDefinitionException' => $vendorDir . '/symfony/options-resolver/Exception/OptionDefinitionException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\UndefinedOptionsException' => $vendorDir . '/symfony/options-resolver/Exception/UndefinedOptionsException.php', diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index 0e9b94c3f..4aed4751e 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInitb638b5638d156ef1335e2a3a226be4ad +class ComposerAutoloaderInite11d5d0f579f9ff8739edc30bb4f8f32 { private static $loader; @@ -19,15 +19,15 @@ class ComposerAutoloaderInitb638b5638d156ef1335e2a3a226be4ad return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInitb638b5638d156ef1335e2a3a226be4ad', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInite11d5d0f579f9ff8739edc30bb4f8f32', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInitb638b5638d156ef1335e2a3a226be4ad', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInite11d5d0f579f9ff8739edc30bb4f8f32', 'loadClassLoader')); $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); if ($useStaticLoader) { require_once __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInite11d5d0f579f9ff8739edc30bb4f8f32::getInitializer($loader)); } else { $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -48,19 +48,19 @@ class ComposerAutoloaderInitb638b5638d156ef1335e2a3a226be4ad $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad::$files; + $includeFiles = Composer\Autoload\ComposerStaticInite11d5d0f579f9ff8739edc30bb4f8f32::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequireb638b5638d156ef1335e2a3a226be4ad($fileIdentifier, $file); + composerRequiree11d5d0f579f9ff8739edc30bb4f8f32($fileIdentifier, $file); } return $loader; } } -function composerRequireb638b5638d156ef1335e2a3a226be4ad($fileIdentifier, $file) +function composerRequiree11d5d0f579f9ff8739edc30bb4f8f32($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { require $file; diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 02cf3f224..3e32647b7 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad +class ComposerStaticInite11d5d0f579f9ff8739edc30bb4f8f32 { public static $files = array ( '1cfd2761b63b0a29ed23657ea394cb2d' => __DIR__ . '/..' . '/topthink/think-captcha/src/helper.php', @@ -179,13 +179,11 @@ class ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad 'Qiniu\\Storage\\ResumeUploader' => __DIR__ . '/..' . '/qiniu/php-sdk/src/Qiniu/Storage/ResumeUploader.php', 'Qiniu\\Storage\\UploadManager' => __DIR__ . '/..' . '/qiniu/php-sdk/src/Qiniu/Storage/UploadManager.php', 'Qiniu\\Zone' => __DIR__ . '/..' . '/qiniu/php-sdk/src/Qiniu/Zone.php', - 'Symfony\\Component\\OptionsResolver\\Debug\\OptionsResolverIntrospector' => __DIR__ . '/..' . '/symfony/options-resolver/Debug/OptionsResolverIntrospector.php', 'Symfony\\Component\\OptionsResolver\\Exception\\AccessException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/AccessException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\ExceptionInterface' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/ExceptionInterface.php', 'Symfony\\Component\\OptionsResolver\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/InvalidArgumentException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/InvalidOptionsException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/MissingOptionsException.php', - 'Symfony\\Component\\OptionsResolver\\Exception\\NoConfigurationException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/NoConfigurationException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\NoSuchOptionException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/NoSuchOptionException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\OptionDefinitionException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/OptionDefinitionException.php', 'Symfony\\Component\\OptionsResolver\\Exception\\UndefinedOptionsException' => __DIR__ . '/..' . '/symfony/options-resolver/Exception/UndefinedOptionsException.php', @@ -258,9 +256,9 @@ class ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInitb638b5638d156ef1335e2a3a226be4ad::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInite11d5d0f579f9ff8739edc30bb4f8f32::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInite11d5d0f579f9ff8739edc30bb4f8f32::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInite11d5d0f579f9ff8739edc30bb4f8f32::$classMap; }, null, ClassLoader::class); } diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index 3b331147b..15e38b73b 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -269,27 +269,27 @@ }, { "name": "symfony/options-resolver", - "version": "v3.4.8", - "version_normalized": "3.4.8.0", + "version": "v3.3.6", + "version_normalized": "3.3.6.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "f3109a6aedd20e35c3a33190e932c2b063b7b50e" + "reference": "ff48982d295bcac1fd861f934f041ebc73ae40f0" }, "dist": { "type": "zip", - "url": "https://files.phpcomposer.com/files/symfony/options-resolver/f3109a6aedd20e35c3a33190e932c2b063b7b50e.zip", - "reference": "f3109a6aedd20e35c3a33190e932c2b063b7b50e", + "url": "https://files.phpcomposer.com/files/symfony/options-resolver/ff48982d295bcac1fd861f934f041ebc73ae40f0.zip", + "reference": "ff48982d295bcac1fd861f934f041ebc73ae40f0", "shasum": "" }, "require": { - "php": "^5.5.9|>=7.0.8" + "php": ">=5.5.9" }, - "time": "2018-01-11T07:56:07+00:00", + "time": "2017-04-12T14:14:56+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "3.4-dev" + "dev-master": "3.3-dev" } }, "installation-source": "dist", diff --git a/vendor/endroid/qr-code/.travis.yml b/vendor/endroid/qr-code/.travis.yml index 9233d9aa1..de30ea6f7 100644 --- a/vendor/endroid/qr-code/.travis.yml +++ b/vendor/endroid/qr-code/.travis.yml @@ -1,21 +1,21 @@ -language: php - -php: - - 5.4 - - 5.5 - - 5.6 - - 7.0 - - 7.1 - - hhvm - -matrix: - fast_finish: true - -before_install: - - if [[ "$TRAVIS_PHP_VERSION" != "hhvm" ]]; then phpenv config-rm xdebug.ini; fi; - - composer self-update && composer install --no-interaction - -script: bin/phpunit - -notifications: - email: info@endroid.nl +language: php + +php: + - 5.4 + - 5.5 + - 5.6 + - 7.0 + - 7.1 + - hhvm + +matrix: + fast_finish: true + +before_install: + - if [[ "$TRAVIS_PHP_VERSION" != "hhvm" ]]; then phpenv config-rm xdebug.ini; fi; + - composer self-update && composer install --no-interaction + +script: bin/phpunit + +notifications: + email: info@endroid.nl diff --git a/vendor/endroid/qr-code/README.md b/vendor/endroid/qr-code/README.md index c4fcf39a7..2c51a989f 100644 --- a/vendor/endroid/qr-code/README.md +++ b/vendor/endroid/qr-code/README.md @@ -1,132 +1,132 @@ -QR Code -======= - -*By [endroid](http://endroid.nl/)* - -[![Latest Stable Version](http://img.shields.io/packagist/v/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) -[![Build Status](http://img.shields.io/travis/endroid/QrCode.svg)](http://travis-ci.org/endroid/QrCode) -[![Total Downloads](http://img.shields.io/packagist/dt/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) -[![Monthly Downloads](http://img.shields.io/packagist/dm/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) -[![License](http://img.shields.io/packagist/l/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) - -This library based on QRcode Perl CGI & PHP scripts by Y. Swetake helps you generate images containing a QR code. - -## Installation - -Use [Composer](https://getcomposer.org/) to install the library. - -``` bash -$ composer require endroid/qrcode -``` - -## Usage - -```php -use Endroid\QrCode\QrCode; - -$qrCode = new QrCode(); -$qrCode - ->setText('Life is too short to be generating QR codes') - ->setSize(300) - ->setPadding(10) - ->setErrorCorrection('high') - ->setForegroundColor(['r' => 0, 'g' => 0, 'b' => 0, 'a' => 0]) - ->setBackgroundColor(['r' => 255, 'g' => 255, 'b' => 255, 'a' => 0]) - ->setLabel('Scan the code') - ->setLabelFontSize(16) - ->setImageType(QrCode::IMAGE_TYPE_PNG) -; - -// now we can directly output the qrcode -header('Content-Type: '.$qrCode->getContentType()); -$qrCode->render(); - -// save it to a file -$qrCode->save('qrcode.png'); - -// or create a response object -$response = new Response($qrCode->get(), 200, ['Content-Type' => $qrCode->getContentType()]); -``` - -![QR Code](http://endroid.nl/qrcode/Life%20is%20too%20short%20to%20be%20generating%20QR%20codes.png?label=Scan%20the%20code) - -## Symfony integration - -Register the Symfony bundle in the kernel. - -```php -// app/AppKernel.php - -public function registerBundles() -{ - $bundles = [ - // ... - new Endroid\QrCode\Bundle\EndroidQrCodeBundle(), - ]; -} -``` - -The default parameters can be overridden via the configuration. -Alpha channel available range is [0, 127] in foreground and background colors. - -```yaml -endroid_qr_code: - size: 100 - padding: 10 - extension: gif - error_correction_level: high - foreground_color: { r: 0, g: 0, b: 0, a: 0 } - background_color: { r: 255, g: 255, b: 255, a: 0 } - label: 'My label' - label_font_size: 16 -``` - -Now you can retrieve the factory as follows. - -```php -$factory = $this->get('endroid.qrcode.factory'); -$factory->createQrCode(); -``` - -Add the following section to your routing to be able to handle QR code URLs. -This step can be skipped when you only use data URIs to display your images. - -``` yml -EndroidQrCodeBundle: - resource: "@EndroidQrCodeBundle/Controller/" - type: annotation - prefix: /qrcode -``` - -After installation and configuration, QR codes can be generated by appending -the QR code text to the url as mounted, followed by .png, .jpg or .gif. - -## Twig extension - -The bundle also provides a Twig extension for quickly generating QR code urls. -Optional parameters are extension, size, padding and errorCorrectionLevel. When -a parameter is omitted, the value in the bundle configuration is used. - -``` twig - - - -``` - -You can also use the data URI helper to embed the QR code within your HTML -instead of requiring a separate HTTP request to load your image. - -``` twig - -``` - -## Versioning - -Version numbers follow the MAJOR.MINOR.PATCH scheme. Backwards compatibility -breaking changes will be kept to a minimum but be aware that these can occur. -Lock your dependencies for production and test your code when upgrading. - -## License - -This bundle is under the MIT license. For the full copyright and license -information please view the LICENSE file that was distributed with this source code. +QR Code +======= + +*By [endroid](http://endroid.nl/)* + +[![Latest Stable Version](http://img.shields.io/packagist/v/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) +[![Build Status](http://img.shields.io/travis/endroid/QrCode.svg)](http://travis-ci.org/endroid/QrCode) +[![Total Downloads](http://img.shields.io/packagist/dt/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) +[![Monthly Downloads](http://img.shields.io/packagist/dm/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) +[![License](http://img.shields.io/packagist/l/endroid/qrcode.svg)](https://packagist.org/packages/endroid/qrcode) + +This library based on QRcode Perl CGI & PHP scripts by Y. Swetake helps you generate images containing a QR code. + +## Installation + +Use [Composer](https://getcomposer.org/) to install the library. + +``` bash +$ composer require endroid/qrcode +``` + +## Usage + +```php +use Endroid\QrCode\QrCode; + +$qrCode = new QrCode(); +$qrCode + ->setText('Life is too short to be generating QR codes') + ->setSize(300) + ->setPadding(10) + ->setErrorCorrection('high') + ->setForegroundColor(['r' => 0, 'g' => 0, 'b' => 0, 'a' => 0]) + ->setBackgroundColor(['r' => 255, 'g' => 255, 'b' => 255, 'a' => 0]) + ->setLabel('Scan the code') + ->setLabelFontSize(16) + ->setImageType(QrCode::IMAGE_TYPE_PNG) +; + +// now we can directly output the qrcode +header('Content-Type: '.$qrCode->getContentType()); +$qrCode->render(); + +// save it to a file +$qrCode->save('qrcode.png'); + +// or create a response object +$response = new Response($qrCode->get(), 200, ['Content-Type' => $qrCode->getContentType()]); +``` + +![QR Code](http://endroid.nl/qrcode/Life%20is%20too%20short%20to%20be%20generating%20QR%20codes.png?label=Scan%20the%20code) + +## Symfony integration + +Register the Symfony bundle in the kernel. + +```php +// app/AppKernel.php + +public function registerBundles() +{ + $bundles = [ + // ... + new Endroid\QrCode\Bundle\EndroidQrCodeBundle(), + ]; +} +``` + +The default parameters can be overridden via the configuration. +Alpha channel available range is [0, 127] in foreground and background colors. + +```yaml +endroid_qr_code: + size: 100 + padding: 10 + extension: gif + error_correction_level: high + foreground_color: { r: 0, g: 0, b: 0, a: 0 } + background_color: { r: 255, g: 255, b: 255, a: 0 } + label: 'My label' + label_font_size: 16 +``` + +Now you can retrieve the factory as follows. + +```php +$factory = $this->get('endroid.qrcode.factory'); +$factory->createQrCode(); +``` + +Add the following section to your routing to be able to handle QR code URLs. +This step can be skipped when you only use data URIs to display your images. + +``` yml +EndroidQrCodeBundle: + resource: "@EndroidQrCodeBundle/Controller/" + type: annotation + prefix: /qrcode +``` + +After installation and configuration, QR codes can be generated by appending +the QR code text to the url as mounted, followed by .png, .jpg or .gif. + +## Twig extension + +The bundle also provides a Twig extension for quickly generating QR code urls. +Optional parameters are extension, size, padding and errorCorrectionLevel. When +a parameter is omitted, the value in the bundle configuration is used. + +``` twig + + + +``` + +You can also use the data URI helper to embed the QR code within your HTML +instead of requiring a separate HTTP request to load your image. + +``` twig + +``` + +## Versioning + +Version numbers follow the MAJOR.MINOR.PATCH scheme. Backwards compatibility +breaking changes will be kept to a minimum but be aware that these can occur. +Lock your dependencies for production and test your code when upgrading. + +## License + +This bundle is under the MIT license. For the full copyright and license +information please view the LICENSE file that was distributed with this source code. diff --git a/vendor/endroid/qr-code/assets/data/qrv10_0.dat b/vendor/endroid/qr-code/assets/data/qrv10_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv10_1.dat b/vendor/endroid/qr-code/assets/data/qrv10_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv10_2.dat b/vendor/endroid/qr-code/assets/data/qrv10_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv10_3.dat b/vendor/endroid/qr-code/assets/data/qrv10_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv11_0.dat b/vendor/endroid/qr-code/assets/data/qrv11_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv11_1.dat b/vendor/endroid/qr-code/assets/data/qrv11_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv11_2.dat b/vendor/endroid/qr-code/assets/data/qrv11_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv11_3.dat b/vendor/endroid/qr-code/assets/data/qrv11_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv12_0.dat b/vendor/endroid/qr-code/assets/data/qrv12_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv12_1.dat b/vendor/endroid/qr-code/assets/data/qrv12_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv12_2.dat b/vendor/endroid/qr-code/assets/data/qrv12_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv12_3.dat b/vendor/endroid/qr-code/assets/data/qrv12_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv13_0.dat b/vendor/endroid/qr-code/assets/data/qrv13_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv13_1.dat b/vendor/endroid/qr-code/assets/data/qrv13_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv13_2.dat b/vendor/endroid/qr-code/assets/data/qrv13_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv13_3.dat b/vendor/endroid/qr-code/assets/data/qrv13_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv14_0.dat b/vendor/endroid/qr-code/assets/data/qrv14_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv14_1.dat b/vendor/endroid/qr-code/assets/data/qrv14_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv14_2.dat b/vendor/endroid/qr-code/assets/data/qrv14_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv14_3.dat b/vendor/endroid/qr-code/assets/data/qrv14_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv15_0.dat b/vendor/endroid/qr-code/assets/data/qrv15_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv15_1.dat b/vendor/endroid/qr-code/assets/data/qrv15_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv15_2.dat b/vendor/endroid/qr-code/assets/data/qrv15_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv15_3.dat b/vendor/endroid/qr-code/assets/data/qrv15_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv16_0.dat b/vendor/endroid/qr-code/assets/data/qrv16_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv16_1.dat b/vendor/endroid/qr-code/assets/data/qrv16_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv16_2.dat b/vendor/endroid/qr-code/assets/data/qrv16_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv16_3.dat b/vendor/endroid/qr-code/assets/data/qrv16_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv17_0.dat b/vendor/endroid/qr-code/assets/data/qrv17_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv17_1.dat b/vendor/endroid/qr-code/assets/data/qrv17_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv17_2.dat b/vendor/endroid/qr-code/assets/data/qrv17_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv17_3.dat b/vendor/endroid/qr-code/assets/data/qrv17_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv18_0.dat b/vendor/endroid/qr-code/assets/data/qrv18_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv18_1.dat b/vendor/endroid/qr-code/assets/data/qrv18_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv18_2.dat b/vendor/endroid/qr-code/assets/data/qrv18_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv18_3.dat b/vendor/endroid/qr-code/assets/data/qrv18_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv19_0.dat b/vendor/endroid/qr-code/assets/data/qrv19_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv19_1.dat b/vendor/endroid/qr-code/assets/data/qrv19_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv19_2.dat b/vendor/endroid/qr-code/assets/data/qrv19_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv19_3.dat b/vendor/endroid/qr-code/assets/data/qrv19_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv1_0.dat b/vendor/endroid/qr-code/assets/data/qrv1_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv1_1.dat b/vendor/endroid/qr-code/assets/data/qrv1_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv1_2.dat b/vendor/endroid/qr-code/assets/data/qrv1_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv1_3.dat b/vendor/endroid/qr-code/assets/data/qrv1_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv20_0.dat b/vendor/endroid/qr-code/assets/data/qrv20_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv20_1.dat b/vendor/endroid/qr-code/assets/data/qrv20_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv20_2.dat b/vendor/endroid/qr-code/assets/data/qrv20_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv20_3.dat b/vendor/endroid/qr-code/assets/data/qrv20_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv21_0.dat b/vendor/endroid/qr-code/assets/data/qrv21_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv21_1.dat b/vendor/endroid/qr-code/assets/data/qrv21_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv21_2.dat b/vendor/endroid/qr-code/assets/data/qrv21_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv21_3.dat b/vendor/endroid/qr-code/assets/data/qrv21_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv22_0.dat b/vendor/endroid/qr-code/assets/data/qrv22_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv22_1.dat b/vendor/endroid/qr-code/assets/data/qrv22_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv22_2.dat b/vendor/endroid/qr-code/assets/data/qrv22_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv22_3.dat b/vendor/endroid/qr-code/assets/data/qrv22_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv23_0.dat b/vendor/endroid/qr-code/assets/data/qrv23_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv23_1.dat b/vendor/endroid/qr-code/assets/data/qrv23_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv23_2.dat b/vendor/endroid/qr-code/assets/data/qrv23_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv23_3.dat b/vendor/endroid/qr-code/assets/data/qrv23_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv24_0.dat b/vendor/endroid/qr-code/assets/data/qrv24_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv24_1.dat b/vendor/endroid/qr-code/assets/data/qrv24_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv24_2.dat b/vendor/endroid/qr-code/assets/data/qrv24_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv24_3.dat b/vendor/endroid/qr-code/assets/data/qrv24_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv25_0.dat b/vendor/endroid/qr-code/assets/data/qrv25_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv25_1.dat b/vendor/endroid/qr-code/assets/data/qrv25_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv25_2.dat b/vendor/endroid/qr-code/assets/data/qrv25_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv25_3.dat b/vendor/endroid/qr-code/assets/data/qrv25_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv26_0.dat b/vendor/endroid/qr-code/assets/data/qrv26_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv26_1.dat b/vendor/endroid/qr-code/assets/data/qrv26_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv26_2.dat b/vendor/endroid/qr-code/assets/data/qrv26_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv26_3.dat b/vendor/endroid/qr-code/assets/data/qrv26_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv27_0.dat b/vendor/endroid/qr-code/assets/data/qrv27_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv27_1.dat b/vendor/endroid/qr-code/assets/data/qrv27_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv27_2.dat b/vendor/endroid/qr-code/assets/data/qrv27_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv27_3.dat b/vendor/endroid/qr-code/assets/data/qrv27_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv28_0.dat b/vendor/endroid/qr-code/assets/data/qrv28_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv28_1.dat b/vendor/endroid/qr-code/assets/data/qrv28_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv28_2.dat b/vendor/endroid/qr-code/assets/data/qrv28_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv28_3.dat b/vendor/endroid/qr-code/assets/data/qrv28_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv29_0.dat b/vendor/endroid/qr-code/assets/data/qrv29_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv29_1.dat b/vendor/endroid/qr-code/assets/data/qrv29_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv29_2.dat b/vendor/endroid/qr-code/assets/data/qrv29_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv29_3.dat b/vendor/endroid/qr-code/assets/data/qrv29_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv2_0.dat b/vendor/endroid/qr-code/assets/data/qrv2_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv2_1.dat b/vendor/endroid/qr-code/assets/data/qrv2_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv2_2.dat b/vendor/endroid/qr-code/assets/data/qrv2_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv2_3.dat b/vendor/endroid/qr-code/assets/data/qrv2_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv30_0.dat b/vendor/endroid/qr-code/assets/data/qrv30_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv30_1.dat b/vendor/endroid/qr-code/assets/data/qrv30_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv30_2.dat b/vendor/endroid/qr-code/assets/data/qrv30_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv30_3.dat b/vendor/endroid/qr-code/assets/data/qrv30_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv31_0.dat b/vendor/endroid/qr-code/assets/data/qrv31_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv31_1.dat b/vendor/endroid/qr-code/assets/data/qrv31_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv31_2.dat b/vendor/endroid/qr-code/assets/data/qrv31_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv31_3.dat b/vendor/endroid/qr-code/assets/data/qrv31_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv32_0.dat b/vendor/endroid/qr-code/assets/data/qrv32_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv32_1.dat b/vendor/endroid/qr-code/assets/data/qrv32_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv32_2.dat b/vendor/endroid/qr-code/assets/data/qrv32_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv32_3.dat b/vendor/endroid/qr-code/assets/data/qrv32_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv33_0.dat b/vendor/endroid/qr-code/assets/data/qrv33_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv33_1.dat b/vendor/endroid/qr-code/assets/data/qrv33_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv33_2.dat b/vendor/endroid/qr-code/assets/data/qrv33_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv33_3.dat b/vendor/endroid/qr-code/assets/data/qrv33_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv34_0.dat b/vendor/endroid/qr-code/assets/data/qrv34_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv34_1.dat b/vendor/endroid/qr-code/assets/data/qrv34_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv34_2.dat b/vendor/endroid/qr-code/assets/data/qrv34_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv34_3.dat b/vendor/endroid/qr-code/assets/data/qrv34_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv35_0.dat b/vendor/endroid/qr-code/assets/data/qrv35_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv35_1.dat b/vendor/endroid/qr-code/assets/data/qrv35_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv35_2.dat b/vendor/endroid/qr-code/assets/data/qrv35_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv35_3.dat b/vendor/endroid/qr-code/assets/data/qrv35_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv36_0.dat b/vendor/endroid/qr-code/assets/data/qrv36_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv36_1.dat b/vendor/endroid/qr-code/assets/data/qrv36_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv36_2.dat b/vendor/endroid/qr-code/assets/data/qrv36_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv36_3.dat b/vendor/endroid/qr-code/assets/data/qrv36_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv37_0.dat b/vendor/endroid/qr-code/assets/data/qrv37_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv37_1.dat b/vendor/endroid/qr-code/assets/data/qrv37_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv37_2.dat b/vendor/endroid/qr-code/assets/data/qrv37_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv37_3.dat b/vendor/endroid/qr-code/assets/data/qrv37_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv38_0.dat b/vendor/endroid/qr-code/assets/data/qrv38_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv38_1.dat b/vendor/endroid/qr-code/assets/data/qrv38_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv38_2.dat b/vendor/endroid/qr-code/assets/data/qrv38_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv38_3.dat b/vendor/endroid/qr-code/assets/data/qrv38_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv39_0.dat b/vendor/endroid/qr-code/assets/data/qrv39_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv39_1.dat b/vendor/endroid/qr-code/assets/data/qrv39_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv39_2.dat b/vendor/endroid/qr-code/assets/data/qrv39_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv39_3.dat b/vendor/endroid/qr-code/assets/data/qrv39_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv3_0.dat b/vendor/endroid/qr-code/assets/data/qrv3_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv3_1.dat b/vendor/endroid/qr-code/assets/data/qrv3_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv3_2.dat b/vendor/endroid/qr-code/assets/data/qrv3_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv3_3.dat b/vendor/endroid/qr-code/assets/data/qrv3_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv40_0.dat b/vendor/endroid/qr-code/assets/data/qrv40_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv40_1.dat b/vendor/endroid/qr-code/assets/data/qrv40_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv40_2.dat b/vendor/endroid/qr-code/assets/data/qrv40_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv40_3.dat b/vendor/endroid/qr-code/assets/data/qrv40_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv4_0.dat b/vendor/endroid/qr-code/assets/data/qrv4_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv4_1.dat b/vendor/endroid/qr-code/assets/data/qrv4_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv4_2.dat b/vendor/endroid/qr-code/assets/data/qrv4_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv4_3.dat b/vendor/endroid/qr-code/assets/data/qrv4_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv5_0.dat b/vendor/endroid/qr-code/assets/data/qrv5_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv5_1.dat b/vendor/endroid/qr-code/assets/data/qrv5_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv5_2.dat b/vendor/endroid/qr-code/assets/data/qrv5_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv5_3.dat b/vendor/endroid/qr-code/assets/data/qrv5_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv6_0.dat b/vendor/endroid/qr-code/assets/data/qrv6_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv6_1.dat b/vendor/endroid/qr-code/assets/data/qrv6_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv6_2.dat b/vendor/endroid/qr-code/assets/data/qrv6_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv6_3.dat b/vendor/endroid/qr-code/assets/data/qrv6_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv7_0.dat b/vendor/endroid/qr-code/assets/data/qrv7_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv7_1.dat b/vendor/endroid/qr-code/assets/data/qrv7_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv7_2.dat b/vendor/endroid/qr-code/assets/data/qrv7_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv7_3.dat b/vendor/endroid/qr-code/assets/data/qrv7_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv8_0.dat b/vendor/endroid/qr-code/assets/data/qrv8_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv8_1.dat b/vendor/endroid/qr-code/assets/data/qrv8_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv8_2.dat b/vendor/endroid/qr-code/assets/data/qrv8_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv8_3.dat b/vendor/endroid/qr-code/assets/data/qrv8_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv9_0.dat b/vendor/endroid/qr-code/assets/data/qrv9_0.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv9_1.dat b/vendor/endroid/qr-code/assets/data/qrv9_1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv9_2.dat b/vendor/endroid/qr-code/assets/data/qrv9_2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrv9_3.dat b/vendor/endroid/qr-code/assets/data/qrv9_3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr1.dat b/vendor/endroid/qr-code/assets/data/qrvfr1.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr10.dat b/vendor/endroid/qr-code/assets/data/qrvfr10.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr11.dat b/vendor/endroid/qr-code/assets/data/qrvfr11.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr12.dat b/vendor/endroid/qr-code/assets/data/qrvfr12.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr13.dat b/vendor/endroid/qr-code/assets/data/qrvfr13.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr14.dat b/vendor/endroid/qr-code/assets/data/qrvfr14.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr15.dat b/vendor/endroid/qr-code/assets/data/qrvfr15.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr16.dat b/vendor/endroid/qr-code/assets/data/qrvfr16.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr17.dat b/vendor/endroid/qr-code/assets/data/qrvfr17.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr18.dat b/vendor/endroid/qr-code/assets/data/qrvfr18.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr19.dat b/vendor/endroid/qr-code/assets/data/qrvfr19.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr2.dat b/vendor/endroid/qr-code/assets/data/qrvfr2.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr20.dat b/vendor/endroid/qr-code/assets/data/qrvfr20.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr21.dat b/vendor/endroid/qr-code/assets/data/qrvfr21.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr22.dat b/vendor/endroid/qr-code/assets/data/qrvfr22.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr23.dat b/vendor/endroid/qr-code/assets/data/qrvfr23.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr24.dat b/vendor/endroid/qr-code/assets/data/qrvfr24.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr25.dat b/vendor/endroid/qr-code/assets/data/qrvfr25.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr26.dat b/vendor/endroid/qr-code/assets/data/qrvfr26.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr27.dat b/vendor/endroid/qr-code/assets/data/qrvfr27.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr28.dat b/vendor/endroid/qr-code/assets/data/qrvfr28.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr29.dat b/vendor/endroid/qr-code/assets/data/qrvfr29.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr3.dat b/vendor/endroid/qr-code/assets/data/qrvfr3.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr30.dat b/vendor/endroid/qr-code/assets/data/qrvfr30.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr31.dat b/vendor/endroid/qr-code/assets/data/qrvfr31.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr32.dat b/vendor/endroid/qr-code/assets/data/qrvfr32.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr33.dat b/vendor/endroid/qr-code/assets/data/qrvfr33.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr34.dat b/vendor/endroid/qr-code/assets/data/qrvfr34.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr35.dat b/vendor/endroid/qr-code/assets/data/qrvfr35.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr36.dat b/vendor/endroid/qr-code/assets/data/qrvfr36.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr37.dat b/vendor/endroid/qr-code/assets/data/qrvfr37.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr38.dat b/vendor/endroid/qr-code/assets/data/qrvfr38.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr39.dat b/vendor/endroid/qr-code/assets/data/qrvfr39.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr4.dat b/vendor/endroid/qr-code/assets/data/qrvfr4.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr40.dat b/vendor/endroid/qr-code/assets/data/qrvfr40.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr5.dat b/vendor/endroid/qr-code/assets/data/qrvfr5.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr6.dat b/vendor/endroid/qr-code/assets/data/qrvfr6.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr7.dat b/vendor/endroid/qr-code/assets/data/qrvfr7.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr8.dat b/vendor/endroid/qr-code/assets/data/qrvfr8.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/qrvfr9.dat b/vendor/endroid/qr-code/assets/data/qrvfr9.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc10.dat b/vendor/endroid/qr-code/assets/data/rsc10.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc13.dat b/vendor/endroid/qr-code/assets/data/rsc13.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc15.dat b/vendor/endroid/qr-code/assets/data/rsc15.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc16.dat b/vendor/endroid/qr-code/assets/data/rsc16.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc17.dat b/vendor/endroid/qr-code/assets/data/rsc17.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc18.dat b/vendor/endroid/qr-code/assets/data/rsc18.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc20.dat b/vendor/endroid/qr-code/assets/data/rsc20.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc22.dat b/vendor/endroid/qr-code/assets/data/rsc22.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc24.dat b/vendor/endroid/qr-code/assets/data/rsc24.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc26.dat b/vendor/endroid/qr-code/assets/data/rsc26.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc28.dat b/vendor/endroid/qr-code/assets/data/rsc28.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc30.dat b/vendor/endroid/qr-code/assets/data/rsc30.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc32.dat b/vendor/endroid/qr-code/assets/data/rsc32.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc34.dat b/vendor/endroid/qr-code/assets/data/rsc34.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc36.dat b/vendor/endroid/qr-code/assets/data/rsc36.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc40.dat b/vendor/endroid/qr-code/assets/data/rsc40.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc42.dat b/vendor/endroid/qr-code/assets/data/rsc42.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc44.dat b/vendor/endroid/qr-code/assets/data/rsc44.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc46.dat b/vendor/endroid/qr-code/assets/data/rsc46.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc48.dat b/vendor/endroid/qr-code/assets/data/rsc48.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc50.dat b/vendor/endroid/qr-code/assets/data/rsc50.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc52.dat b/vendor/endroid/qr-code/assets/data/rsc52.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc54.dat b/vendor/endroid/qr-code/assets/data/rsc54.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc56.dat b/vendor/endroid/qr-code/assets/data/rsc56.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc58.dat b/vendor/endroid/qr-code/assets/data/rsc58.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc60.dat b/vendor/endroid/qr-code/assets/data/rsc60.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc62.dat b/vendor/endroid/qr-code/assets/data/rsc62.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc64.dat b/vendor/endroid/qr-code/assets/data/rsc64.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc66.dat b/vendor/endroid/qr-code/assets/data/rsc66.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc68.dat b/vendor/endroid/qr-code/assets/data/rsc68.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/data/rsc7.dat b/vendor/endroid/qr-code/assets/data/rsc7.dat old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/font/opensans.ttf b/vendor/endroid/qr-code/assets/font/opensans.ttf old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/b.png b/vendor/endroid/qr-code/assets/image/b.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/d.png b/vendor/endroid/qr-code/assets/image/d.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/logo.png b/vendor/endroid/qr-code/assets/image/logo.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv1.png b/vendor/endroid/qr-code/assets/image/qrv1.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv10.png b/vendor/endroid/qr-code/assets/image/qrv10.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv11.png b/vendor/endroid/qr-code/assets/image/qrv11.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv12.png b/vendor/endroid/qr-code/assets/image/qrv12.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv13.png b/vendor/endroid/qr-code/assets/image/qrv13.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv14.png b/vendor/endroid/qr-code/assets/image/qrv14.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv15.png b/vendor/endroid/qr-code/assets/image/qrv15.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv16.png b/vendor/endroid/qr-code/assets/image/qrv16.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv17.png b/vendor/endroid/qr-code/assets/image/qrv17.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv18.png b/vendor/endroid/qr-code/assets/image/qrv18.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv19.png b/vendor/endroid/qr-code/assets/image/qrv19.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv2.png b/vendor/endroid/qr-code/assets/image/qrv2.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv20.png b/vendor/endroid/qr-code/assets/image/qrv20.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv21.png b/vendor/endroid/qr-code/assets/image/qrv21.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv22.png b/vendor/endroid/qr-code/assets/image/qrv22.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv23.png b/vendor/endroid/qr-code/assets/image/qrv23.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv24.png b/vendor/endroid/qr-code/assets/image/qrv24.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv25.png b/vendor/endroid/qr-code/assets/image/qrv25.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv26.png b/vendor/endroid/qr-code/assets/image/qrv26.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv27.png b/vendor/endroid/qr-code/assets/image/qrv27.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv28.png b/vendor/endroid/qr-code/assets/image/qrv28.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv29.png b/vendor/endroid/qr-code/assets/image/qrv29.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv3.png b/vendor/endroid/qr-code/assets/image/qrv3.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv30.png b/vendor/endroid/qr-code/assets/image/qrv30.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv31.png b/vendor/endroid/qr-code/assets/image/qrv31.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv32.png b/vendor/endroid/qr-code/assets/image/qrv32.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv33.png b/vendor/endroid/qr-code/assets/image/qrv33.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv34.png b/vendor/endroid/qr-code/assets/image/qrv34.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv35.png b/vendor/endroid/qr-code/assets/image/qrv35.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv36.png b/vendor/endroid/qr-code/assets/image/qrv36.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv37.png b/vendor/endroid/qr-code/assets/image/qrv37.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv38.png b/vendor/endroid/qr-code/assets/image/qrv38.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv39.png b/vendor/endroid/qr-code/assets/image/qrv39.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv4.png b/vendor/endroid/qr-code/assets/image/qrv4.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv40.png b/vendor/endroid/qr-code/assets/image/qrv40.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv5.png b/vendor/endroid/qr-code/assets/image/qrv5.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv6.png b/vendor/endroid/qr-code/assets/image/qrv6.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv7.png b/vendor/endroid/qr-code/assets/image/qrv7.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv8.png b/vendor/endroid/qr-code/assets/image/qrv8.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/assets/image/qrv9.png b/vendor/endroid/qr-code/assets/image/qrv9.png old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/composer.json b/vendor/endroid/qr-code/composer.json old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Bundle/Controller/QrCodeController.php b/vendor/endroid/qr-code/src/Bundle/Controller/QrCodeController.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Bundle/DependencyInjection/Configuration.php b/vendor/endroid/qr-code/src/Bundle/DependencyInjection/Configuration.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Bundle/Resources/config/services.yml b/vendor/endroid/qr-code/src/Bundle/Resources/config/services.yml old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Bundle/Twig/Extension/QrCodeExtension.php b/vendor/endroid/qr-code/src/Bundle/Twig/Extension/QrCodeExtension.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/DataDoesntExistsException.php b/vendor/endroid/qr-code/src/Exceptions/DataDoesntExistsException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/FreeTypeLibraryMissingException.php b/vendor/endroid/qr-code/src/Exceptions/FreeTypeLibraryMissingException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/ImageFunctionFailedException.php b/vendor/endroid/qr-code/src/Exceptions/ImageFunctionFailedException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/ImageFunctionUnknownException.php b/vendor/endroid/qr-code/src/Exceptions/ImageFunctionUnknownException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/ImageSizeTooLargeException.php b/vendor/endroid/qr-code/src/Exceptions/ImageSizeTooLargeException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/ImageTypeInvalidException.php b/vendor/endroid/qr-code/src/Exceptions/ImageTypeInvalidException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/Exceptions/VersionTooLargeException.php b/vendor/endroid/qr-code/src/Exceptions/VersionTooLargeException.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/src/QrCode.php b/vendor/endroid/qr-code/src/QrCode.php old mode 100755 new mode 100644 diff --git a/vendor/endroid/qr-code/tests/QrCodeTest.php b/vendor/endroid/qr-code/tests/QrCodeTest.php old mode 100755 new mode 100644 diff --git a/vendor/qiniu/php-sdk/test-env.sh b/vendor/qiniu/php-sdk/test-env.sh old mode 100755 new mode 100644 diff --git a/vendor/symfony/options-resolver/CHANGELOG.md b/vendor/symfony/options-resolver/CHANGELOG.md index 6e9d49fb6..5f6d15b2c 100644 --- a/vendor/symfony/options-resolver/CHANGELOG.md +++ b/vendor/symfony/options-resolver/CHANGELOG.md @@ -1,12 +1,6 @@ CHANGELOG ========= -3.4.0 ------ - - * added `OptionsResolverIntrospector` to inspect options definitions inside an `OptionsResolver` instance - * added array of types support in allowed types (e.g int[]) - 2.6.0 ----- @@ -31,7 +25,7 @@ CHANGELOG * deprecated OptionsResolver::isKnown() in favor of isDefined() * [BC BREAK] OptionsResolver::isRequired() returns true now if a required option has a default value set - * [BC BREAK] merged Options into OptionsResolver and turned Options into an + * [BC BREAK] merged Options into OptionsResolver and turned Options into an interface * deprecated Options::overload() (now in OptionsResolver) * deprecated Options::set() (now in OptionsResolver) @@ -42,7 +36,7 @@ CHANGELOG lazy option/normalizer closures now * [BC BREAK] removed Traversable interface from Options since using within lazy option/normalizer closures resulted in exceptions - * [BC BREAK] removed Options::all() since using within lazy option/normalizer + * [BC BREAK] removed Options::all() since using within lazy option/normalizer closures resulted in exceptions * [BC BREAK] OptionDefinitionException now extends LogicException instead of RuntimeException diff --git a/vendor/symfony/options-resolver/Debug/OptionsResolverIntrospector.php b/vendor/symfony/options-resolver/Debug/OptionsResolverIntrospector.php deleted file mode 100644 index 60317243e..000000000 --- a/vendor/symfony/options-resolver/Debug/OptionsResolverIntrospector.php +++ /dev/null @@ -1,102 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\OptionsResolver\Debug; - -use Symfony\Component\OptionsResolver\Exception\NoConfigurationException; -use Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException; -use Symfony\Component\OptionsResolver\OptionsResolver; - -/** - * @author Maxime Steinhausser - * - * @final - */ -class OptionsResolverIntrospector -{ - private $get; - - public function __construct(OptionsResolver $optionsResolver) - { - $this->get = \Closure::bind(function ($property, $option, $message) { - /** @var OptionsResolver $this */ - if (!$this->isDefined($option)) { - throw new UndefinedOptionsException(sprintf('The option "%s" does not exist.', $option)); - } - - if (!array_key_exists($option, $this->{$property})) { - throw new NoConfigurationException($message); - } - - return $this->{$property}[$option]; - }, $optionsResolver, $optionsResolver); - } - - /** - * @param string $option - * - * @return mixed - * - * @throws NoConfigurationException on no configured value - */ - public function getDefault($option) - { - return call_user_func($this->get, 'defaults', $option, sprintf('No default value was set for the "%s" option.', $option)); - } - - /** - * @param string $option - * - * @return \Closure[] - * - * @throws NoConfigurationException on no configured closures - */ - public function getLazyClosures($option) - { - return call_user_func($this->get, 'lazy', $option, sprintf('No lazy closures were set for the "%s" option.', $option)); - } - - /** - * @param string $option - * - * @return string[] - * - * @throws NoConfigurationException on no configured types - */ - public function getAllowedTypes($option) - { - return call_user_func($this->get, 'allowedTypes', $option, sprintf('No allowed types were set for the "%s" option.', $option)); - } - - /** - * @param string $option - * - * @return mixed[] - * - * @throws NoConfigurationException on no configured values - */ - public function getAllowedValues($option) - { - return call_user_func($this->get, 'allowedValues', $option, sprintf('No allowed values were set for the "%s" option.', $option)); - } - - /** - * @param string $option - * - * @return \Closure - * - * @throws NoConfigurationException on no configured normalizer - */ - public function getNormalizer($option) - { - return call_user_func($this->get, 'normalizers', $option, sprintf('No normalizer was set for the "%s" option.', $option)); - } -} diff --git a/vendor/symfony/options-resolver/Exception/NoConfigurationException.php b/vendor/symfony/options-resolver/Exception/NoConfigurationException.php deleted file mode 100644 index 6693ec14d..000000000 --- a/vendor/symfony/options-resolver/Exception/NoConfigurationException.php +++ /dev/null @@ -1,26 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\OptionsResolver\Exception; - -use Symfony\Component\OptionsResolver\Debug\OptionsResolverIntrospector; - -/** - * Thrown when trying to introspect an option definition property - * for which no value was configured inside the OptionsResolver instance. - * - * @see OptionsResolverIntrospector - * - * @author Maxime Steinhausser - */ -class NoConfigurationException extends \RuntimeException implements ExceptionInterface -{ -} diff --git a/vendor/symfony/options-resolver/LICENSE b/vendor/symfony/options-resolver/LICENSE index 21d7fb9e2..17d16a133 100644 --- a/vendor/symfony/options-resolver/LICENSE +++ b/vendor/symfony/options-resolver/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2004-2018 Fabien Potencier +Copyright (c) 2004-2017 Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/vendor/symfony/options-resolver/OptionsResolver.php b/vendor/symfony/options-resolver/OptionsResolver.php index 95a492de9..32ac5663f 100644 --- a/vendor/symfony/options-resolver/OptionsResolver.php +++ b/vendor/symfony/options-resolver/OptionsResolver.php @@ -28,21 +28,29 @@ class OptionsResolver implements Options { /** * The names of all defined options. + * + * @var array */ private $defined = array(); /** * The default option values. + * + * @var array */ private $defaults = array(); /** * The names of required options. + * + * @var array */ private $required = array(); /** * The resolved option values. + * + * @var array */ private $resolved = array(); @@ -55,16 +63,22 @@ class OptionsResolver implements Options /** * A list of accepted values for each option. + * + * @var array */ private $allowedValues = array(); /** * A list of accepted types for each option. + * + * @var array */ private $allowedTypes = array(); /** * A list of closures for evaluating lazy options. + * + * @var array */ private $lazy = array(); @@ -72,6 +86,8 @@ class OptionsResolver implements Options * A list of lazy options whose closure is currently being called. * * This list helps detecting circular dependencies between lazy options. + * + * @var array */ private $calling = array(); @@ -82,6 +98,8 @@ class OptionsResolver implements Options * necessary in order to avoid inconsistencies during the resolving * process. If any option is changed after being read, all evaluated * lazy options that depend on this option would become invalid. + * + * @var bool */ private $locked = false; @@ -774,12 +792,21 @@ class OptionsResolver implements Options // Validate the type of the resolved option if (isset($this->allowedTypes[$option])) { $valid = false; - $invalidTypes = array(); foreach ($this->allowedTypes[$option] as $type) { $type = isset(self::$typeAliases[$type]) ? self::$typeAliases[$type] : $type; - if ($valid = $this->verifyTypes($type, $value, $invalidTypes)) { + if (function_exists($isFunction = 'is_'.$type)) { + if ($isFunction($value)) { + $valid = true; + break; + } + + continue; + } + + if ($value instanceof $type) { + $valid = true; break; } } @@ -791,7 +818,7 @@ class OptionsResolver implements Options $option, $this->formatValue($value), implode('" or "', $this->allowedTypes[$option]), - implode('|', array_keys($invalidTypes)) + $this->formatTypeOf($value) )); } } @@ -868,45 +895,6 @@ class OptionsResolver implements Options return $value; } - /** - * @param string $type - * @param mixed $value - * @param array &$invalidTypes - * - * @return bool - */ - private function verifyTypes($type, $value, array &$invalidTypes) - { - if ('[]' === substr($type, -2) && is_array($value)) { - $originalType = $type; - $type = substr($type, 0, -2); - $invalidValues = array_filter( // Filter out valid values, keeping invalid values in the resulting array - $value, - function ($value) use ($type) { - return !self::isValueValidType($type, $value); - } - ); - - if (!$invalidValues) { - return true; - } - - $invalidTypes[$this->formatTypeOf($value, $originalType)] = true; - - return false; - } - - if (self::isValueValidType($type, $value)) { - return true; - } - - if (!$invalidTypes) { - $invalidTypes[$this->formatTypeOf($value, null)] = true; - } - - return false; - } - /** * Returns whether a resolved option with the given name exists. * @@ -975,38 +963,13 @@ class OptionsResolver implements Options * parameters should usually not be included in messages aimed at * non-technical people. * - * @param mixed $value The value to return the type of - * @param string $type + * @param mixed $value The value to return the type of * * @return string The type of the value */ - private function formatTypeOf($value, $type) + private function formatTypeOf($value) { - $suffix = ''; - - if ('[]' === substr($type, -2)) { - $suffix = '[]'; - $type = substr($type, 0, -2); - while ('[]' === substr($type, -2)) { - $type = substr($type, 0, -2); - $value = array_shift($value); - if (!is_array($value)) { - break; - } - $suffix .= '[]'; - } - - if (is_array($value)) { - $subTypes = array(); - foreach ($value as $val) { - $subTypes[$this->formatTypeOf($val, null)] = true; - } - - return implode('|', array_keys($subTypes)).$suffix; - } - } - - return (is_object($value) ? get_class($value) : gettype($value)).$suffix; + return is_object($value) ? get_class($value) : gettype($value); } /** @@ -1073,9 +1036,4 @@ class OptionsResolver implements Options return implode(', ', $values); } - - private static function isValueValidType($type, $value) - { - return (function_exists($isFunction = 'is_'.$type) && $isFunction($value)) || $value instanceof $type; - } } diff --git a/vendor/symfony/options-resolver/Tests/Debug/OptionsResolverIntrospectorTest.php b/vendor/symfony/options-resolver/Tests/Debug/OptionsResolverIntrospectorTest.php deleted file mode 100644 index 7c4753ab5..000000000 --- a/vendor/symfony/options-resolver/Tests/Debug/OptionsResolverIntrospectorTest.php +++ /dev/null @@ -1,203 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\OptionsResolver\Tests\Debug; - -use PHPUnit\Framework\TestCase; -use Symfony\Component\OptionsResolver\Debug\OptionsResolverIntrospector; -use Symfony\Component\OptionsResolver\Options; -use Symfony\Component\OptionsResolver\OptionsResolver; - -class OptionsResolverIntrospectorTest extends TestCase -{ - public function testGetDefault() - { - $resolver = new OptionsResolver(); - $resolver->setDefault($option = 'foo', 'bar'); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getDefault($option)); - } - - public function testGetDefaultNull() - { - $resolver = new OptionsResolver(); - $resolver->setDefault($option = 'foo', null); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertNull($debug->getDefault($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\NoConfigurationException - * @expectedExceptionMessage No default value was set for the "foo" option. - */ - public function testGetDefaultThrowsOnNoConfiguredValue() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getDefault($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException - * @expectedExceptionMessage The option "foo" does not exist. - */ - public function testGetDefaultThrowsOnNotDefinedOption() - { - $resolver = new OptionsResolver(); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getDefault('foo')); - } - - public function testGetLazyClosures() - { - $resolver = new OptionsResolver(); - $closures = array(); - $resolver->setDefault($option = 'foo', $closures[] = function (Options $options) {}); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame($closures, $debug->getLazyClosures($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\NoConfigurationException - * @expectedExceptionMessage No lazy closures were set for the "foo" option. - */ - public function testGetLazyClosuresThrowsOnNoConfiguredValue() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getLazyClosures($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException - * @expectedExceptionMessage The option "foo" does not exist. - */ - public function testGetLazyClosuresThrowsOnNotDefinedOption() - { - $resolver = new OptionsResolver(); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getLazyClosures('foo')); - } - - public function testGetAllowedTypes() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - $resolver->setAllowedTypes($option = 'foo', $allowedTypes = array('string', 'bool')); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame($allowedTypes, $debug->getAllowedTypes($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\NoConfigurationException - * @expectedExceptionMessage No allowed types were set for the "foo" option. - */ - public function testGetAllowedTypesThrowsOnNoConfiguredValue() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getAllowedTypes($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException - * @expectedExceptionMessage The option "foo" does not exist. - */ - public function testGetAllowedTypesThrowsOnNotDefinedOption() - { - $resolver = new OptionsResolver(); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getAllowedTypes('foo')); - } - - public function testGetAllowedValues() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - $resolver->setAllowedValues($option = 'foo', $allowedValues = array('bar', 'baz')); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame($allowedValues, $debug->getAllowedValues($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\NoConfigurationException - * @expectedExceptionMessage No allowed values were set for the "foo" option. - */ - public function testGetAllowedValuesThrowsOnNoConfiguredValue() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getAllowedValues($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException - * @expectedExceptionMessage The option "foo" does not exist. - */ - public function testGetAllowedValuesThrowsOnNotDefinedOption() - { - $resolver = new OptionsResolver(); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getAllowedValues('foo')); - } - - public function testGetNormalizer() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - $resolver->setNormalizer($option = 'foo', $normalizer = function () {}); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame($normalizer, $debug->getNormalizer($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\NoConfigurationException - * @expectedExceptionMessage No normalizer was set for the "foo" option. - */ - public function testGetNormalizerThrowsOnNoConfiguredValue() - { - $resolver = new OptionsResolver(); - $resolver->setDefined($option = 'foo'); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getNormalizer($option)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException - * @expectedExceptionMessage The option "foo" does not exist. - */ - public function testGetNormalizerThrowsOnNotDefinedOption() - { - $resolver = new OptionsResolver(); - - $debug = new OptionsResolverIntrospector($resolver); - $this->assertSame('bar', $debug->getNormalizer('foo')); - } -} diff --git a/vendor/symfony/options-resolver/Tests/OptionsResolverTest.php b/vendor/symfony/options-resolver/Tests/OptionsResolverTest.php index 440af8b57..d09dece33 100644 --- a/vendor/symfony/options-resolver/Tests/OptionsResolverTest.php +++ b/vendor/symfony/options-resolver/Tests/OptionsResolverTest.php @@ -486,15 +486,6 @@ class OptionsResolverTest extends TestCase $this->resolver->setAllowedTypes('foo', 'string'); } - public function testResolveTypedArray() - { - $this->resolver->setDefined('foo'); - $this->resolver->setAllowedTypes('foo', 'string[]'); - $options = $this->resolver->resolve(array('foo' => array('bar', 'baz'))); - - $this->assertSame(array('foo' => array('bar', 'baz')), $options); - } - /** * @expectedException \Symfony\Component\OptionsResolver\Exception\AccessException */ @@ -509,65 +500,6 @@ class OptionsResolverTest extends TestCase $this->resolver->resolve(); } - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\InvalidOptionsException - * @expectedExceptionMessage The option "foo" with value array is expected to be of type "int[]", but is of type "DateTime[]". - */ - public function testResolveFailsIfInvalidTypedArray() - { - $this->resolver->setDefined('foo'); - $this->resolver->setAllowedTypes('foo', 'int[]'); - - $this->resolver->resolve(array('foo' => array(new \DateTime()))); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\InvalidOptionsException - * @expectedExceptionMessage The option "foo" with value "bar" is expected to be of type "int[]", but is of type "string". - */ - public function testResolveFailsWithNonArray() - { - $this->resolver->setDefined('foo'); - $this->resolver->setAllowedTypes('foo', 'int[]'); - - $this->resolver->resolve(array('foo' => 'bar')); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\InvalidOptionsException - * @expectedExceptionMessage The option "foo" with value array is expected to be of type "int[]", but is of type "integer|stdClass|array|DateTime[]". - */ - public function testResolveFailsIfTypedArrayContainsInvalidTypes() - { - $this->resolver->setDefined('foo'); - $this->resolver->setAllowedTypes('foo', 'int[]'); - $values = range(1, 5); - $values[] = new \stdClass(); - $values[] = array(); - $values[] = new \DateTime(); - $values[] = 123; - - $this->resolver->resolve(array('foo' => $values)); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\InvalidOptionsException - * @expectedExceptionMessage The option "foo" with value array is expected to be of type "int[][]", but is of type "double[][]". - */ - public function testResolveFailsWithCorrectLevelsButWrongScalar() - { - $this->resolver->setDefined('foo'); - $this->resolver->setAllowedTypes('foo', 'int[][]'); - - $this->resolver->resolve( - array( - 'foo' => array( - array(1.2), - ), - ) - ); - } - /** * @dataProvider provideInvalidTypes */ @@ -636,32 +568,6 @@ class OptionsResolverTest extends TestCase $this->assertNotEmpty($this->resolver->resolve()); } - public function testResolveSucceedsIfTypedArray() - { - $this->resolver->setDefault('foo', null); - $this->resolver->setAllowedTypes('foo', array('null', 'DateTime[]')); - - $data = array( - 'foo' => array( - new \DateTime(), - new \DateTime(), - ), - ); - $result = $this->resolver->resolve($data); - $this->assertEquals($data, $result); - } - - /** - * @expectedException \Symfony\Component\OptionsResolver\Exception\InvalidOptionsException - */ - public function testResolveFailsIfNotInstanceOfClass() - { - $this->resolver->setDefault('foo', 'bar'); - $this->resolver->setAllowedTypes('foo', '\stdClass'); - - $this->resolver->resolve(); - } - //////////////////////////////////////////////////////////////////////////// // addAllowedTypes() //////////////////////////////////////////////////////////////////////////// @@ -1513,12 +1419,12 @@ class OptionsResolverTest extends TestCase }); $this->resolver->setDefault('lazy2', function (Options $options) { - Assert::assertArrayHasKey('default1', $options); - Assert::assertArrayHasKey('default2', $options); - Assert::assertArrayHasKey('required', $options); - Assert::assertArrayHasKey('lazy1', $options); - Assert::assertArrayHasKey('lazy2', $options); - Assert::assertArrayNotHasKey('defined', $options); + Assert::assertTrue(isset($options['default1'])); + Assert::assertTrue(isset($options['default2'])); + Assert::assertTrue(isset($options['required'])); + Assert::assertTrue(isset($options['lazy1'])); + Assert::assertTrue(isset($options['lazy2'])); + Assert::assertFalse(isset($options['defined'])); Assert::assertSame(0, $options['default1']); Assert::assertSame(42, $options['default2']); diff --git a/vendor/symfony/options-resolver/composer.json b/vendor/symfony/options-resolver/composer.json index 895847ea5..a751730af 100644 --- a/vendor/symfony/options-resolver/composer.json +++ b/vendor/symfony/options-resolver/composer.json @@ -16,7 +16,7 @@ } ], "require": { - "php": "^5.5.9|>=7.0.8" + "php": ">=5.5.9" }, "autoload": { "psr-4": { "Symfony\\Component\\OptionsResolver\\": "" }, @@ -27,7 +27,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "3.4-dev" + "dev-master": "3.3-dev" } } } diff --git a/vendor/zoujingli/ip2region/README.md b/vendor/zoujingli/ip2region/README.md index 2539ff694..dba1aab3b 100644 --- a/vendor/zoujingli/ip2region/README.md +++ b/vendor/zoujingli/ip2region/README.md @@ -1,50 +1,50 @@ -[![Latest Stable Version](https://poser.pugx.org/zoujingli/ip2region/v/stable)](https://packagist.org/packages/zoujingli/ip2region) -[![Total Downloads](https://poser.pugx.org/zoujingli/ip2region/downloads)](https://packagist.org/packages/zoujingli/ip2region) -[![Latest Unstable Version](https://poser.pugx.org/zoujingli/ip2region/v/unstable)](https://packagist.org/packages/zoujingli/ip2region) -[![License](https://poser.pugx.org/zoujingli/ip2region/license)](https://packagist.org/packages/zoujingli/ip2region) - - -本库基于 [ip2region](https://github.com/lionsoul2014/ip2region) ,简单整合方便使用`composer`来管理。 --- - -[ip2region](https://github.com/lionsoul2014/ip2region) - 最自由的ip地址查询库,ip到地区的映射库,提供Binary,B树和纯内存三种查询算法,妈妈再也不用担心我的ip地址定位。 - -### 1. 99.9%准确率,定时更新: - -数据聚合了一些知名ip到地名查询提供商的数据,这些是他们官方的的准确率,经测试着实比纯真啥的准确多了。
-每次聚合一下数据需要1-2天,会不定时更新。 - -### 2. 标准化的数据格式: - -每条ip数据段都固定了格式:_城市Id|国家|区域|省份|城市|ISP_ - -只有中国的数据精确到了城市,其他国家只能定位到国家,后前的选项全部是0,已经包含了全部你能查到的大大小小的国家。 -(请忽略前面的城市Id,个人项目需求) - -### 3. 体积小: - -数据库文件ip2region.db只有1.5M - -### Composer 安装 - -``` -composer require zoujingli/ip2region -``` - -### ip2region 使用 -```php - -$ip2region = new Ip2Region(); - -$ip = '101.105.35.57'; - -$info = $ip2region->btreeSearch($ip); - -var_export($info, true); - -// array ( -// 'city_id' => 2163, -// 'region' => '中国|华南|广东省|深圳市|鹏博士', -// ) - -``` +[![Latest Stable Version](https://poser.pugx.org/zoujingli/ip2region/v/stable)](https://packagist.org/packages/zoujingli/ip2region) +[![Total Downloads](https://poser.pugx.org/zoujingli/ip2region/downloads)](https://packagist.org/packages/zoujingli/ip2region) +[![Latest Unstable Version](https://poser.pugx.org/zoujingli/ip2region/v/unstable)](https://packagist.org/packages/zoujingli/ip2region) +[![License](https://poser.pugx.org/zoujingli/ip2region/license)](https://packagist.org/packages/zoujingli/ip2region) + + +本库基于 [ip2region](https://github.com/lionsoul2014/ip2region) ,简单整合方便使用`composer`来管理。 +-- + +[ip2region](https://github.com/lionsoul2014/ip2region) - 最自由的ip地址查询库,ip到地区的映射库,提供Binary,B树和纯内存三种查询算法,妈妈再也不用担心我的ip地址定位。 + +### 1. 99.9%准确率,定时更新: + +数据聚合了一些知名ip到地名查询提供商的数据,这些是他们官方的的准确率,经测试着实比纯真啥的准确多了。
+每次聚合一下数据需要1-2天,会不定时更新。 + +### 2. 标准化的数据格式: + +每条ip数据段都固定了格式:_城市Id|国家|区域|省份|城市|ISP_ + +只有中国的数据精确到了城市,其他国家只能定位到国家,后前的选项全部是0,已经包含了全部你能查到的大大小小的国家。 +(请忽略前面的城市Id,个人项目需求) + +### 3. 体积小: + +数据库文件ip2region.db只有1.5M + +### Composer 安装 + +``` +composer require zoujingli/ip2region +``` + +### ip2region 使用 +```php + +$ip2region = new Ip2Region(); + +$ip = '101.105.35.57'; + +$info = $ip2region->btreeSearch($ip); + +var_export($info, true); + +// array ( +// 'city_id' => 2163, +// 'region' => '中国|华南|广东省|深圳市|鹏博士', +// ) + +``` diff --git a/vendor/zoujingli/ip2region/test.php b/vendor/zoujingli/ip2region/test.php index 2e97d7d14..45981c3db 100644 --- a/vendor/zoujingli/ip2region/test.php +++ b/vendor/zoujingli/ip2region/test.php @@ -1,15 +1,15 @@ -btreeSearch($ip); - -var_export($info, true); - -// array ( -// 'city_id' => 2163, -// 'region' => '中国|华南|广东省|深圳市|鹏博士', +btreeSearch($ip); + +var_export($info, true); + +// array ( +// 'city_id' => 2163, +// 'region' => '中国|华南|广东省|深圳市|鹏博士', // ) \ No newline at end of file