Skip to content

Commit 1b395cb

Browse files
authored
[BUGFIX] Avoid double autoloading of class aliases (#1552)
1 parent dfdf183 commit 1b395cb

3 files changed

Lines changed: 15 additions & 8 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ Please also have a look at our
2020

2121
### Fixed
2222

23+
- Avoid double autoloading of class aliases (#1552)
24+
2325
### Documentation
2426

2527
## 9.2.0: New features and deprecations

src/Rule/Rule.php

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@
88

99
use function Safe\class_alias;
1010

11-
/**
12-
* @deprecated in v9.2, will be removed in v10.0. Use `Property\Declaration` instead, which is a direct replacement.
13-
*/
14-
class_alias(Declaration::class, Rule::class);
11+
if (!\class_exists(Rule::class, false) && !\interface_exists(Rule::class, false)) {
12+
/**
13+
* @deprecated in v9.2, will be removed in v10.0. Use `Property\Declaration` instead, which is a direct
14+
* replacement.
15+
*/
16+
class_alias(Declaration::class, Rule::class);
17+
}

src/RuleSet/RuleContainer.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@
66

77
use function Safe\class_alias;
88

9-
/**
10-
* @deprecated in v9.2, will be removed in v10.0. Use `DeclarationList` instead, which is a direct replacement.
11-
*/
12-
class_alias(DeclarationList::class, RuleContainer::class);
9+
if (!\class_exists(RuleContainer::class, false) && !\interface_exists(RuleContainer::class, false)) {
10+
/**
11+
* @deprecated in v9.2, will be removed in v10.0. Use `DeclarationList` instead, which is a direct replacement.
12+
*/
13+
class_alias(DeclarationList::class, RuleContainer::class);
14+
}

0 commit comments

Comments
 (0)