According to the @Conditional documentation:
If a @Configuration class is marked with @Conditional, all of the @Bean methods, @Import annotations,
and @ComponentScan annotations associated with that class will be subject to the conditions.
I believe that @PropertySource in addition to @Bean, @Import, and @ComponentScan is parsed by the ConfigurationClassParser which respects the condition as it processes the classes @Bean methods, @Import annotations, and @ComponentScan annotations (at least @ComponentScan explicitly by checking conditionEvaluator.shouldSkip).
I think it would be intuitive for @PropertySource to be subject to the @Conditional condition of the class being processed as well.
Comment From: adase11
Apologies, I ran some tests and . @PropertySource is indeed respected.
It may be useful to update the documentation of @Conditional to reflect that.