create-prisma-php-app 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/dist/index.js +1 -1
- package/dist/node_modules/prisma-client-php/index.js +1 -1
- package/package.json +11 -4
- package/vendor/brick/math/.editorconfig +0 -15
- package/vendor/brick/math/.gitattributes +0 -11
- package/vendor/brick/math/.github/FUNDING.yml +0 -1
- package/vendor/brick/math/.github/workflows/ci.yml +0 -80
- package/vendor/brick/math/CHANGELOG.md +0 -445
- package/vendor/brick/math/LICENSE +0 -20
- package/vendor/brick/math/README.md +0 -247
- package/vendor/brick/math/composer.json +0 -34
- package/vendor/brick/math/phpunit.php +0 -51
- package/vendor/brick/math/phpunit.xml +0 -13
- package/vendor/brick/math/psalm.xml +0 -28
- package/vendor/brick/math/random-tests.php +0 -162
- package/vendor/brick/math/src/BigDecimal.php +0 -786
- package/vendor/brick/math/src/BigInteger.php +0 -1079
- package/vendor/brick/math/src/BigNumber.php +0 -512
- package/vendor/brick/math/src/BigRational.php +0 -445
- package/vendor/brick/math/src/Exception/DivisionByZeroException.php +0 -35
- package/vendor/brick/math/src/Exception/IntegerOverflowException.php +0 -23
- package/vendor/brick/math/src/Exception/MathException.php +0 -12
- package/vendor/brick/math/src/Exception/NegativeNumberException.php +0 -12
- package/vendor/brick/math/src/Exception/NumberFormatException.php +0 -33
- package/vendor/brick/math/src/Exception/RoundingNecessaryException.php +0 -19
- package/vendor/brick/math/src/Internal/Calculator/BcMathCalculator.php +0 -75
- package/vendor/brick/math/src/Internal/Calculator/GmpCalculator.php +0 -108
- package/vendor/brick/math/src/Internal/Calculator/NativeCalculator.php +0 -581
- package/vendor/brick/math/src/Internal/Calculator.php +0 -676
- package/vendor/brick/math/src/RoundingMode.php +0 -107
- package/vendor/brick/math/tests/AbstractTestCase.php +0 -86
- package/vendor/brick/math/tests/BigDecimalTest.php +0 -2596
- package/vendor/brick/math/tests/BigIntegerTest.php +0 -3782
- package/vendor/brick/math/tests/BigNumberTest.php +0 -53
- package/vendor/brick/math/tests/BigRationalTest.php +0 -993
- package/vendor/brick/math/tests/CalculatorDetectTest.php +0 -25
- package/vendor/brick/math/tests/Internal/Calculator/NativeCalculatorTest.php +0 -87
- package/vendor/firebase/php-jwt/.gitattributes +0 -9
- package/vendor/firebase/php-jwt/.github/release-please.yml +0 -3
- package/vendor/firebase/php-jwt/.github/workflows/tests.yml +0 -57
- package/vendor/firebase/php-jwt/.php-cs-fixer.dist.php +0 -24
- package/vendor/firebase/php-jwt/CHANGELOG.md +0 -170
- package/vendor/firebase/php-jwt/LICENSE +0 -30
- package/vendor/firebase/php-jwt/README.md +0 -424
- package/vendor/firebase/php-jwt/composer.json +0 -42
- package/vendor/firebase/php-jwt/phpstan.neon.dist +0 -5
- package/vendor/firebase/php-jwt/phpunit.xml.dist +0 -18
- package/vendor/firebase/php-jwt/src/BeforeValidException.php +0 -18
- package/vendor/firebase/php-jwt/src/CachedKeySet.php +0 -268
- package/vendor/firebase/php-jwt/src/ExpiredException.php +0 -18
- package/vendor/firebase/php-jwt/src/JWK.php +0 -349
- package/vendor/firebase/php-jwt/src/JWT.php +0 -669
- package/vendor/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php +0 -20
- package/vendor/firebase/php-jwt/src/Key.php +0 -64
- package/vendor/firebase/php-jwt/src/SignatureInvalidException.php +0 -7
- package/vendor/firebase/php-jwt/tests/CachedKeySetTest.php +0 -598
- package/vendor/firebase/php-jwt/tests/JWKTest.php +0 -172
- package/vendor/firebase/php-jwt/tests/JWTTest.php +0 -543
- package/vendor/firebase/php-jwt/tests/data/ec-jwkset.json +0 -40
- package/vendor/firebase/php-jwt/tests/data/ecdsa-private.pem +0 -18
- package/vendor/firebase/php-jwt/tests/data/ecdsa-public.pem +0 -9
- package/vendor/firebase/php-jwt/tests/data/ecdsa256-private.pem +0 -4
- package/vendor/firebase/php-jwt/tests/data/ecdsa384-private.pem +0 -6
- package/vendor/firebase/php-jwt/tests/data/ecdsa384-public.pem +0 -5
- package/vendor/firebase/php-jwt/tests/data/ed25519-1.pub +0 -1
- package/vendor/firebase/php-jwt/tests/data/ed25519-1.sec +0 -1
- package/vendor/firebase/php-jwt/tests/data/ed25519-jwkset.json +0 -11
- package/vendor/firebase/php-jwt/tests/data/rsa-jwkset.json +0 -18
- package/vendor/firebase/php-jwt/tests/data/rsa-with-passphrase.pem +0 -42
- package/vendor/firebase/php-jwt/tests/data/rsa1-private.pem +0 -27
- package/vendor/firebase/php-jwt/tests/data/rsa1-public.pub +0 -9
- package/vendor/firebase/php-jwt/tests/data/rsa2-private.pem +0 -27
- package/vendor/firebase/php-jwt/tests/data/secp256k1-private.pem +0 -5
- package/vendor/firebase/php-jwt/tests/data/secp256k1-public.pem +0 -4
- package/vendor/graham-campbell/result-type/.gitattributes +0 -9
- package/vendor/graham-campbell/result-type/.github/CODE_OF_CONDUCT.md +0 -132
- package/vendor/graham-campbell/result-type/.github/CONTRIBUTING.md +0 -31
- package/vendor/graham-campbell/result-type/.github/FUNDING.yml +0 -2
- package/vendor/graham-campbell/result-type/.github/SECURITY.md +0 -14
- package/vendor/graham-campbell/result-type/.github/workflows/tests.yml +0 -40
- package/vendor/graham-campbell/result-type/CHANGELOG.md +0 -43
- package/vendor/graham-campbell/result-type/LICENSE +0 -21
- package/vendor/graham-campbell/result-type/README.md +0 -42
- package/vendor/graham-campbell/result-type/composer.json +0 -33
- package/vendor/graham-campbell/result-type/phpunit.xml.dist +0 -13
- package/vendor/graham-campbell/result-type/src/Error.php +0 -121
- package/vendor/graham-campbell/result-type/src/Result.php +0 -69
- package/vendor/graham-campbell/result-type/src/Success.php +0 -120
- package/vendor/graham-campbell/result-type/tests/ResultTest.php +0 -95
- package/vendor/hidehalo/nanoid-php/.editorconfig +0 -15
- package/vendor/hidehalo/nanoid-php/.gitattributes +0 -8
- package/vendor/hidehalo/nanoid-php/.github/workflows/php.yml +0 -49
- package/vendor/hidehalo/nanoid-php/.styleci.yml +0 -1
- package/vendor/hidehalo/nanoid-php/CHANGELOG.md +0 -36
- package/vendor/hidehalo/nanoid-php/CODE_OF_CONDUCT.md +0 -74
- package/vendor/hidehalo/nanoid-php/CONTRIBUTING.md +0 -32
- package/vendor/hidehalo/nanoid-php/ISSUE_TEMPLATE.md +0 -27
- package/vendor/hidehalo/nanoid-php/LICENSE.md +0 -21
- package/vendor/hidehalo/nanoid-php/PULL_REQUEST_TEMPLATE.md +0 -43
- package/vendor/hidehalo/nanoid-php/README.md +0 -108
- package/vendor/hidehalo/nanoid-php/benchmark/benchmark.php +0 -24
- package/vendor/hidehalo/nanoid-php/composer.json +0 -62
- package/vendor/hidehalo/nanoid-php/examples/basic_usage.php +0 -24
- package/vendor/hidehalo/nanoid-php/examples/custom_formated.php +0 -29
- package/vendor/hidehalo/nanoid-php/phpunit.xml +0 -31
- package/vendor/hidehalo/nanoid-php/src/Client.php +0 -120
- package/vendor/hidehalo/nanoid-php/src/Core.php +0 -31
- package/vendor/hidehalo/nanoid-php/src/CoreInterface.php +0 -19
- package/vendor/hidehalo/nanoid-php/src/Generator.php +0 -13
- package/vendor/hidehalo/nanoid-php/src/GeneratorInterface.php +0 -13
- package/vendor/hidehalo/nanoid-php/tests/ClientTest.php +0 -76
- package/vendor/hidehalo/nanoid-php/tests/CoreTest.php +0 -37
- package/vendor/hidehalo/nanoid-php/tests/GeneratorTest.php +0 -34
- package/vendor/hidehalo/nanoid-php/tests/Support/DummyGenerator.php +0 -20
- package/vendor/paragonie/random_compat/.gitattributes +0 -14
- package/vendor/paragonie/random_compat/.scrutinizer.yml +0 -4
- package/vendor/paragonie/random_compat/.travis.yml +0 -59
- package/vendor/paragonie/random_compat/CHANGELOG.md +0 -3
- package/vendor/paragonie/random_compat/LICENSE +0 -22
- package/vendor/paragonie/random_compat/RATIONALE.md +0 -36
- package/vendor/paragonie/random_compat/README.md +0 -232
- package/vendor/paragonie/random_compat/SECURITY.md +0 -108
- package/vendor/paragonie/random_compat/build-phar.sh +0 -5
- package/vendor/paragonie/random_compat/composer.json +0 -34
- package/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey +0 -5
- package/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey.asc +0 -11
- package/vendor/paragonie/random_compat/lib/random.php +0 -32
- package/vendor/paragonie/random_compat/other/build_phar.php +0 -57
- package/vendor/paragonie/random_compat/other/ide_stubs/COM.php +0 -20
- package/vendor/paragonie/random_compat/other/ide_stubs/README.md +0 -7
- package/vendor/paragonie/random_compat/other/ide_stubs/com_exception.php +0 -11
- package/vendor/paragonie/random_compat/other/ide_stubs/libsodium.php +0 -90
- package/vendor/paragonie/random_compat/phpunit.sh +0 -60
- package/vendor/paragonie/random_compat/phpunit.xml.dist +0 -31
- package/vendor/paragonie/random_compat/psalm-autoload.php +0 -9
- package/vendor/paragonie/random_compat/psalm.xml +0 -19
- package/vendor/paragonie/random_compat/tests/full/DieHardTest.php +0 -61
- package/vendor/paragonie/random_compat/tests/full/StatTest.php +0 -52
- package/vendor/paragonie/random_compat/tests/specific/capicom.php +0 -7
- package/vendor/paragonie/random_compat/tests/specific/dev_urandom.php +0 -7
- package/vendor/paragonie/random_compat/tests/specific/libsodium.php +0 -7
- package/vendor/paragonie/random_compat/tests/specific/libsodium_legacy.php +0 -7
- package/vendor/paragonie/random_compat/tests/specific/mcrypt.php +0 -7
- package/vendor/paragonie/random_compat/tests/unit/RandomBytesTest.php +0 -80
- package/vendor/paragonie/random_compat/tests/unit/RandomIntTest.php +0 -63
- package/vendor/paragonie/random_compat/tests/unit/UtilityTest.php +0 -95
- package/vendor/paragonie/random_compat/tests/unit_with_basedir/RandomBytesTest.php +0 -100
- package/vendor/paragonie/random_compat/tests/unit_with_basedir/RandomIntTest.php +0 -82
- package/vendor/paragonie/random_compat/tests/unit_with_basedir/UtilityTest.php +0 -95
- package/vendor/phpoption/phpoption/.gitattributes +0 -14
- package/vendor/phpoption/phpoption/.github/CODE_OF_CONDUCT.md +0 -132
- package/vendor/phpoption/phpoption/.github/CONTRIBUTING.md +0 -30
- package/vendor/phpoption/phpoption/.github/FUNDING.yml +0 -2
- package/vendor/phpoption/phpoption/.github/SECURITY.md +0 -14
- package/vendor/phpoption/phpoption/.github/workflows/static.yml +0 -74
- package/vendor/phpoption/phpoption/.github/workflows/tests.yml +0 -40
- package/vendor/phpoption/phpoption/LICENSE +0 -201
- package/vendor/phpoption/phpoption/Makefile +0 -26
- package/vendor/phpoption/phpoption/README.md +0 -194
- package/vendor/phpoption/phpoption/composer.json +0 -52
- package/vendor/phpoption/phpoption/phpstan-baseline.neon +0 -32
- package/vendor/phpoption/phpoption/phpstan.neon.dist +0 -8
- package/vendor/phpoption/phpoption/phpunit.xml.dist +0 -13
- package/vendor/phpoption/phpoption/psalm.xml +0 -12
- package/vendor/phpoption/phpoption/src/PhpOption/LazyOption.php +0 -175
- package/vendor/phpoption/phpoption/src/PhpOption/None.php +0 -136
- package/vendor/phpoption/phpoption/src/PhpOption/Option.php +0 -434
- package/vendor/phpoption/phpoption/src/PhpOption/Some.php +0 -169
- package/vendor/phpoption/phpoption/tests/PhpOption/Tests/EnsureTest.php +0 -77
- package/vendor/phpoption/phpoption/tests/PhpOption/Tests/LazyOptionTest.php +0 -200
- package/vendor/phpoption/phpoption/tests/PhpOption/Tests/NoneTest.php +0 -153
- package/vendor/phpoption/phpoption/tests/PhpOption/Tests/OptionTest.php +0 -160
- package/vendor/phpoption/phpoption/tests/PhpOption/Tests/SomeTest.php +0 -194
- package/vendor/phpoption/phpoption/tests/bootstrap.php +0 -8
- package/vendor/phpoption/phpoption/vendor-bin/phpstan/composer.json +0 -8
- package/vendor/phpoption/phpoption/vendor-bin/psalm/composer.json +0 -8
- package/vendor/ramsey/uuid/.editorconfig +0 -16
- package/vendor/ramsey/uuid/.gitattributes +0 -26
- package/vendor/ramsey/uuid/.github/CODEOWNERS +0 -1
- package/vendor/ramsey/uuid/.github/FUNDING.yml +0 -2
- package/vendor/ramsey/uuid/.github/ISSUE_TEMPLATE/Bug_Report.md +0 -35
- package/vendor/ramsey/uuid/.github/ISSUE_TEMPLATE/Feature_Request.md +0 -31
- package/vendor/ramsey/uuid/.github/ISSUE_TEMPLATE/Question.md +0 -19
- package/vendor/ramsey/uuid/.github/ISSUE_TEMPLATE/config.yml +0 -1
- package/vendor/ramsey/uuid/.github/dependabot.yml +0 -15
- package/vendor/ramsey/uuid/.github/pull_request_template.md +0 -27
- package/vendor/ramsey/uuid/.github/workflows/continuous-integration.yml +0 -181
- package/vendor/ramsey/uuid/.github/workflows/merge-dependabot-upgrades.yml +0 -24
- package/vendor/ramsey/uuid/.readthedocs.yml +0 -11
- package/vendor/ramsey/uuid/CHANGELOG.md +0 -1511
- package/vendor/ramsey/uuid/CODE_OF_CONDUCT.md +0 -73
- package/vendor/ramsey/uuid/CONTRIBUTING.md +0 -171
- package/vendor/ramsey/uuid/LICENSE +0 -19
- package/vendor/ramsey/uuid/README.md +0 -83
- package/vendor/ramsey/uuid/SECURITY.md +0 -170
- package/vendor/ramsey/uuid/build/.gitignore +0 -6
- package/vendor/ramsey/uuid/build/cache/.gitkeep +0 -0
- package/vendor/ramsey/uuid/build/logs/.gitkeep +0 -0
- package/vendor/ramsey/uuid/captainhook.json +0 -105
- package/vendor/ramsey/uuid/codecov.yml +0 -29
- package/vendor/ramsey/uuid/composer.json +0 -106
- package/vendor/ramsey/uuid/composer.lock +0 -7208
- package/vendor/ramsey/uuid/docs/Makefile +0 -20
- package/vendor/ramsey/uuid/docs/README.md +0 -36
- package/vendor/ramsey/uuid/docs/_static/.gitkeep +0 -0
- package/vendor/ramsey/uuid/docs/conf.py +0 -103
- package/vendor/ramsey/uuid/docs/copyright.rst +0 -18
- package/vendor/ramsey/uuid/docs/customize/calculators.rst +0 -75
- package/vendor/ramsey/uuid/docs/customize/factory.rst +0 -93
- package/vendor/ramsey/uuid/docs/customize/ordered-time-codec.rst +0 -86
- package/vendor/ramsey/uuid/docs/customize/timestamp-first-comb-codec.rst +0 -72
- package/vendor/ramsey/uuid/docs/customize/validators.rst +0 -39
- package/vendor/ramsey/uuid/docs/customize.rst +0 -56
- package/vendor/ramsey/uuid/docs/database.rst +0 -260
- package/vendor/ramsey/uuid/docs/faq.rst +0 -132
- package/vendor/ramsey/uuid/docs/index.rst +0 -51
- package/vendor/ramsey/uuid/docs/introduction.rst +0 -31
- package/vendor/ramsey/uuid/docs/nonstandard/guid.rst +0 -152
- package/vendor/ramsey/uuid/docs/nonstandard/other.rst +0 -49
- package/vendor/ramsey/uuid/docs/nonstandard/version6.rst +0 -17
- package/vendor/ramsey/uuid/docs/nonstandard.rst +0 -40
- package/vendor/ramsey/uuid/docs/quickstart.rst +0 -112
- package/vendor/ramsey/uuid/docs/reference/calculators.rst +0 -168
- package/vendor/ramsey/uuid/docs/reference/exceptions.rst +0 -92
- package/vendor/ramsey/uuid/docs/reference/fields-fieldsinterface.rst +0 -16
- package/vendor/ramsey/uuid/docs/reference/guid-fields.rst +0 -13
- package/vendor/ramsey/uuid/docs/reference/guid-guid.rst +0 -20
- package/vendor/ramsey/uuid/docs/reference/helper.rst +0 -62
- package/vendor/ramsey/uuid/docs/reference/name-based-namespaces.rst +0 -31
- package/vendor/ramsey/uuid/docs/reference/nonstandard-fields.rst +0 -13
- package/vendor/ramsey/uuid/docs/reference/nonstandard-uuid.rst +0 -20
- package/vendor/ramsey/uuid/docs/reference/nonstandard-uuidv6.rst +0 -34
- package/vendor/ramsey/uuid/docs/reference/rfc4122-fieldsinterface.rst +0 -78
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidinterface.rst +0 -20
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv1.rst +0 -21
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv2.rst +0 -47
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv3.rst +0 -13
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv4.rst +0 -13
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv5.rst +0 -13
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv6.rst +0 -31
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv7.rst +0 -20
- package/vendor/ramsey/uuid/docs/reference/rfc4122-uuidv8.rst +0 -13
- package/vendor/ramsey/uuid/docs/reference/rfc4122-version.rst +0 -87
- package/vendor/ramsey/uuid/docs/reference/timebaseduuidinterface.rst +0 -16
- package/vendor/ramsey/uuid/docs/reference/types.rst +0 -79
- package/vendor/ramsey/uuid/docs/reference/uuid.rst +0 -161
- package/vendor/ramsey/uuid/docs/reference/uuidfactoryinterface.rst +0 -102
- package/vendor/ramsey/uuid/docs/reference/uuidinterface.rst +0 -60
- package/vendor/ramsey/uuid/docs/reference/validators.rst +0 -34
- package/vendor/ramsey/uuid/docs/reference/variant.rst +0 -32
- package/vendor/ramsey/uuid/docs/reference.rst +0 -37
- package/vendor/ramsey/uuid/docs/requirements.txt +0 -3
- package/vendor/ramsey/uuid/docs/rfc4122/version1.rst +0 -192
- package/vendor/ramsey/uuid/docs/rfc4122/version2.rst +0 -273
- package/vendor/ramsey/uuid/docs/rfc4122/version3.rst +0 -68
- package/vendor/ramsey/uuid/docs/rfc4122/version4.rst +0 -39
- package/vendor/ramsey/uuid/docs/rfc4122/version5.rst +0 -108
- package/vendor/ramsey/uuid/docs/rfc4122/version6.rst +0 -213
- package/vendor/ramsey/uuid/docs/rfc4122/version7.rst +0 -173
- package/vendor/ramsey/uuid/docs/rfc4122/version8.rst +0 -51
- package/vendor/ramsey/uuid/docs/rfc4122.rst +0 -67
- package/vendor/ramsey/uuid/docs/testing.rst +0 -199
- package/vendor/ramsey/uuid/docs/tidelift.rst +0 -74
- package/vendor/ramsey/uuid/docs/upgrading/2-to-3.rst +0 -31
- package/vendor/ramsey/uuid/docs/upgrading/3-to-4.rst +0 -512
- package/vendor/ramsey/uuid/docs/upgrading.rst +0 -11
- package/vendor/ramsey/uuid/phpbench.json +0 -10
- package/vendor/ramsey/uuid/phpcs.xml.dist +0 -476
- package/vendor/ramsey/uuid/phpstan-tests.neon +0 -32
- package/vendor/ramsey/uuid/phpstan.neon.dist +0 -25
- package/vendor/ramsey/uuid/phpunit.xml.dist +0 -26
- package/vendor/ramsey/uuid/psalm-baseline.xml +0 -133
- package/vendor/ramsey/uuid/psalm.xml +0 -25
- package/vendor/ramsey/uuid/resources/vagrant/README.md +0 -10
- package/vendor/ramsey/uuid/resources/vagrant/freebsd/README.md +0 -15
- package/vendor/ramsey/uuid/resources/vagrant/freebsd/Vagrantfile +0 -35
- package/vendor/ramsey/uuid/resources/vagrant/linux/README.md +0 -15
- package/vendor/ramsey/uuid/resources/vagrant/linux/Vagrantfile +0 -27
- package/vendor/ramsey/uuid/resources/vagrant/windows/README.md +0 -16
- package/vendor/ramsey/uuid/resources/vagrant/windows/Vagrantfile +0 -22
- package/vendor/ramsey/uuid/src/BinaryUtils.php +0 -106
- package/vendor/ramsey/uuid/src/Builder/FallbackBuilder.php +0 -68
- package/vendor/ramsey/uuid/src/Builder/UuidBuilderInterface.php +0 -39
- package/vendor/ramsey/uuid/src/Codec/CodecInterface.php +0 -67
- package/vendor/ramsey/uuid/src/Codec/GuidStringCodec.php +0 -82
- package/vendor/ramsey/uuid/src/Codec/OrderedTimeCodec.php +0 -114
- package/vendor/ramsey/uuid/src/Codec/StringCodec.php +0 -128
- package/vendor/ramsey/uuid/src/Codec/TimestampFirstCombCodec.php +0 -105
- package/vendor/ramsey/uuid/src/Codec/TimestampLastCombCodec.php +0 -51
- package/vendor/ramsey/uuid/src/Converter/Number/GenericNumberConverter.php +0 -48
- package/vendor/ramsey/uuid/src/Converter/NumberConverterInterface.php +0 -53
- package/vendor/ramsey/uuid/src/Converter/Time/GenericTimeConverter.php +0 -118
- package/vendor/ramsey/uuid/src/Converter/Time/PhpTimeConverter.php +0 -163
- package/vendor/ramsey/uuid/src/Converter/Time/UnixTimeConverter.php +0 -90
- package/vendor/ramsey/uuid/src/Converter/TimeConverterInterface.php +0 -58
- package/vendor/ramsey/uuid/src/Exception/BuilderNotFoundException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/DateTimeException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/DceSecurityException.php +0 -25
- package/vendor/ramsey/uuid/src/Exception/InvalidArgumentException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/InvalidBytesException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/InvalidUuidStringException.php +0 -25
- package/vendor/ramsey/uuid/src/Exception/NameException.php +0 -25
- package/vendor/ramsey/uuid/src/Exception/NodeException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/RandomSourceException.php +0 -27
- package/vendor/ramsey/uuid/src/Exception/TimeSourceException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/UnableToBuildUuidException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/UnsupportedOperationException.php +0 -24
- package/vendor/ramsey/uuid/src/Exception/UuidExceptionInterface.php +0 -21
- package/vendor/ramsey/uuid/src/FeatureSet.php +0 -395
- package/vendor/ramsey/uuid/src/Fields/FieldsInterface.php +0 -42
- package/vendor/ramsey/uuid/src/Fields/SerializableFieldsTrait.php +0 -70
- package/vendor/ramsey/uuid/src/Generator/CombGenerator.php +0 -124
- package/vendor/ramsey/uuid/src/Generator/DceSecurityGenerator.php +0 -139
- package/vendor/ramsey/uuid/src/Generator/DceSecurityGeneratorInterface.php +0 -53
- package/vendor/ramsey/uuid/src/Generator/DefaultNameGenerator.php +0 -51
- package/vendor/ramsey/uuid/src/Generator/DefaultTimeGenerator.php +0 -131
- package/vendor/ramsey/uuid/src/Generator/NameGeneratorFactory.php +0 -30
- package/vendor/ramsey/uuid/src/Generator/NameGeneratorInterface.php +0 -38
- package/vendor/ramsey/uuid/src/Generator/PeclUuidNameGenerator.php +0 -52
- package/vendor/ramsey/uuid/src/Generator/PeclUuidRandomGenerator.php +0 -37
- package/vendor/ramsey/uuid/src/Generator/PeclUuidTimeGenerator.php +0 -39
- package/vendor/ramsey/uuid/src/Generator/RandomBytesGenerator.php +0 -45
- package/vendor/ramsey/uuid/src/Generator/RandomGeneratorFactory.php +0 -30
- package/vendor/ramsey/uuid/src/Generator/RandomGeneratorInterface.php +0 -31
- package/vendor/ramsey/uuid/src/Generator/TimeGeneratorFactory.php +0 -45
- package/vendor/ramsey/uuid/src/Generator/TimeGeneratorInterface.php +0 -38
- package/vendor/ramsey/uuid/src/Generator/UnixTimeGenerator.php +0 -170
- package/vendor/ramsey/uuid/src/Guid/Fields.php +0 -208
- package/vendor/ramsey/uuid/src/Guid/Guid.php +0 -61
- package/vendor/ramsey/uuid/src/Guid/GuidBuilder.php +0 -79
- package/vendor/ramsey/uuid/src/Lazy/LazyUuidFromString.php +0 -226
- package/vendor/ramsey/uuid/src/Math/BrickMathCalculator.php +0 -145
- package/vendor/ramsey/uuid/src/Math/CalculatorInterface.php +0 -106
- package/vendor/ramsey/uuid/src/Math/RoundingMode.php +0 -146
- package/vendor/ramsey/uuid/src/Nonstandard/Fields.php +0 -154
- package/vendor/ramsey/uuid/src/Nonstandard/Uuid.php +0 -37
- package/vendor/ramsey/uuid/src/Nonstandard/UuidBuilder.php +0 -78
- package/vendor/ramsey/uuid/src/Nonstandard/UuidV6.php +0 -113
- package/vendor/ramsey/uuid/src/Provider/Dce/SystemDceSecurityProvider.php +0 -236
- package/vendor/ramsey/uuid/src/Provider/DceSecurityProviderInterface.php +0 -41
- package/vendor/ramsey/uuid/src/Provider/Node/FallbackNodeProvider.php +0 -54
- package/vendor/ramsey/uuid/src/Provider/Node/RandomNodeProvider.php +0 -69
- package/vendor/ramsey/uuid/src/Provider/Node/StaticNodeProvider.php +0 -74
- package/vendor/ramsey/uuid/src/Provider/Node/SystemNodeProvider.php +0 -190
- package/vendor/ramsey/uuid/src/Provider/NodeProviderInterface.php +0 -30
- package/vendor/ramsey/uuid/src/Provider/Time/FixedTimeProvider.php +0 -57
- package/vendor/ramsey/uuid/src/Provider/Time/SystemTimeProvider.php +0 -33
- package/vendor/ramsey/uuid/src/Provider/TimeProviderInterface.php +0 -28
- package/vendor/ramsey/uuid/src/Rfc4122/Fields.php +0 -214
- package/vendor/ramsey/uuid/src/Rfc4122/FieldsInterface.php +0 -129
- package/vendor/ramsey/uuid/src/Rfc4122/MaxTrait.php +0 -41
- package/vendor/ramsey/uuid/src/Rfc4122/MaxUuid.php +0 -27
- package/vendor/ramsey/uuid/src/Rfc4122/NilTrait.php +0 -41
- package/vendor/ramsey/uuid/src/Rfc4122/NilUuid.php +0 -27
- package/vendor/ramsey/uuid/src/Rfc4122/TimeTrait.php +0 -55
- package/vendor/ramsey/uuid/src/Rfc4122/UuidBuilder.php +0 -116
- package/vendor/ramsey/uuid/src/Rfc4122/UuidInterface.php +0 -30
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV1.php +0 -61
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV2.php +0 -119
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV3.php +0 -58
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV4.php +0 -58
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV5.php +0 -58
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV6.php +0 -30
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV7.php +0 -63
- package/vendor/ramsey/uuid/src/Rfc4122/UuidV8.php +0 -65
- package/vendor/ramsey/uuid/src/Rfc4122/Validator.php +0 -45
- package/vendor/ramsey/uuid/src/Rfc4122/VariantTrait.php +0 -87
- package/vendor/ramsey/uuid/src/Rfc4122/Version.php +0 -139
- package/vendor/ramsey/uuid/src/Rfc4122/VersionTrait.php +0 -57
- package/vendor/ramsey/uuid/src/TimeBasedUuidFactoryInterface.php +0 -48
- package/vendor/ramsey/uuid/src/TimeBasedUuidInterface.php +0 -30
- package/vendor/ramsey/uuid/src/Type/Decimal.php +0 -135
- package/vendor/ramsey/uuid/src/Type/Hexadecimal.php +0 -109
- package/vendor/ramsey/uuid/src/Type/Integer.php +0 -145
- package/vendor/ramsey/uuid/src/Type/NumberInterface.php +0 -28
- package/vendor/ramsey/uuid/src/Type/Time.php +0 -108
- package/vendor/ramsey/uuid/src/Type/TypeInterface.php +0 -45
- package/vendor/ramsey/uuid/src/Uuid.php +0 -645
- package/vendor/ramsey/uuid/src/UuidFactory.php +0 -503
- package/vendor/ramsey/uuid/src/UuidFactoryInterface.php +0 -184
- package/vendor/ramsey/uuid/src/UuidInterface.php +0 -114
- package/vendor/ramsey/uuid/src/Validator/GenericValidator.php +0 -45
- package/vendor/ramsey/uuid/src/Validator/ValidatorInterface.php +0 -39
- package/vendor/ramsey/uuid/src/Variant.php +0 -60
- package/vendor/ramsey/uuid/src/functions.php +0 -160
- package/vendor/ramsey/uuid/tests/BinaryUtilsTest.php +0 -381
- package/vendor/ramsey/uuid/tests/Builder/FallbackBuilderTest.php +0 -198
- package/vendor/ramsey/uuid/tests/Codec/GuidStringCodecTest.php +0 -118
- package/vendor/ramsey/uuid/tests/Codec/OrderedTimeCodecTest.php +0 -258
- package/vendor/ramsey/uuid/tests/Codec/StringCodecTest.php +0 -149
- package/vendor/ramsey/uuid/tests/Converter/Number/GenericNumberConverterTest.php +0 -28
- package/vendor/ramsey/uuid/tests/Converter/Time/GenericTimeConverterTest.php +0 -147
- package/vendor/ramsey/uuid/tests/Converter/Time/PhpTimeConverterTest.php +0 -199
- package/vendor/ramsey/uuid/tests/Converter/Time/UnixTimeConverterTest.php +0 -202
- package/vendor/ramsey/uuid/tests/Encoder/TimestampFirstCombCodecTest.php +0 -105
- package/vendor/ramsey/uuid/tests/Encoder/TimestampLastCombCodecTest.php +0 -106
- package/vendor/ramsey/uuid/tests/ExpectedBehaviorTest.php +0 -573
- package/vendor/ramsey/uuid/tests/FeatureSetTest.php +0 -88
- package/vendor/ramsey/uuid/tests/FunctionsTest.php +0 -151
- package/vendor/ramsey/uuid/tests/Generator/CombGeneratorTest.php +0 -134
- package/vendor/ramsey/uuid/tests/Generator/DceSecurityGeneratorTest.php +0 -282
- package/vendor/ramsey/uuid/tests/Generator/DefaultNameGeneratorTest.php +0 -83
- package/vendor/ramsey/uuid/tests/Generator/DefaultTimeGeneratorTest.php +0 -202
- package/vendor/ramsey/uuid/tests/Generator/NameGeneratorFactoryTest.php +0 -19
- package/vendor/ramsey/uuid/tests/Generator/PeclUuidNameGeneratorTest.php +0 -107
- package/vendor/ramsey/uuid/tests/Generator/PeclUuidRandomGeneratorTest.php +0 -30
- package/vendor/ramsey/uuid/tests/Generator/PeclUuidTimeGeneratorTest.php +0 -30
- package/vendor/ramsey/uuid/tests/Generator/RandomBytesGeneratorTest.php +0 -70
- package/vendor/ramsey/uuid/tests/Generator/RandomGeneratorFactoryTest.php +0 -19
- package/vendor/ramsey/uuid/tests/Generator/TimeGeneratorFactoryTest.php +0 -33
- package/vendor/ramsey/uuid/tests/Generator/UnixTimeGeneratorTest.php +0 -204
- package/vendor/ramsey/uuid/tests/Guid/FieldsTest.php +0 -235
- package/vendor/ramsey/uuid/tests/Guid/GuidBuilderTest.php +0 -33
- package/vendor/ramsey/uuid/tests/Math/BrickMathCalculatorTest.php +0 -116
- package/vendor/ramsey/uuid/tests/Nonstandard/FieldsTest.php +0 -84
- package/vendor/ramsey/uuid/tests/Nonstandard/UuidBuilderTest.php +0 -33
- package/vendor/ramsey/uuid/tests/Nonstandard/UuidV6Test.php +0 -192
- package/vendor/ramsey/uuid/tests/Provider/Dce/SystemDceSecurityProviderTest.php +0 -505
- package/vendor/ramsey/uuid/tests/Provider/Node/FallbackNodeProviderTest.php +0 -87
- package/vendor/ramsey/uuid/tests/Provider/Node/RandomNodeProviderTest.php +0 -124
- package/vendor/ramsey/uuid/tests/Provider/Node/StaticNodeProviderTest.php +0 -58
- package/vendor/ramsey/uuid/tests/Provider/Node/SystemNodeProviderTest.php +0 -950
- package/vendor/ramsey/uuid/tests/Provider/Time/FixedTimeProviderTest.php +0 -41
- package/vendor/ramsey/uuid/tests/Provider/Time/SystemTimeProviderTest.php +0 -20
- package/vendor/ramsey/uuid/tests/Rfc4122/FieldsTest.php +0 -260
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidBuilderTest.php +0 -145
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV1Test.php +0 -123
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV2Test.php +0 -214
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV3Test.php +0 -56
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV4Test.php +0 -56
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV5Test.php +0 -56
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV6Test.php +0 -221
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV7Test.php +0 -131
- package/vendor/ramsey/uuid/tests/Rfc4122/UuidV8Test.php +0 -56
- package/vendor/ramsey/uuid/tests/Rfc4122/ValidatorTest.php +0 -122
- package/vendor/ramsey/uuid/tests/Rfc4122/VariantTraitTest.php +0 -109
- package/vendor/ramsey/uuid/tests/TestCase.php +0 -29
- package/vendor/ramsey/uuid/tests/Type/DecimalTest.php +0 -305
- package/vendor/ramsey/uuid/tests/Type/HexadecimalTest.php +0 -112
- package/vendor/ramsey/uuid/tests/Type/IntegerTest.php +0 -235
- package/vendor/ramsey/uuid/tests/Type/TimeTest.php +0 -120
- package/vendor/ramsey/uuid/tests/UuidFactoryTest.php +0 -233
- package/vendor/ramsey/uuid/tests/UuidTest.php +0 -1910
- package/vendor/ramsey/uuid/tests/Validator/GenericValidatorTest.php +0 -98
- package/vendor/ramsey/uuid/tests/benchmark/GuidConversionBench.php +0 -43
- package/vendor/ramsey/uuid/tests/benchmark/NonLazyUuidConversionBench.php +0 -39
- package/vendor/ramsey/uuid/tests/benchmark/UuidFieldExtractionBench.php +0 -86
- package/vendor/ramsey/uuid/tests/benchmark/UuidGenerationBench.php +0 -113
- package/vendor/ramsey/uuid/tests/benchmark/UuidSerializationBench.php +0 -206
- package/vendor/ramsey/uuid/tests/benchmark/UuidStringConversionBench.php +0 -257
- package/vendor/ramsey/uuid/tests/bootstrap.php +0 -12
- package/vendor/ramsey/uuid/tests/static-analysis/UuidIsImmutable.php +0 -96
- package/vendor/ramsey/uuid/tests/static-analysis/UuidIsNeverEmpty.php +0 -36
- package/vendor/ramsey/uuid/tests/static-analysis/ValidUuidIsNonEmpty.php +0 -44
- package/vendor/ramsey/uuid/tests/static-analysis/stubs.php +0 -33
- package/vendor/symfony/polyfill-ctype/Ctype.php +0 -232
- package/vendor/symfony/polyfill-ctype/LICENSE +0 -19
- package/vendor/symfony/polyfill-ctype/README.md +0 -12
- package/vendor/symfony/polyfill-ctype/bootstrap.php +0 -50
- package/vendor/symfony/polyfill-ctype/bootstrap80.php +0 -46
- package/vendor/symfony/polyfill-ctype/composer.json +0 -41
- package/vendor/symfony/polyfill-mbstring/LICENSE +0 -19
- package/vendor/symfony/polyfill-mbstring/Mbstring.php +0 -947
- package/vendor/symfony/polyfill-mbstring/README.md +0 -13
- package/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php +0 -119
- package/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +0 -1397
- package/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php +0 -5
- package/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +0 -1489
- package/vendor/symfony/polyfill-mbstring/bootstrap.php +0 -151
- package/vendor/symfony/polyfill-mbstring/bootstrap80.php +0 -147
- package/vendor/symfony/polyfill-mbstring/composer.json +0 -41
- package/vendor/symfony/polyfill-php80/LICENSE +0 -19
- package/vendor/symfony/polyfill-php80/Php80.php +0 -115
- package/vendor/symfony/polyfill-php80/PhpToken.php +0 -103
- package/vendor/symfony/polyfill-php80/README.md +0 -25
- package/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php +0 -31
- package/vendor/symfony/polyfill-php80/Resources/stubs/PhpToken.php +0 -16
- package/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php +0 -20
- package/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php +0 -16
- package/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php +0 -16
- package/vendor/symfony/polyfill-php80/bootstrap.php +0 -42
- package/vendor/symfony/polyfill-php80/composer.json +0 -40
- package/vendor/vlucas/phpdotenv/.editorconfig +0 -15
- package/vendor/vlucas/phpdotenv/.gitattributes +0 -17
- package/vendor/vlucas/phpdotenv/.github/CODE_OF_CONDUCT.md +0 -132
- package/vendor/vlucas/phpdotenv/.github/CONTRIBUTING.md +0 -30
- package/vendor/vlucas/phpdotenv/.github/FUNDING.yml +0 -2
- package/vendor/vlucas/phpdotenv/.github/SECURITY.md +0 -14
- package/vendor/vlucas/phpdotenv/.github/workflows/static.yml +0 -74
- package/vendor/vlucas/phpdotenv/.github/workflows/tests.yml +0 -70
- package/vendor/vlucas/phpdotenv/LICENSE +0 -30
- package/vendor/vlucas/phpdotenv/Makefile +0 -26
- package/vendor/vlucas/phpdotenv/README.md +0 -363
- package/vendor/vlucas/phpdotenv/UPGRADING.md +0 -196
- package/vendor/vlucas/phpdotenv/composer.json +0 -60
- package/vendor/vlucas/phpdotenv/phpstan-baseline.neon +0 -21
- package/vendor/vlucas/phpdotenv/phpstan.neon.dist +0 -7
- package/vendor/vlucas/phpdotenv/phpunit.xml.dist +0 -13
- package/vendor/vlucas/phpdotenv/psalm-baseline.xml +0 -28
- package/vendor/vlucas/phpdotenv/psalm.xml +0 -13
- package/vendor/vlucas/phpdotenv/src/Dotenv.php +0 -267
- package/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php +0 -12
- package/vendor/vlucas/phpdotenv/src/Exception/InvalidEncodingException.php +0 -12
- package/vendor/vlucas/phpdotenv/src/Exception/InvalidFileException.php +0 -12
- package/vendor/vlucas/phpdotenv/src/Exception/InvalidPathException.php +0 -12
- package/vendor/vlucas/phpdotenv/src/Exception/ValidationException.php +0 -12
- package/vendor/vlucas/phpdotenv/src/Loader/Loader.php +0 -47
- package/vendor/vlucas/phpdotenv/src/Loader/LoaderInterface.php +0 -20
- package/vendor/vlucas/phpdotenv/src/Loader/Resolver.php +0 -65
- package/vendor/vlucas/phpdotenv/src/Parser/Entry.php +0 -59
- package/vendor/vlucas/phpdotenv/src/Parser/EntryParser.php +0 -300
- package/vendor/vlucas/phpdotenv/src/Parser/Lexer.php +0 -58
- package/vendor/vlucas/phpdotenv/src/Parser/Lines.php +0 -127
- package/vendor/vlucas/phpdotenv/src/Parser/Parser.php +0 -53
- package/vendor/vlucas/phpdotenv/src/Parser/ParserInterface.php +0 -19
- package/vendor/vlucas/phpdotenv/src/Parser/Value.php +0 -88
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/AdapterInterface.php +0 -15
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/ApacheAdapter.php +0 -89
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/ArrayAdapter.php +0 -80
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/EnvConstAdapter.php +0 -89
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/GuardedWriter.php +0 -85
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/ImmutableWriter.php +0 -110
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiReader.php +0 -48
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/MultiWriter.php +0 -64
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/PutenvAdapter.php +0 -91
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReaderInterface.php +0 -17
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/ReplacingWriter.php +0 -104
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/ServerConstAdapter.php +0 -89
- package/vendor/vlucas/phpdotenv/src/Repository/Adapter/WriterInterface.php +0 -27
- package/vendor/vlucas/phpdotenv/src/Repository/AdapterRepository.php +0 -107
- package/vendor/vlucas/phpdotenv/src/Repository/RepositoryBuilder.php +0 -272
- package/vendor/vlucas/phpdotenv/src/Repository/RepositoryInterface.php +0 -51
- package/vendor/vlucas/phpdotenv/src/Store/File/Paths.php +0 -44
- package/vendor/vlucas/phpdotenv/src/Store/File/Reader.php +0 -81
- package/vendor/vlucas/phpdotenv/src/Store/FileStore.php +0 -72
- package/vendor/vlucas/phpdotenv/src/Store/StoreBuilder.php +0 -141
- package/vendor/vlucas/phpdotenv/src/Store/StoreInterface.php +0 -17
- package/vendor/vlucas/phpdotenv/src/Store/StringStore.php +0 -37
- package/vendor/vlucas/phpdotenv/src/Util/Regex.php +0 -112
- package/vendor/vlucas/phpdotenv/src/Util/Str.php +0 -98
- package/vendor/vlucas/phpdotenv/src/Validator.php +0 -209
- package/vendor/vlucas/phpdotenv/tests/Dotenv/DotenvTest.php +0 -387
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Loader/LoaderTest.php +0 -86
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/EntryParserTest.php +0 -234
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/LexerTest.php +0 -40
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/LinesTest.php +0 -53
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Parser/ParserTest.php +0 -98
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/ArrayAdapterTest.php +0 -57
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/EnvConstAdapterTest.php +0 -75
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/PutenvAdapterTest.php +0 -52
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/Adapter/ServerConstAdapterTest.php +0 -75
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Repository/RepositoryTest.php +0 -305
- package/vendor/vlucas/phpdotenv/tests/Dotenv/Store/StoreTest.php +0 -141
- package/vendor/vlucas/phpdotenv/tests/Dotenv/ValidatorTest.php +0 -479
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/.env +0 -5
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/assertions.env +0 -18
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/booleans.env +0 -33
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/commented.env +0 -15
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/empty.env +0 -1
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/example.env +0 -1
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/exported.env +0 -7
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/immutable.env +0 -1
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/integers.env +0 -17
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/large.env +0 -2
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/multibyte.env +0 -3
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/multiline.env +0 -14
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/multiple.env +0 -4
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/mutable.env +0 -1
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/nested.env +0 -15
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/quoted.env +0 -11
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/specialchars.env +0 -8
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/unicodevarnames.env +0 -2
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/utf8-with-bom-encoding.env +0 -3
- package/vendor/vlucas/phpdotenv/tests/fixtures/env/windows.env +0 -1
- package/vendor/vlucas/phpdotenv/vendor-bin/phpstan/composer.json +0 -16
- package/vendor/vlucas/phpdotenv/vendor-bin/psalm/composer.json +0 -9
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
.. _database:
|
|
2
|
-
|
|
3
|
-
===================
|
|
4
|
-
Using In a Database
|
|
5
|
-
===================
|
|
6
|
-
|
|
7
|
-
.. tip::
|
|
8
|
-
|
|
9
|
-
`ramsey/uuid-doctrine`_ allows the use of ramsey/uuid as a `Doctrine field
|
|
10
|
-
type`_. If you use Doctrine, it's a great option for working with UUIDs and
|
|
11
|
-
databases.
|
|
12
|
-
|
|
13
|
-
There are several strategies to consider when working with UUIDs in a database.
|
|
14
|
-
Among these are whether to store the string representation or bytes and whether
|
|
15
|
-
the UUID column should be treated as a primary key. We'll discuss a few of these
|
|
16
|
-
approaches here, but the final decision on how to use UUIDs in a database is up
|
|
17
|
-
to you since your needs will be different from those of others.
|
|
18
|
-
|
|
19
|
-
.. note::
|
|
20
|
-
|
|
21
|
-
All database code examples in this section assume the use of `MariaDB`_ and
|
|
22
|
-
`PHP Data Objects (PDO)`_. If using a different database engine or
|
|
23
|
-
connection library, your code will differ, but the general concepts should
|
|
24
|
-
remain the same.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
.. _database.string:
|
|
28
|
-
|
|
29
|
-
Storing As a String
|
|
30
|
-
###################
|
|
31
|
-
|
|
32
|
-
Perhaps the easiest way to store a UUID to a database is to create a ``char(36)``
|
|
33
|
-
column and store the UUID as a string. When stored as a string, UUIDs require
|
|
34
|
-
no special treatment in SQL statements or when displaying them.
|
|
35
|
-
|
|
36
|
-
The primary drawback is the size. At 36 characters, UUIDs can take up a lot of
|
|
37
|
-
space, and when handling a lot of data, this can add up.
|
|
38
|
-
|
|
39
|
-
.. code-block:: sql
|
|
40
|
-
:caption: Create a table with a column for UUIDs
|
|
41
|
-
:name: database.uuid-column-example
|
|
42
|
-
|
|
43
|
-
CREATE TABLE `notes` (
|
|
44
|
-
`uuid` char(36) NOT NULL,
|
|
45
|
-
`notes` text NOT NULL
|
|
46
|
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
47
|
-
|
|
48
|
-
Using this database table, we can store the string UUID using code similar to
|
|
49
|
-
this (assume some of the variables in this example have been set beforehand):
|
|
50
|
-
|
|
51
|
-
.. code-block:: php
|
|
52
|
-
:caption: Store a string UUID to the uuid column
|
|
53
|
-
:name: database.uuid-column-store-example
|
|
54
|
-
|
|
55
|
-
use Ramsey\Uuid\Uuid;
|
|
56
|
-
|
|
57
|
-
$uuid = Uuid::uuid4();
|
|
58
|
-
|
|
59
|
-
$dbh = new PDO($dsn, $username, $password);
|
|
60
|
-
|
|
61
|
-
$sth = $dbh->prepare('
|
|
62
|
-
INSERT INTO notes (
|
|
63
|
-
uuid,
|
|
64
|
-
notes
|
|
65
|
-
) VALUES (
|
|
66
|
-
:uuid,
|
|
67
|
-
:notes
|
|
68
|
-
)
|
|
69
|
-
');
|
|
70
|
-
|
|
71
|
-
$sth->execute([
|
|
72
|
-
':uuid' => $uuid->toString(),
|
|
73
|
-
':notes' => $notes,
|
|
74
|
-
]);
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
.. _database.bytes:
|
|
78
|
-
|
|
79
|
-
Storing As Bytes
|
|
80
|
-
################
|
|
81
|
-
|
|
82
|
-
In :ref:`the previous example <database.uuid-column-store-example>`, we saw how
|
|
83
|
-
to store the string representation of a UUID to a ``char(36)`` column. As
|
|
84
|
-
discussed, the primary drawback is the size. However, if we store the UUID in
|
|
85
|
-
byte form, we only need a ``char(16)`` column, saving over half the space.
|
|
86
|
-
|
|
87
|
-
The primary drawback with this approach is ease-of-use. Since the UUID bytes are
|
|
88
|
-
stored in the database, querying and selecting data becomes more difficult.
|
|
89
|
-
|
|
90
|
-
.. code-block:: sql
|
|
91
|
-
:caption: Create a table with a column for UUID bytes
|
|
92
|
-
:name: database.uuid-bytes-example
|
|
93
|
-
|
|
94
|
-
CREATE TABLE `notes` (
|
|
95
|
-
`uuid` char(16) NOT NULL,
|
|
96
|
-
`notes` text NOT NULL
|
|
97
|
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
98
|
-
|
|
99
|
-
Using this database table, we can store the UUID bytes using code similar to
|
|
100
|
-
this (again, assume some of the variables in this example have been set
|
|
101
|
-
beforehand):
|
|
102
|
-
|
|
103
|
-
.. code-block:: php
|
|
104
|
-
:caption: Store UUID bytes to the uuid column
|
|
105
|
-
:name: database.uuid-bytes-store-example
|
|
106
|
-
|
|
107
|
-
$sth->execute([
|
|
108
|
-
':uuid' => $uuid->getBytes(),
|
|
109
|
-
':notes' => $notes,
|
|
110
|
-
]);
|
|
111
|
-
|
|
112
|
-
Now, when we ``SELECT`` the records from the database, we will need to convert
|
|
113
|
-
the ``notes.uuid`` column to a ramsey/uuid object, so that we are able to use
|
|
114
|
-
it.
|
|
115
|
-
|
|
116
|
-
.. code-block:: php
|
|
117
|
-
:caption: Covert database UUID bytes to UuidInterface instance
|
|
118
|
-
:name: database.uuid-bytes-convert-example
|
|
119
|
-
|
|
120
|
-
use Ramsey\Uuid\Uuid;
|
|
121
|
-
|
|
122
|
-
$uuid = Uuid::uuid4();
|
|
123
|
-
|
|
124
|
-
$dbh = new PDO($dsn, $username, $password);
|
|
125
|
-
|
|
126
|
-
$sth = $dbh->prepare('SELECT uuid, notes FROM notes');
|
|
127
|
-
$sth->execute();
|
|
128
|
-
|
|
129
|
-
foreach ($sth->fetchAll() as $record) {
|
|
130
|
-
$uuid = Uuid::fromBytes($record['uuid']);
|
|
131
|
-
|
|
132
|
-
printf(
|
|
133
|
-
"UUID: %s\nNotes: %s\n\n",
|
|
134
|
-
$uuid->toString(),
|
|
135
|
-
$record['notes']
|
|
136
|
-
);
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
We'll also need to query the database using the bytes.
|
|
140
|
-
|
|
141
|
-
.. code-block:: php
|
|
142
|
-
:caption: Look-up the record from the database, using the UUID bytes
|
|
143
|
-
:name: database.uuid-bytes-select-example
|
|
144
|
-
|
|
145
|
-
use Ramsey\Uuid\Uuid;
|
|
146
|
-
|
|
147
|
-
$uuid = Uuid::fromString('278198d3-fa96-4833-abab-82f9e67f4712');
|
|
148
|
-
|
|
149
|
-
$dbh = new PDO($dsn, $username, $password);
|
|
150
|
-
|
|
151
|
-
$sth = $dbh->prepare('
|
|
152
|
-
SELECT uuid, notes
|
|
153
|
-
FROM notes
|
|
154
|
-
WHERE uuid = :uuid
|
|
155
|
-
');
|
|
156
|
-
|
|
157
|
-
$sth->execute([
|
|
158
|
-
':uuid' => $uuid->getBytes(),
|
|
159
|
-
]);
|
|
160
|
-
|
|
161
|
-
$record = $sth->fetch();
|
|
162
|
-
|
|
163
|
-
if ($record) {
|
|
164
|
-
$uuid = Uuid::fromBytes($record['uuid']);
|
|
165
|
-
|
|
166
|
-
printf(
|
|
167
|
-
"UUID: %s\nNotes: %s\n\n",
|
|
168
|
-
$uuid->toString(),
|
|
169
|
-
$record['notes']
|
|
170
|
-
);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
.. _database.pk:
|
|
175
|
-
|
|
176
|
-
Using As a Primary Key
|
|
177
|
-
######################
|
|
178
|
-
|
|
179
|
-
In the previous examples, we didn't use the UUID as a primary key, but it's
|
|
180
|
-
logical to use the ``notes.uuid`` field as a primary key. There's nothing wrong
|
|
181
|
-
with this approach, but there are a couple of points to consider:
|
|
182
|
-
|
|
183
|
-
* InnoDB stores data in the primary key order
|
|
184
|
-
* All the secondary keys also contain the primary key (in InnoDB)
|
|
185
|
-
|
|
186
|
-
We'll deal with the first point in the section, :ref:`database.order`. For the
|
|
187
|
-
second point, if you are using the string version of the UUID (i.e.,
|
|
188
|
-
``char(36)``), then not only will the primary key be large and take up a lot of
|
|
189
|
-
space, but every secondary key that uses that primary key will also be much
|
|
190
|
-
larger.
|
|
191
|
-
|
|
192
|
-
For this reason, if you choose to use UUIDs as primary keys, it might be worth
|
|
193
|
-
the drawbacks to use UUID bytes (i.e., ``char(16)``) instead of the string
|
|
194
|
-
representation (see :ref:`database.bytes`).
|
|
195
|
-
|
|
196
|
-
.. hint::
|
|
197
|
-
|
|
198
|
-
If not using InnoDB with MySQL or MariaDB, consult your database engine
|
|
199
|
-
documentation to find whether it also has similar properties that will
|
|
200
|
-
factor into your use of UUIDs.
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
.. _database.uk:
|
|
204
|
-
|
|
205
|
-
Using As a Unique Key
|
|
206
|
-
#####################
|
|
207
|
-
|
|
208
|
-
Instead of :ref:`using UUIDs as a primary key <database.pk>`, you may choose to
|
|
209
|
-
use an ``AUTO_INCREMENT`` column with the ``int unsigned`` data type as a
|
|
210
|
-
primary key, while using a ``char(36)`` for UUIDs and setting a ``UNIQUE KEY``
|
|
211
|
-
on this column. This will aid in lookups while helping keep your secondary keys
|
|
212
|
-
small.
|
|
213
|
-
|
|
214
|
-
.. code-block:: sql
|
|
215
|
-
:caption: Use an auto-incrementing column as primary key, with UUID as a unique key
|
|
216
|
-
:name: database.id-auto-increment-uuid-unique-key
|
|
217
|
-
|
|
218
|
-
CREATE TABLE `notes` (
|
|
219
|
-
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
|
220
|
-
`uuid` char(36) NOT NULL,
|
|
221
|
-
`notes` text NOT NULL,
|
|
222
|
-
PRIMARY KEY (`id`),
|
|
223
|
-
UNIQUE KEY `notes_uuid_uk` (`uuid`)
|
|
224
|
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
.. _database.order:
|
|
228
|
-
|
|
229
|
-
Insertion Order and Sorting
|
|
230
|
-
###########################
|
|
231
|
-
|
|
232
|
-
UUID versions 1, 2, 3, 4, and 5 are not *monotonically increasing*. If using
|
|
233
|
-
these versions as primary keys, the inserts will be random, and the data will be
|
|
234
|
-
scattered on disk (for InnoDB). Over time, as the database size grows, lookups
|
|
235
|
-
will become slower and slower.
|
|
236
|
-
|
|
237
|
-
.. tip::
|
|
238
|
-
|
|
239
|
-
See Percona's "`Storing UUID Values in MySQL`_" post, for more details on
|
|
240
|
-
the performance of UUIDs as primary keys.
|
|
241
|
-
|
|
242
|
-
To minimize these problems, two solutions have been devised:
|
|
243
|
-
|
|
244
|
-
1. :ref:`rfc4122.version6` UUIDs
|
|
245
|
-
2. :ref:`rfc4122.version7` UUIDs
|
|
246
|
-
|
|
247
|
-
.. note::
|
|
248
|
-
|
|
249
|
-
We previously recommended the use of the :ref:`timestamp-first COMB
|
|
250
|
-
<customize.timestamp-first-comb-codec>` or :ref:`ordered-time
|
|
251
|
-
<customize.ordered-time-codec>` codecs to solve these problems. However,
|
|
252
|
-
UUID versions 6 and 7 were defined to provide these solutions in a
|
|
253
|
-
standardized way.
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
.. _ramsey/uuid-doctrine: https://github.com/ramsey/uuid-doctrine
|
|
257
|
-
.. _Doctrine field type: https://www.doctrine-project.org/projects/doctrine-dbal/en/2.10/reference/types.html
|
|
258
|
-
.. _MariaDB: https://mariadb.org
|
|
259
|
-
.. _PHP Data Objects (PDO): https://www.php.net/pdo
|
|
260
|
-
.. _Storing UUID Values in MySQL: https://www.percona.com/blog/2014/12/19/store-uuid-optimized-way/
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
.. _faq:
|
|
2
|
-
|
|
3
|
-
=================================
|
|
4
|
-
Frequently Asked Questions (FAQs)
|
|
5
|
-
=================================
|
|
6
|
-
|
|
7
|
-
.. contents::
|
|
8
|
-
:local:
|
|
9
|
-
:depth: 1
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
.. _faq.rhumsaa-abandoned:
|
|
13
|
-
|
|
14
|
-
How do I fix "rhumsaa/uuid is abandoned" messages?
|
|
15
|
-
##################################################
|
|
16
|
-
|
|
17
|
-
When installing your project's dependencies using Composer, you might see the
|
|
18
|
-
following message:
|
|
19
|
-
|
|
20
|
-
.. code-block:: text
|
|
21
|
-
|
|
22
|
-
Package rhumsaa/uuid is abandoned; you should avoid using it. Use
|
|
23
|
-
ramsey/uuid instead.
|
|
24
|
-
|
|
25
|
-
Don't panic. Simply execute the following commands with Composer:
|
|
26
|
-
|
|
27
|
-
.. code-block:: bash
|
|
28
|
-
|
|
29
|
-
composer remove rhumsaa/uuid
|
|
30
|
-
composer require ramsey/uuid=^2.9
|
|
31
|
-
|
|
32
|
-
After doing so, you will have the latest ramsey/uuid package in the 2.x series,
|
|
33
|
-
and there will be no need to modify any code; the namespace in the 2.x series is
|
|
34
|
-
still ``Rhumsaa``.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
.. _faq.final:
|
|
38
|
-
|
|
39
|
-
Why does ramsey/uuid use ``final``?
|
|
40
|
-
###################################
|
|
41
|
-
|
|
42
|
-
You might notice that many of the concrete classes returned in ramsey/uuid are
|
|
43
|
-
marked as ``final``. There are specific reasons for this choice, and I will
|
|
44
|
-
offer a few solutions for those looking to extend or mock the classes for
|
|
45
|
-
testing purposes.
|
|
46
|
-
|
|
47
|
-
But Why?
|
|
48
|
-
--------
|
|
49
|
-
|
|
50
|
-
.. raw:: html
|
|
51
|
-
|
|
52
|
-
<div style="width:100%;height:0;padding-bottom:56%;position:relative;">
|
|
53
|
-
<iframe src="https://giphy.com/embed/eauCbbW6MvqKI" width="100%" height="100%" style="position:absolute" frameBorder="0" class="giphy-embed" allowFullScreen></iframe>
|
|
54
|
-
</div>
|
|
55
|
-
<p><a href="https://giphy.com/gifs/eauCbbW6MvqKI">via GIPHY</a></p>
|
|
56
|
-
|
|
57
|
-
First, let's take a look at why ramsey/uuid uses ``final``.
|
|
58
|
-
|
|
59
|
-
UUIDs are defined by a set of rules --- published as `RFC 4122`_ --- and those
|
|
60
|
-
rules shouldn't change. If they do, then it's no longer a UUID --- at least not
|
|
61
|
-
as defined by `RFC 4122`_.
|
|
62
|
-
|
|
63
|
-
As an example, let's think about :php:class:`Rfc4122\\UuidV1
|
|
64
|
-
<Ramsey\\Uuid\\Rfc4122\\UuidV1>`. If our application wants to do something
|
|
65
|
-
special with this type, it might use the ``instanceof`` operator to check that a
|
|
66
|
-
variable is a UuidV1, or it might use a type hint on a method argument. If a
|
|
67
|
-
third-party library passes a UUID object to us that extends UuidV1 but
|
|
68
|
-
overrides some very important internal logic, then we may no longer have a
|
|
69
|
-
version 1 UUID. Perhaps we can all be adults and play nicely, but ramsey/uuid
|
|
70
|
-
cannot make any guarantees for any subclasses of UuidV1.
|
|
71
|
-
|
|
72
|
-
However, ramsey/uuid *can* make guarantees about classes that implement
|
|
73
|
-
:php:interface:`UuidInterface <Ramsey\\Uuid\\UuidInterface>` or
|
|
74
|
-
:php:interface:`Rfc4122\\UuidInterface <Ramsey\\Uuid\\Rfc4122\\UuidInterface>`.
|
|
75
|
-
|
|
76
|
-
So, if we're working with an instance of a class that is marked ``final``, we
|
|
77
|
-
can guarantee that the rules for the creation of that object will not change,
|
|
78
|
-
even if a third-party library passes us an instance of the same class.
|
|
79
|
-
|
|
80
|
-
This is the reason why ramsey/uuid specifies certain :ref:`argument and return
|
|
81
|
-
types <reference.types>` that are marked ``final``. Since these are ``final``,
|
|
82
|
-
ramsey/uuid is able to guarantee the type of data these value objects contain.
|
|
83
|
-
:php:class:`Type\\Integer <Ramsey\\Uuid\\Type\\Integer>` should never contain
|
|
84
|
-
any characters other than numeral digits, and :php:class:`Type\\Hexadecimal
|
|
85
|
-
<Ramsey\\Uuid\\Type\\Hexadecimal>` should never contain any characters other
|
|
86
|
-
than hexadecimal digits. If other libraries could extend these and return them
|
|
87
|
-
from UUID instances, then ramsey/uuid cannot guarantee their values.
|
|
88
|
-
|
|
89
|
-
This is very similar to using strict types with ``int``, ``float``, or ``bool``.
|
|
90
|
-
These types cannot change, so think of final classes in ramsey/uuid as types
|
|
91
|
-
that cannot change.
|
|
92
|
-
|
|
93
|
-
Overriding Behavior
|
|
94
|
-
-------------------
|
|
95
|
-
|
|
96
|
-
You may override the behavior of ramsey/uuid as much as you want. Despite the
|
|
97
|
-
use of ``final``, the library is very flexible. Take a look at the myriad
|
|
98
|
-
opportunities to change how the library works:
|
|
99
|
-
|
|
100
|
-
* :ref:`rfc4122.version1.random`
|
|
101
|
-
* :ref:`customize.timestamp-first-comb-codec`
|
|
102
|
-
* :ref:`customize.factory`
|
|
103
|
-
* :ref:`And more... <customize>`
|
|
104
|
-
|
|
105
|
-
ramsey/uuid is able to provide this flexibility through the use of `interfaces`_,
|
|
106
|
-
`factories`_, and `dependency injection`_.
|
|
107
|
-
|
|
108
|
-
At the same time, ramsey/uuid is able to guarantee that neither a
|
|
109
|
-
:php:class:`UuidV1 <Ramsey\\Uuid\\Rfc4122\\UuidV1>` nor a
|
|
110
|
-
:php:class:`UuidV4 <Ramsey\\Uuid\\Rfc4122\\UuidV4>` nor an
|
|
111
|
-
:php:class:`Integer <Ramsey\\Uuid\\Type\\Integer>` nor a
|
|
112
|
-
:php:class:`Time <Ramsey\\Uuid\\Type\\Time>`, etc. will ever change because of
|
|
113
|
-
`downstream`_ code.
|
|
114
|
-
|
|
115
|
-
UUIDs have specific rules that make them practically unique. ramsey/uuid ensures
|
|
116
|
-
that other code cannot change this expectation while allowing your code and
|
|
117
|
-
third-party libraries to change how UUIDs are generated and to return different
|
|
118
|
-
types of UUIDs not specified by `RFC 4122`_.
|
|
119
|
-
|
|
120
|
-
Testing With UUIDs
|
|
121
|
-
------------------
|
|
122
|
-
|
|
123
|
-
Sometimes, the use of ``final`` can throw a wrench in our ability to write
|
|
124
|
-
tests, but it doesn't have to be that way. To learn a few techniques for using
|
|
125
|
-
ramsey/uuid instances in your tests, take a look at :ref:`testing`.
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
.. _RFC 4122: https://tools.ietf.org/html/rfc4122
|
|
129
|
-
.. _interfaces: https://www.php.net/interfaces
|
|
130
|
-
.. _factories: https://en.wikipedia.org/wiki/Factory_%28object-oriented_programming%29
|
|
131
|
-
.. _dependency injection: https://en.wikipedia.org/wiki/Dependency_injection
|
|
132
|
-
.. _downstream: https://en.wikipedia.org/wiki/Downstream_(software_development)
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
.. _index:
|
|
2
|
-
|
|
3
|
-
==================
|
|
4
|
-
ramsey/uuid Manual
|
|
5
|
-
==================
|
|
6
|
-
|
|
7
|
-
For `ramsey/uuid <https://github.com/ramsey/uuid>`_ |version|. Updated on |today|.
|
|
8
|
-
|
|
9
|
-
This work is licensed under the `Creative Commons Attribution 4.0 International
|
|
10
|
-
<https://creativecommons.org/licenses/by/4.0/>`_ license.
|
|
11
|
-
|
|
12
|
-
.. admonition:: Support ramsey/uuid!
|
|
13
|
-
:class: tip
|
|
14
|
-
|
|
15
|
-
Your support encourages and motivates me to continue building and
|
|
16
|
-
maintaining open source software. If you benefit from my work, consider
|
|
17
|
-
supporting me financially.
|
|
18
|
-
|
|
19
|
-
You may support ramsey/uuid as an individual through `GitHub Sponsors
|
|
20
|
-
<https://github.com/sponsors/ramsey>`_ or as a company through the
|
|
21
|
-
**Tidelift Subscription**. With the Tidelift Subscription, you can get
|
|
22
|
-
commercial maintenance and assurances, while supporting my work.
|
|
23
|
-
|
|
24
|
-
Learn more about :ref:`ramsey/uuid for enterprise <tidelift>`!
|
|
25
|
-
|
|
26
|
-
Contents
|
|
27
|
-
--------
|
|
28
|
-
|
|
29
|
-
.. toctree::
|
|
30
|
-
:maxdepth: 2
|
|
31
|
-
:includehidden:
|
|
32
|
-
|
|
33
|
-
introduction
|
|
34
|
-
quickstart
|
|
35
|
-
rfc4122
|
|
36
|
-
nonstandard
|
|
37
|
-
database
|
|
38
|
-
customize
|
|
39
|
-
testing
|
|
40
|
-
upgrading
|
|
41
|
-
FAQs <faq>
|
|
42
|
-
reference
|
|
43
|
-
copyright
|
|
44
|
-
tidelift
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
Indices and Tables
|
|
48
|
-
------------------
|
|
49
|
-
|
|
50
|
-
* :ref:`genindex`
|
|
51
|
-
* :ref:`search`
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
.. _introduction:
|
|
2
|
-
|
|
3
|
-
============
|
|
4
|
-
Introduction
|
|
5
|
-
============
|
|
6
|
-
|
|
7
|
-
ramsey/uuid is a PHP library for generating and working with `RFC 4122`_ version
|
|
8
|
-
1, 2, 3, 4, 5, 6, and 7 universally unique identifiers (UUID). ramsey/uuid also
|
|
9
|
-
supports optional and non-standard features, such as GUIDs and other approaches
|
|
10
|
-
for encoding/decoding UUIDs.
|
|
11
|
-
|
|
12
|
-
What Is a UUID?
|
|
13
|
-
###############
|
|
14
|
-
|
|
15
|
-
A universally unique identifier, or UUID, is a 128-bit unsigned integer, usually
|
|
16
|
-
represented as a hexadecimal string split into five groups with dashes. The most
|
|
17
|
-
widely-known and used types of UUIDs are defined by `RFC 4122`_.
|
|
18
|
-
|
|
19
|
-
A UUID, when encoded in hexadecimal string format, looks like:
|
|
20
|
-
|
|
21
|
-
.. code-block:: text
|
|
22
|
-
|
|
23
|
-
ebb5c735-0308-4e3c-9aea-8a270aebfe15
|
|
24
|
-
|
|
25
|
-
The probability of duplicating a UUID is close to zero, so they are a great
|
|
26
|
-
choice for generating unique identifiers in distributed systems.
|
|
27
|
-
|
|
28
|
-
UUIDs can also be stored in binary format, as a string of 16 bytes.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
.. _RFC 4122: https://tools.ietf.org/html/rfc4122
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
.. _nonstandard.guid:
|
|
2
|
-
|
|
3
|
-
===================================
|
|
4
|
-
Globally Unique Identifiers (GUIDs)
|
|
5
|
-
===================================
|
|
6
|
-
|
|
7
|
-
.. tip::
|
|
8
|
-
|
|
9
|
-
Using these techniques to work with GUIDs is useful if you're working with
|
|
10
|
-
identifiers that have been stored in GUID byte order. For example, this is
|
|
11
|
-
the case if working with the ``UNIQUEIDENTIFIER`` data type in Microsoft SQL
|
|
12
|
-
Server. This is a GUID, stored as a 16-byte binary string. If working
|
|
13
|
-
directly with the bytes, you may use the GUID functionality in ramsey/uuid
|
|
14
|
-
to properly handle this data type.
|
|
15
|
-
|
|
16
|
-
According to the Windows Dev Center article on `GUID structure`_, "GUIDs are the
|
|
17
|
-
Microsoft implementation of the distributed computing environment (DCE)
|
|
18
|
-
universally unique identifier." For all intents and purposes, a GUID string
|
|
19
|
-
representation is identical to that of an `RFC 4122`_ UUID. For historical
|
|
20
|
-
reasons, *the byte order is not*.
|
|
21
|
-
|
|
22
|
-
The `.NET Framework documentation`_ explains:
|
|
23
|
-
|
|
24
|
-
Note that the order of bytes in the returned byte array is different from
|
|
25
|
-
the string representation of a Guid value. The order of the beginning
|
|
26
|
-
four-byte group and the next two two-byte groups is reversed, whereas the
|
|
27
|
-
order of the last two-byte group and the closing six-byte group is the same.
|
|
28
|
-
|
|
29
|
-
This is best explained by example.
|
|
30
|
-
|
|
31
|
-
.. code-block:: php
|
|
32
|
-
:caption: Decoding a GUID from byte representation
|
|
33
|
-
:name: nonstandard.guid.decode-bytes-example
|
|
34
|
-
|
|
35
|
-
use Ramsey\Uuid\FeatureSet;
|
|
36
|
-
use Ramsey\Uuid\UuidFactory;
|
|
37
|
-
|
|
38
|
-
// The bytes of a GUID previously stored in some datastore.
|
|
39
|
-
$guidBytes = hex2bin('0eab93fc9ec9584b975e9c5e68c53624');
|
|
40
|
-
|
|
41
|
-
$useGuids = true;
|
|
42
|
-
$featureSet = new FeatureSet($useGuids);
|
|
43
|
-
$factory = new UuidFactory($featureSet);
|
|
44
|
-
|
|
45
|
-
$guid = $factory->fromBytes($guidBytes);
|
|
46
|
-
|
|
47
|
-
printf(
|
|
48
|
-
"Class: %s\nGUID: %s\nVersion: %d\nBytes: %s\n",
|
|
49
|
-
get_class($guid),
|
|
50
|
-
$guid->toString(),
|
|
51
|
-
$guid->getFields()->getVersion()?->value,
|
|
52
|
-
bin2hex($guid->getBytes())
|
|
53
|
-
);
|
|
54
|
-
|
|
55
|
-
This transforms the bytes of a GUID, as represented by ``$guidBytes``, into a
|
|
56
|
-
:php:class:`Ramsey\\Uuid\\Guid\\Guid` instance and prints out some details about
|
|
57
|
-
it. It looks something like this:
|
|
58
|
-
|
|
59
|
-
.. code-block:: text
|
|
60
|
-
|
|
61
|
-
Class: Ramsey\Uuid\Guid\Guid
|
|
62
|
-
GUID: fc93ab0e-c99e-4b58-975e-9c5e68c53624
|
|
63
|
-
Version: 4
|
|
64
|
-
Bytes: 0eab93fc9ec9584b975e9c5e68c53624
|
|
65
|
-
|
|
66
|
-
Note the difference between the string GUID and the bytes. The bytes are
|
|
67
|
-
arranged like this:
|
|
68
|
-
|
|
69
|
-
.. code-block:: text
|
|
70
|
-
|
|
71
|
-
0e ab 93 fc 9e c9 58 4b 97 5e 9c 5e 68 c5 36 24
|
|
72
|
-
|
|
73
|
-
In an `RFC 4122`_ UUID, the bytes are stored in the same order as you see
|
|
74
|
-
presented in the string representation. This is often called *network byte
|
|
75
|
-
order*, or *big-endian* order. In a GUID, the order of the bytes are reversed
|
|
76
|
-
in each grouping for the first 64 bits and stored in *little-endian* order. The
|
|
77
|
-
remaining 64 bits are stored in network byte order. See `Endianness
|
|
78
|
-
<#nonstandard-guid-endianness>`_ to learn more.
|
|
79
|
-
|
|
80
|
-
.. caution::
|
|
81
|
-
|
|
82
|
-
The bytes themselves do not indicate their order. If you decode GUID bytes
|
|
83
|
-
as a UUID or UUID bytes as a GUID, you will get the wrong values. However,
|
|
84
|
-
you can always create a GUID or UUID from the same string value; the bytes
|
|
85
|
-
for each will be in a different order, even though the string is the same.
|
|
86
|
-
|
|
87
|
-
The key is to know ahead of time in what order the bytes are stored. Then,
|
|
88
|
-
you will be able to decode them using the correct approach.
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
Converting GUIDs to UUIDs
|
|
92
|
-
#########################
|
|
93
|
-
|
|
94
|
-
Continuing from the example, :ref:`nonstandard.guid.decode-bytes-example`, we
|
|
95
|
-
can take the GUID string representation and convert it into a standard UUID.
|
|
96
|
-
|
|
97
|
-
.. code-block:: php
|
|
98
|
-
:caption: Convert a GUID to a UUID
|
|
99
|
-
:name: nonstandard.guid.convert-example
|
|
100
|
-
|
|
101
|
-
$uuid = Uuid::fromString($guid->toString());
|
|
102
|
-
|
|
103
|
-
printf(
|
|
104
|
-
"Class: %s\nUUID: %s\nVersion: %d\nBytes: %s\n",
|
|
105
|
-
get_class($uuid),
|
|
106
|
-
$uuid->toString(),
|
|
107
|
-
$uuid->getFields()->getVersion()?->value,
|
|
108
|
-
bin2hex($uuid->getBytes())
|
|
109
|
-
);
|
|
110
|
-
|
|
111
|
-
Because the GUID was a version 4, random UUID, this creates an instance of
|
|
112
|
-
:php:class:`Ramsey\\Uuid\\Rfc4122\\UuidV4` from the GUID string and prints out a
|
|
113
|
-
few details about it. It looks something like this:
|
|
114
|
-
|
|
115
|
-
.. code-block:: text
|
|
116
|
-
|
|
117
|
-
Class: Ramsey\Uuid\Rfc4122\UuidV4
|
|
118
|
-
UUID: fc93ab0e-c99e-4b58-975e-9c5e68c53624
|
|
119
|
-
Version: 4
|
|
120
|
-
Bytes: fc93ab0ec99e4b58975e9c5e68c53624
|
|
121
|
-
|
|
122
|
-
Note how the UUID string is identical to the GUID string. However, the byte
|
|
123
|
-
order is different, since they are in big-endian order. The bytes are now
|
|
124
|
-
arranged like this:
|
|
125
|
-
|
|
126
|
-
.. code-block:: text
|
|
127
|
-
|
|
128
|
-
fc 93 ab 0e c9 9e 4b 58 97 5e 9c 5e 68 c5 36 24
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
.. admonition:: Endianness
|
|
132
|
-
:name: nonstandard.guid.endianness
|
|
133
|
-
|
|
134
|
-
Big-endian and little-endian refer to the ordering of bytes in a multi-byte
|
|
135
|
-
number. Big-endian order places the most significant byte first, followed by
|
|
136
|
-
the other bytes in descending order. Little-endian order places the least
|
|
137
|
-
significant byte first, followed by the other bytes in ascending order.
|
|
138
|
-
|
|
139
|
-
Take the hexadecimal number ``0x1234``, for example. In big-endian order,
|
|
140
|
-
the bytes are stored as ``12 34``, and in little-endian order, they are
|
|
141
|
-
stored as ``34 12``. In either case, the number is still ``0x1234``.
|
|
142
|
-
|
|
143
|
-
Networking protocols usually use big-endian ordering, while computer
|
|
144
|
-
processor architectures often use little-endian ordering.
|
|
145
|
-
The terms originated in Jonathan Swift's *Gulliver's Travels*, where the
|
|
146
|
-
Lilliputians argue over which end of a hard-boiled egg is the best end to
|
|
147
|
-
crack.
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
.. _GUID structure: https://docs.microsoft.com/en-us/windows/win32/api/guiddef/ns-guiddef-guid#remarks
|
|
151
|
-
.. _RFC 4122: https://tools.ietf.org/html/rfc4122
|
|
152
|
-
.. _.NET Framework documentation: https://docs.microsoft.com/en-us/dotnet/api/system.guid.tobytearray#remarks
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
.. _nonstandard.other:
|
|
2
|
-
|
|
3
|
-
=======================
|
|
4
|
-
Other Nonstandard UUIDs
|
|
5
|
-
=======================
|
|
6
|
-
|
|
7
|
-
Sometimes, you might encounter a string that looks like a UUID but doesn't
|
|
8
|
-
follow the `RFC 4122`_ specification. Take this string, for example:
|
|
9
|
-
|
|
10
|
-
.. code-block:: text
|
|
11
|
-
|
|
12
|
-
d95959bc-2ff5-43eb-fccd-14883ba8f174
|
|
13
|
-
|
|
14
|
-
At a glance, this looks like a valid UUID, but the variant bits don't match RFC
|
|
15
|
-
4122. Instead of throwing a validation exception, ramsey/uuid will assume this
|
|
16
|
-
is a UUID, since it fits the format and has 128 bits, but it will represent it
|
|
17
|
-
as a :php:class:`Ramsey\\Uuid\\Nonstandard\\Uuid`.
|
|
18
|
-
|
|
19
|
-
.. code-block:: php
|
|
20
|
-
:caption: Create an instance of Nonstandard\\Uuid from a non-RFC 4122 UUID
|
|
21
|
-
|
|
22
|
-
use Ramsey\Uuid\Uuid;
|
|
23
|
-
|
|
24
|
-
$uuid = Uuid::fromString('d95959bc-2ff5-43eb-fccd-14883ba8f174');
|
|
25
|
-
|
|
26
|
-
printf(
|
|
27
|
-
"Class: %s\nUUID: %s\nVersion: %d\nVariant: %s\n",
|
|
28
|
-
get_class($uuid),
|
|
29
|
-
$uuid->toString(),
|
|
30
|
-
$uuid->getFields()->getVersion()?->value,
|
|
31
|
-
$uuid->getFields()->getVariant()?->value
|
|
32
|
-
);
|
|
33
|
-
|
|
34
|
-
This will create a Nonstandard\\Uuid from the given string and print out a few
|
|
35
|
-
details about it. It will look something like this:
|
|
36
|
-
|
|
37
|
-
.. code-block:: text
|
|
38
|
-
|
|
39
|
-
Class: Ramsey\Uuid\Nonstandard\Uuid
|
|
40
|
-
UUID: d95959bc-2ff5-43eb-fccd-14883ba8f174
|
|
41
|
-
Version: 0
|
|
42
|
-
Variant: 7
|
|
43
|
-
|
|
44
|
-
Note that the version is 0. Since the variant is 7, and there is no
|
|
45
|
-
formal specification for this variant of UUID, ramsey/uuid has no way of knowing
|
|
46
|
-
what type of UUID this is.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
.. _RFC 4122: https://tools.ietf.org/html/rfc4122
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
.. _nonstandard.version6:
|
|
2
|
-
|
|
3
|
-
=========================
|
|
4
|
-
Version 6: Reordered Time
|
|
5
|
-
=========================
|
|
6
|
-
|
|
7
|
-
.. attention::
|
|
8
|
-
|
|
9
|
-
This documentation has moved to :ref:`RFC 4122 UUIDs: Version 6: Reordered
|
|
10
|
-
Time <rfc4122.version6>`.
|
|
11
|
-
|
|
12
|
-
Version 6 UUIDs have been promoted to the ``Rfc4122`` namespace. While still
|
|
13
|
-
in draft form, the version 6 format is not expected to change in any way
|
|
14
|
-
that breaks compatibility.
|
|
15
|
-
|
|
16
|
-
The :php:class:`Ramsey\\Uuid\\Nonstandard\\UuidV6` class is deprecated in
|
|
17
|
-
favor of :php:class:`Ramsey\\Uuid\\Rfc4122\\UuidV6`.
|