gammadia / jms-serializer-1.x
Fork of jms/serializer 1.14.1 with support for modern PHP versions.
1.14.1
2023-09-18 10:59 UTC
Requires
- php: ^7.4|^8.0
- doctrine/annotations: ^1.13 || ^2.0
- doctrine/dbal: ^3.3.7
- doctrine/instantiator: ^1.4 || ^2.0
- gammadia/jms-metadata-1.x: ^1.7
- jms/parser-lib: ^1.0
- phpcollection/phpcollection: ^0.6
- phpoption/phpoption: ^1.7
- symfony/polyfill-php73: ^1.23
Requires (Dev)
- ext-json: *
- ext-pdo_sqlite: *
- dms/phpunit-arraysubset-asserts: ^0.5
- doctrine/orm: ^2.13.1
- doctrine/phpcr-odm: ^1.3|^2.0
- jackalope/jackalope-doctrine-dbal: ^1.1.5
- overtrue/phplint: ^2.4|^3.0|^4.0|^5.0|^6.0|^7.0|^8.0|^9.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9.6
- psr/container: ^1.0
- ramsey/uuid-doctrine: ^1.8
- symfony/dependency-injection: ^3.4|^4.0|^5.0|^6.0
- symfony/expression-language: ^3.4|^4.0|^5.0|^6.0
- symfony/filesystem: ^3.4|^4.0|^5.0|^6.0
- symfony/form: ^3.4|^4.0|^5.0|^6.0
- symfony/translation: ^3.4|^4.0|^5.0|^6.0
- symfony/validator: ^5.4
- symfony/yaml: ^3.4|^4.0|^5.0|^6.0
- twig/twig: ^3.0
Suggests
- doctrine/collections: Required if you like to use doctrine collection types as ArrayCollection.
- symfony/cache: Required if you like to use cache functionality.
- symfony/yaml: Required if you'd like to serialize data to YAML format.
Conflicts
- jms/metadata: >=2.0
Replaces
- jms/serializer: ^1.14
README
Learn more about it in its documentation.
A fork for modern days
This is a fork of jms/serializer
at the version 1.14.1
adapted for modern PHP development, which supports :
- PHP
7.4
<->8.2
(CI green on8.3-beta
) - Symfony
3.4
<->6.3
- Doctrine
2.8
<->2.9
The following changes were backported from more recent versions :
- Use symfony/cache for FileSystem cache implementation instead of doctrine/cache (needed to allow doctrine/annotations 2.0)
The following changes were applied to the dev dependencies :
- PHPUnit upgraded to 9.x
- PHPStan baseline added to keep the code in good health
- Migrate Travis CI to GitHub Actions
BC break changes
ReadOnly
annotation was renamed toReadOnlyProperty
to avoid conflicts with PHP 8.1 readonly reserved keyword- PHP version bumped to PHP 7.4 to prevent having to deal with PHP's Serializable cross-version compatibility...
- Doctrine dependency bumped from
~2.1
to^2.8
(because of namespaces changes) - Propel support was removed as
propel/propel1
is not working with PHP 8 :
PHP Fatal error:
Declaration of
PropelOnDemandCollection::asort()
must be compatible with
ArrayObject::asort(int $flags = SORT_REGULAR)
in vendor/propel/propel1/runtime/lib/collection/PropelOnDemandCollection.php on line 151