You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I encountered strange bug with regard to handling of Profile conditions and active profiles. Below is a table describing tested combinations and expected results
@Profile value
Active profiles
Expected result
Actual result
!a & b
b
true
true
b & !a
b
true
true
!a & b
a
false
true
b & !a
a
false
false
!a & b
ab
false
false
b & !a
ab
false
false
As shown in the table above, test notAandBShouldNotAcceptWhenAActive should not accept the bean, but it does, and just different order of operations in @Profile is enough to behave accordingly. Tests were performed on JDK8. I created simple project to verify it and linked it with this issue.
Stéphane Nicoll, Phil Webb, could you have a look at the associated pull request, please? It generally looks sensible to me; I'm just wondering whether I'm missing some original design decision in the profiles expression support...
Andrzej Leśkiewicz opened SPR-17606 and commented
I encountered strange bug with regard to handling of
Profile
conditions and active profiles. Below is a table describing tested combinations and expected results@Profile
valueAs shown in the table above, test notAandBShouldNotAcceptWhenAActive should not accept the bean, but it does, and just different order of operations in
@Profile
is enough to behave accordingly. Tests were performed on JDK8. I created simple project to verify it and linked it with this issue.Junit test ot reproduce is as follows:
Affects: 5.1.3
Reference URL: https://github.com/aleskiewicz/spring-profiles-operators-test
Issue Links:
@Profile
annotationReferenced from: pull request #2066, and commits 952045c
The text was updated successfully, but these errors were encountered: