Skip to content

Commit cc14494

Browse files
committed
feat: Foundry v3 🎉
1 parent 304e533 commit cc14494

File tree

177 files changed

+521
-6337
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

177 files changed

+521
-6337
lines changed

.env

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
88
MONGO_URL="mongodb://127.0.0.1:27018/dbName?compressors=disabled&gssapiServiceName=mongodb"
99

1010
USE_DAMA_DOCTRINE_TEST_BUNDLE="0"
11-
USE_FOUNDRY_PHPUNIT_EXTENSION="0"
12-
USE_PHP_84_LAZY_OBJECTS="0"
13-
PHPUNIT_VERSION="13" # allowed values: 9, 10, 11, 12, 13
1411

1512
# Only relevant for "reset-database" testsuite
1613
DATABASE_RESET_MODE="schema" # allowed values: schema, migrate

.github/workflows/phpunit.yml

Lines changed: 22 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -21,66 +21,37 @@ concurrency:
2121

2222
jobs:
2323
tests:
24-
name: P:${{ matrix.php }}, S:${{ matrix.symfony }}, D:${{ matrix.database }}, PU:${{ matrix.phpunit }}${{ matrix.deps == 'lowest' && ' (lowest)' || '' }}${{ matrix.use-phpunit-extension != 1 && ' (no phpunit extension)' || '' }}${{ (matrix.use-php-84-lazy-objects != 1 || matrix.php != '8.4') && ' (legacy proxy)' || '' }}${{ matrix.no-dama == 1 && ' (no dama)' || '' }}
24+
name: P:${{ matrix.php }}, S:${{ matrix.symfony }}, D:${{ matrix.database }}${{ matrix.deps == 'lowest' && ' (lowest)' || '' }}${{ matrix.no-dama == 1 && ' (no dama)' || '' }}
2525
runs-on: ubuntu-latest
2626
strategy:
2727
fail-fast: false
2828
matrix:
2929
php: [ 8.4, 8.5 ]
30-
symfony: [ 6.4.*, 7.4.*, 8.0.* ]
30+
symfony: [ 8.0.* ]
3131
database: [ mysql|mongo ]
32-
phpunit: [ 13 ]
33-
use-phpunit-extension: [ 1 ]
34-
use-php-84-lazy-objects: [ 1 ]
3532
deps: [ highest ]
3633

3734
include:
38-
# old php versions
39-
- {php: 8.1, symfony: 6.4.*, phpunit: 9, database: mysql, use-phpunit-extension: 0}
40-
- {php: 8.2, symfony: 6.4.*, phpunit: 9, database: mysql, use-phpunit-extension: 0}
41-
42-
# old PHPUnit versions
43-
- {php: 8.3, symfony: 7.4.*, phpunit: 9, database: mysql, use-phpunit-extension: 0}
44-
- {php: 8.4, symfony: 7.4.*, phpunit: 10, database: mysql, use-phpunit-extension: 0}
45-
- {php: 8.4, symfony: 7.4.*, phpunit: 11, database: mysql, use-phpunit-extension: 0}
46-
- {php: 8.4, symfony: 7.4.*, phpunit: 11, database: mysql}
47-
- {php: 8.4, symfony: 7.4.*, phpunit: 12, database: mysql, use-phpunit-extension: 0}
48-
- {php: 8.4, symfony: 7.4.*, phpunit: 12, database: mysql}
49-
50-
# test with no database (PHPUnit 9 is used to prevent some problems with empty data providers)
51-
- {php: 8.3, symfony: 7.4.*, phpunit: 9, database: none, use-phpunit-extension: 0}
52-
- {php: 8.3, symfony: 7.4.*, phpunit: 9, database: none, deps: lowest, use-phpunit-extension: 0}
53-
5435
# One permutation per DBMS
55-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: mongo}
56-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: pgsql}
57-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: sqlite}
58-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: mysql}
36+
- {php: 8.4, symfony: 8.0.*, database: mongo}
37+
- {php: 8.4, symfony: 8.0.*, database: pgsql}
38+
- {php: 8.4, symfony: 8.0.*, database: sqlite}
39+
- {php: 8.4, symfony: 8.0.*, database: mysql}
40+
41+
# test with no database
42+
- {php: 8.4, symfony: 8.0.*, database: none}
43+
- {php: 8.4, symfony: 8.0.*, database: none, deps: lowest}
5944

6045
# lowest deps (one per DBMS)
61-
- {php: 8.3, symfony: 6.4.*, phpunit: 9, database: mysql|mongo, deps: lowest, use-phpunit-extension: 0}
62-
- {php: 8.3, symfony: 6.4.*, phpunit: 9, database: mongo, deps: lowest, use-phpunit-extension: 0}
63-
- {php: 8.3, symfony: 6.4.*, phpunit: 9, database: pgsql, deps: lowest, use-phpunit-extension: 0}
64-
- {php: 8.3, symfony: 6.4.*, phpunit: 9, database: sqlite, deps: lowest, use-phpunit-extension: 0}
65-
- {php: 8.3, symfony: 6.4.*, phpunit: 9, database: mysql, deps: lowest, use-phpunit-extension: 0}
66-
67-
# Lowest deps with PHP 8.4 & lazy objects
68-
- {php: 8.4, symfony: 6.4.*, phpunit: 13, database: mysql|mongo, deps: lowest}
69-
70-
# Disable Foundry's PHPUnit extension and/or dama
71-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: mysql|mongo, use-phpunit-extension: 0}
72-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: mysql, use-phpunit-extension: 0, no-dama: 1}
73-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: mysql, no-dama: 1}
74-
75-
# disable lazy objects in PHP 8.4
76-
- {php: 8.4, symfony: 7.4.*, phpunit: 13, database: mysql|mongo, use-php-84-lazy-objects: 0}
46+
- {php: 8.4, symfony: 8.0.*, database: mysql|mongo, deps: lowest}
47+
48+
# Test without dama
49+
- {php: 8.4, symfony: 8.0.*, database: mysql, no-dama: 1}
7750
env:
7851
DATABASE_URL: ${{ contains(matrix.database, 'mysql') && 'mysql://root:root@localhost:3306/foundry?serverVersion=5.7.42' || contains(matrix.database, 'pgsql') && 'postgresql://root:root@localhost:5432/foundry?serverVersion=15' || contains(matrix.database, 'sqlite') && 'sqlite:///%kernel.project_dir%/var/data.db' || '' }}
7952
MONGO_URL: ${{ contains(matrix.database, 'mongo') && 'mongodb://127.0.0.1:27017/dbName?compressors=disabled&gssapiServiceName=mongodb' || '' }}
8053
USE_DAMA_DOCTRINE_TEST_BUNDLE: ${{ contains(matrix.database, 'sql') && matrix.no-dama != 1 && 1 || 0 }}
81-
USE_FOUNDRY_PHPUNIT_EXTENSION: ${{ matrix.use-phpunit-extension || 0 }}
82-
USE_PHP_84_LAZY_OBJECTS: ${{ matrix.use-php-84-lazy-objects }}
83-
PHPUNIT_VERSION: ${{ matrix.phpunit }}
54+
PHPUNIT_VERSION: 13
8455
WITH_LOWEST_DEPENDENCIES: ${{ matrix.deps == 'lowest' && 1 || 0 }}
8556
services:
8657
postgres:
@@ -111,11 +82,6 @@ jobs:
11182
coverage: none
11283
tools: flex
11384

114-
- name: Add the polyfill compatible with Doctrine ^2.16
115-
if: ${{ matrix.deps == 'lowest' }}
116-
shell: bash
117-
run: composer require --dev symfony/polyfill-php80:^1.16 --no-update
118-
11985
- name: Install dependencies
12086
uses: ramsey/composer-install@v2
12187
with:
@@ -134,7 +100,7 @@ jobs:
134100
SYMFONY_REQUIRE: ${{ matrix.symfony }}
135101

136102
test-reset-database:
137-
name: Reset DB - D:${{ matrix.database }} ${{ matrix.use-dama == 1 && ' (dama)' || '' }} ${{ matrix.reset-database-mode == 'migrate' && ' (migrate)' || '' }} ${{ contains(matrix.with-migration-configuration-file, 'transactional') && '(configuration file transactional)' || contains(matrix.with-migration-configuration-file, 'configuration') && '(configuration file)' || '' }}${{ matrix.deps == 'lowest' && ' (lowest)' || '' }}${{ matrix.use-phpunit-extension == 0 && ' (no phpunit extension)' || '' }}
103+
name: Reset DB - D:${{ matrix.database }} ${{ matrix.use-dama == 1 && ' (dama)' || '' }} ${{ matrix.reset-database-mode == 'migrate' && ' (migrate)' || '' }} ${{ contains(matrix.with-migration-configuration-file, 'transactional') && '(configuration file transactional)' || contains(matrix.with-migration-configuration-file, 'configuration') && '(configuration file)' || '' }}${{ matrix.deps == 'lowest' && ' (lowest)' || '' }}
138104
runs-on: ubuntu-latest
139105
strategy:
140106
fail-fast: false
@@ -144,13 +110,10 @@ jobs:
144110
reset-database-mode: [ schema, migrate ]
145111
migration-configuration-file: ['no']
146112
deps: [ highest, lowest ]
147-
use-phpunit-extension: [ 1 ]
148113
include:
149-
- { database: mongo, use-dama: 0, reset-database-mode: schema, use-phpunit-extension: 1 }
150-
- { database: pgsql, use-dama: 1, reset-database-mode: schema, use-phpunit-extension: 0 }
151-
- { database: pgsql, use-dama: 0, reset-database-mode: schema, use-phpunit-extension: 0 }
152-
- { database: pgsql, migration-configuration-file: 'migration-configuration', use-dama: 0, reset-database-mode: migration, use-phpunit-extension: 1 }
153-
- { database: pgsql, migration-configuration-file: 'migration-configuration-transactional', use-dama: 0, reset-database-mode: migration, use-phpunit-extension: 1 }
114+
- { database: mongo, use-dama: 0, reset-database-mode: schema }
115+
- { database: pgsql, migration-configuration-file: 'migration-configuration', use-dama: 0, reset-database-mode: migration }
116+
- { database: pgsql, migration-configuration-file: 'migration-configuration-transactional', use-dama: 0, reset-database-mode: migration }
154117
env:
155118
DATABASE_URL: ${{ contains(matrix.database, 'mysql') && 'mysql://root:root@localhost:3306/foundry?serverVersion=5.7.42' || contains(matrix.database, 'pgsql') && 'postgresql://root:root@localhost:5432/foundry?serverVersion=15' || 'sqlite:///%kernel.project_dir%/var/data.db' }}
156119
MONGO_URL: ${{ contains(matrix.database, 'mongo') && 'mongodb://127.0.0.1:27017/dbName?compressors=disabled&gssapiServiceName=mongodb' || '' }}
@@ -159,7 +122,6 @@ jobs:
159122
MIGRATION_CONFIGURATION_FILE: ${{ matrix.migration-configuration-file == 'no' && '' || format('tests/Fixture/MigrationTests/configs/{0}.php', matrix.migration-configuration-file) }}
160123
PHPUNIT_VERSION: 13
161124
WITH_LOWEST_DEPENDENCIES: ${{ matrix.deps == 'lowest' && 1 || 0 }}
162-
USE_FOUNDRY_PHPUNIT_EXTENSION: ${{ matrix.use-phpunit-extension }}
163125
services:
164126
postgres:
165127
image: ${{ contains(matrix.database, 'pgsql') && 'postgres:15' || '' }}
@@ -195,7 +157,7 @@ jobs:
195157
dependency-versions: ${{ matrix.deps }}
196158
composer-options: --prefer-dist
197159
env:
198-
SYMFONY_REQUIRE: 7.4.*
160+
SYMFONY_REQUIRE: 8.0.*
199161

200162
- name: Set up MySQL
201163
if: contains(matrix.database, 'mysql')
@@ -210,15 +172,15 @@ jobs:
210172
./phpunit --testsuite reset-database --bootstrap tests/bootstrap-reset-database.php
211173
shell: bash
212174
env:
213-
SYMFONY_REQUIRE: 7.4.*
175+
SYMFONY_REQUIRE: 8.0.*
214176

215177
test-no-framework:
216178
name: No framework - PHP${{ matrix.php }}
217179
runs-on: ubuntu-latest
218180
strategy:
219181
fail-fast: false
220182
matrix:
221-
php: [ 8.3, 8.4, 8.5 ]
183+
php: [ 8.4, 8.5 ]
222184
steps:
223185
- name: Checkout code
224186
uses: actions/checkout@v3
@@ -299,8 +261,6 @@ jobs:
299261
DATABASE_URL: postgresql://root:root@localhost:5432/foundry?serverVersion=15
300262
MONGO_URL: mongodb://127.0.0.1:27017/dbName?compressors=disabled&gssapiServiceName=mongodb
301263
USE_DAMA_DOCTRINE_TEST_BUNDLE: 1
302-
USE_FOUNDRY_PHPUNIT_EXTENSION: 1
303-
USE_PHP_84_LAZY_OBJECTS: 1
304264
PHPUNIT_VERSION: 13
305265
FOUNDRY_FAKER_SEED: 1234
306266
services:
@@ -350,4 +310,3 @@ jobs:
350310
uses: codecov/codecov-action@v3
351311
with:
352312
file: ./coverage.xml
353-

.php-cs-fixer.dist.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,14 @@
1111
$csFixerConfig = require $file;
1212
$csFixerConfig->setFinder(
1313
$csFixerConfig->getFinder()
14-
->notName('WebTestCaseWithBothTraitsInWrongOrderTest.php')
1514
->in(__DIR__.'/utils')
1615
->in(__DIR__.'/config')
1716
);
1817

18+
$csFixerConfig->setRules(\array_merge($csFixerConfig->getRules(), [
19+
'php_unit_test_annotation' => false,
20+
]));
21+
1922
try {
2023
return $csFixerConfig;
2124
} finally {

composer.json

Lines changed: 24 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -16,42 +16,41 @@
1616
}
1717
],
1818
"require": {
19-
"php": ">=8.1",
19+
"php": ">=8.4",
2020
"fakerphp/faker": "^1.24",
2121
"symfony/deprecation-contracts": "^2.2|^3.0",
22-
"symfony/polyfill-php84": "^1.32",
2322
"symfony/polyfill-php85": "^1.33",
24-
"symfony/property-access": "^6.4|^7.0|^8.0",
25-
"symfony/property-info": "^6.4|^7.0|^8.0",
26-
"symfony/var-exporter": "^6.4.9|~7.0.9|^7.1.2|^8.0",
23+
"symfony/property-access": "^8.0",
24+
"symfony/property-info": "^8.0",
25+
"symfony/var-exporter": "^8.0",
2726
"zenstruck/assert": "^1.4"
2827
},
2928
"require-dev": {
3029
"bamarni/composer-bin-plugin": "^1.8",
3130
"dama/doctrine-test-bundle": "^8.0",
32-
"doctrine/collections": "^1.7|^2.0",
31+
"doctrine/collections": "^2.0|^3.0",
3332
"doctrine/common": "^3.2.2",
34-
"doctrine/doctrine-bundle": "^2.10|^3.0",
35-
"doctrine/doctrine-migrations-bundle": "^2.2|^3.0",
36-
"doctrine/mongodb-odm": "^2.4",
37-
"doctrine/mongodb-odm-bundle": "^4.6|^5.0",
38-
"doctrine/orm": "^2.16|^3.0",
39-
"doctrine/persistence": "^2.0|^3.0|^4.0",
40-
"phpunit/phpunit": "^9.5.0 || ^10.0 || ^11.0 || ^12.0 || ^13.0",
41-
"symfony/browser-kit": "^6.4|^7.0|^8.0",
42-
"symfony/console": "^6.4|^7.0|^8.0",
43-
"symfony/dotenv": "^6.4|^7.0|^8.0",
44-
"symfony/event-dispatcher": "^6.4|^7.0|^8.0",
33+
"doctrine/doctrine-bundle": "^3.0",
34+
"doctrine/doctrine-migrations-bundle": "^3.0",
35+
"doctrine/mongodb-odm": "^2.16",
36+
"doctrine/mongodb-odm-bundle": "^5.6",
37+
"doctrine/orm": "^3.0",
38+
"doctrine/persistence": "^3.3.1|^4.0",
39+
"phpunit/phpunit": "^13.0",
40+
"symfony/browser-kit": "^8.0",
41+
"symfony/console": "^8.0",
42+
"symfony/dotenv": "^8.0",
43+
"symfony/event-dispatcher": "^8.0",
4544
"symfony/flex": "^2.10",
46-
"symfony/framework-bundle": "^6.4|^7.0|^8.0",
45+
"symfony/framework-bundle": "^8.0",
4746
"symfony/maker-bundle": "^1.55",
48-
"symfony/phpunit-bridge": "^6.4.26|^7.0|^8.0",
49-
"symfony/routing": "^6.4|^7.0|^8.0",
50-
"symfony/runtime": "^6.4|^7.0|^8.0",
47+
"symfony/phpunit-bridge": "^8.0",
48+
"symfony/routing": "^8.0",
49+
"symfony/runtime": "^8.0",
5150
"symfony/translation-contracts": "^3.4",
52-
"symfony/uid": "^6.4|^7.0|^8.0",
53-
"symfony/var-dumper": "^6.4|^7.0|^8.0",
54-
"symfony/yaml": "^6.4|^7.0|^8.0",
51+
"symfony/uid": "^8.0",
52+
"symfony/var-dumper": "^8.0",
53+
"symfony/yaml": "^8.0",
5554
"webmozart/assert": "^1.11"
5655
},
5756
"autoload": {
@@ -84,10 +83,7 @@
8483
"symfony/runtime": false
8584
}
8685
},
87-
"conflict": {
88-
"doctrine/persistence": "<2.0",
89-
"doctrine/cache": "<1.12.1"
90-
},
86+
"conflict": {},
9187
"extra": {
9288
"bamarni-bin": {
9389
"target-directory": "bin/tools",

config/makers.php

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,13 @@
1515
use Zenstruck\Foundry\Maker\Factory\FactoryCandidatesClassesExtractor;
1616
use Zenstruck\Foundry\Maker\Factory\FactoryClassMap;
1717
use Zenstruck\Foundry\Maker\Factory\FactoryGenerator;
18-
use Zenstruck\Foundry\Maker\Factory\LegacyORMDefaultPropertiesGuesser;
1918
use Zenstruck\Foundry\Maker\Factory\NoPersistenceObjectsAutoCompleter;
2019
use Zenstruck\Foundry\Maker\Factory\ObjectDefaultPropertiesGuesser;
2120
use Zenstruck\Foundry\Maker\Factory\ODMDefaultPropertiesGuesser;
2221
use Zenstruck\Foundry\Maker\Factory\ORMDefaultPropertiesGuesser;
2322
use Zenstruck\Foundry\Maker\MakeFactory;
2423
use Zenstruck\Foundry\Maker\MakeStory;
2524
use Zenstruck\Foundry\Maker\NamespaceGuesser;
26-
use Zenstruck\Foundry\ORM\DoctrineOrmVersionGuesser;
2725

2826
return static function(ContainerConfigurator $container): void {
2927
$container->services()
@@ -42,7 +40,7 @@
4240
])
4341
->tag('maker.command')
4442

45-
->set('.zenstruck_foundry.maker.factory.orm_default_properties_guesser', DoctrineOrmVersionGuesser::isOrmV3() ? ORMDefaultPropertiesGuesser::class : LegacyORMDefaultPropertiesGuesser::class)
43+
->set('.zenstruck_foundry.maker.factory.orm_default_properties_guesser', ORMDefaultPropertiesGuesser::class)
4644
->args([
4745
service('.zenstruck_foundry.persistence_manager')->nullOnInvalid(),
4846
service('.zenstruck_foundry.maker.factory.factory_class_map'),

config/orm.php

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,14 @@
1212
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
1313

1414
use DAMA\DoctrineTestBundle\Doctrine\DBAL\StaticDriver;
15-
use Zenstruck\Foundry\ORM\DoctrineOrmVersionGuesser;
16-
use Zenstruck\Foundry\ORM\OrmV2PersistenceStrategy;
17-
use Zenstruck\Foundry\ORM\OrmV3PersistenceStrategy;
15+
use Zenstruck\Foundry\ORM\OrmPersistenceStrategy;
1816
use Zenstruck\Foundry\ORM\ResetDatabase\BaseOrmResetter;
1917
use Zenstruck\Foundry\ORM\ResetDatabase\DamaDatabaseResetter;
2018
use Zenstruck\Foundry\ORM\ResetDatabase\OrmResetter;
2119

2220
return static function(ContainerConfigurator $container): void {
2321
$container->services()
24-
->set('.zenstruck_foundry.persistence_strategy.orm', DoctrineOrmVersionGuesser::isOrmV3() ? OrmV3PersistenceStrategy::class : OrmV2PersistenceStrategy::class)
22+
->set('.zenstruck_foundry.persistence_strategy.orm', OrmPersistenceStrategy::class)
2523
->args([
2624
service('doctrine'),
2725
])

config/persistence.php

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,11 @@
4242
])
4343
;
4444

45-
if (\PHP_VERSION_ID >= 80400) {
46-
$container->services()->set('.foundry.persistence.objects_tracker', PersistedObjectsTracker::class)
47-
->tag('kernel.reset', ['method' => 'refresh'])
48-
->tag('kernel.event_listener', ['event' => TerminateEvent::class, 'method' => 'refresh'])
49-
->tag('kernel.event_listener', ['event' => ConsoleTerminateEvent::class, 'method' => 'refresh'])
50-
->tag('kernel.event_listener', ['event' => WorkerMessageHandledEvent::class, 'method' => 'refresh']) // @phpstan-ignore class.notFound
51-
->tag('foundry.hook', ['class' => null, 'method' => 'afterPersistHook', 'event' => AfterPersist::class])
52-
;
53-
}
45+
$container->services()->set('.foundry.persistence.objects_tracker', PersistedObjectsTracker::class)
46+
->tag('kernel.reset', ['method' => 'refresh'])
47+
->tag('kernel.event_listener', ['event' => TerminateEvent::class, 'method' => 'refresh'])
48+
->tag('kernel.event_listener', ['event' => ConsoleTerminateEvent::class, 'method' => 'refresh'])
49+
->tag('kernel.event_listener', ['event' => WorkerMessageHandledEvent::class, 'method' => 'refresh']) // @phpstan-ignore class.notFound
50+
->tag('foundry.hook', ['class' => null, 'method' => 'afterPersistHook', 'event' => AfterPersist::class])
51+
;
5452
};

phpstan.neon

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,10 @@ parameters:
2222
- bin/tools/phpbench/vendor/autoload.php
2323

2424
ignoreErrors:
25-
# suppress strange behavior of PHPStan where it considers proxy() return type as *NEVER*
26-
- message: '#Return type of call to function Zenstruck\\Foundry\\Persistence\\proxy contains unresolvable type#'
27-
path: src/Persistence/ProxyRepositoryDecorator.php
28-
2925
# prevent PHPStan to force to type data providers
3026
- identifier: missingType.iterableValue
3127
path: tests/
3228

33-
# PHPStan does not understand PHP version checks
34-
- message: '#Comparison operation "(<|>|<=|>=)" between int<80\d+, 80\d+> and 80\d+ is always (false|true).#'
35-
3629
# Hydrator and Factory are annotated @immutable
3730
- identifier: property.readOnlyByPhpDocDefaultValue
3831
paths:
@@ -53,10 +46,6 @@ parameters:
5346
- identifier: missingType.generics
5447
path: src/Maker/Factory/
5548

56-
# not relevant for factories generated by maker
57-
- identifier: missingType.callable
58-
path: tests/Fixture/Maker/expected/
59-
6049
# not relevant for files outside from Foundry's namespace
6150
- identifier: classConstant.internalClass
6251
path: config/
@@ -65,13 +54,11 @@ parameters:
6554

6655
excludePaths:
6756
- config/reference.php (?)
57+
- src/Test/Behat (?)
6858

6959
- tests/Fixture/Maker/expected/can_create_factory_with_auto_activated_not_persisted_option.php
7060
- tests/Fixture/Maker/expected/can_create_factory_interactively.php
7161
- tests/Fixture/Maker/expected/can_create_factory_with_embeddable_with_data_set_odm.php
7262
- tests/Fixture/Maker/expected/can_create_factory_with_embeddable_with_data_set_orm.php
7363

74-
# phpstan runs with orm 3 - there are too many failures in these files which are compatible with orm 2
75-
- ./src/Maker/Factory/LegacyORMDefaultPropertiesGuesser.php
7664
- ./src/Maker/Factory/DoctrineScalarFieldsDefaultPropertiesGuesser.php
77-
- ./src/ORM/OrmV2PersistenceStrategy.php

0 commit comments

Comments
 (0)