Commit Graph

10933 Commits (1f37da5b069e7390b8585ae41eb5f5b28f718540)
 

Author SHA1 Message Date
Stephane Nicoll 5d95fb6d56 Merge pull request #8076 from izeye:polish-20170124
* pr/8076:
  Polish
8 years ago
Johnny Lim e0de28a1f7 Polish
Closes gh-8076
8 years ago
Andy Wilkinson b00d1e59f4 Silence deprecation warnings in YamlConfigurationFactoryTests 8 years ago
Andy Wilkinson 1a69a4ff67 Remove unnecessary use of @Autowired in the samples 8 years ago
Andy Wilkinson 5efa6370cb Include test-support module in the prepare profile 8 years ago
Andy Wilkinson 609bda805c Revert "Try to fix the CI build"
This reverts commit 4e36a079e9.
8 years ago
Andy Wilkinson 4e36a079e9 Try to fix the CI build
The order of the modules declared in pom.xml should not make any
difference given the other relationships that exist between projects,
however the CI build is ordering the projects incorrectly.

Try changing the order of the modules to see if the CI build can be
coaxed into ordering them correctly.
8 years ago
Stephane Nicoll 4a60de78ff Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 4efa4590f8 Review doc on advanced datasource customization
Closes gh-7652
8 years ago
Phillip Webb b0e06c30a0 Polish 8 years ago
Phillip Webb de50cfa21e Make OnClassCondition an AutoConfigurationImportFilter
Update OnClassCondition to implement AutoConfigurationImportFilter so
that auto-configuration candidates can be filtered early. The
optimization helps to improve application startup time by reducing
the number of classes that are loaded.

See gh-7573
8 years ago
Phillip Webb 20a20b7711 Add AutoConfigurationImportFilter support
Add `AutoConfigurationImportFilter` strategy interface which can be used
to filter auto-configuration candidates before they are loaded.

See gh-7573
8 years ago
Phillip Webb 02641a8207 Optimize AutoConfigurationSorter
Optimize `AutoConfigurationSorter` by used properties generated by the
annotation processor whenever possible. The removes the need for each
candidate class to be ASM parsed just to access the order annotations.

See gh-7573
8 years ago
Phillip Webb 1cbda9bd60 Add AutoConfigurationMetadata abstraction
Add AutoConfigurationMetadata interface and a an internal loader that
allows easy access to data written by `spring-boot-configure-processor`.

See gh-7573
8 years ago
Madhura Bhave ca435512c0 Introduce spring-boot-autoconfigure-processor
Add an annotation processor that generates properties files for certain
auto-configuration class annotations. Currently attribute values from
@AutoConfigureOrder, @AutoConfigureBefore, @AutoConfigureAfter and
@ConditionalOnClass annotations are stored.

The properties file will allow optimizations to be added in the
`spring-boot-autoconfigure` project. Primarily by removing the need
to ASM parse as many `.class` files.

See gh-7573
8 years ago
Phillip Webb ccf964eb9a Optimize OnEnabledResourceChainCondition
Optimize OnEnabledResourceChainCondition by removing the DataBinder.
Properties are now read directly from the Environment.

See gh-7573
8 years ago
Phillip Webb f8ded6de63 Don't use DataBinder to work out excludes
Update `AutoConfigurationImportSelector` so that exclude properties
are loaded without invoking a `DataBinder`. This optimization helps
to improve application startup time.

See gh-7573
8 years ago
Phillip Webb 49fc727706 Lazy initialize JacksonJsonParser ObjectMapper
Update `JacksonJsonParser` to that the `ObjectMapper` is only
initialized on first use. This performance optimization helps with
startup times if nothing uses the parser.

Fixes gh-8074
8 years ago
Phillip Webb cfd5a73b64 Don't call ReflectionUtils do deduce bean type
Update `OnBeanCondition` to no longer call `ReflectionUtils` when
deducing the bean method return type. Since Spring Framework 4.2
the return type has been directly available from `MethodMetadata`.

See gh-7573
8 years ago
Phillip Webb 996afafac6 Optimize OnClassCondition isPresent check
Update `OnClassCondition` to use its own `isPresent` rather than using
`ClassUtils.isPresent`. Using our own implementation saves a few cycles
since we never need to check for native types, and we don't support
nested class references specified in the non `$` notation.

See gh-7573
8 years ago
Phillip Webb 9650668291 Remove dependency from `root` to `condition`
Remove the slightly unusual dependency from the root autoconfigure
pacakge to `condition`. Prior to this commit the link was required in
ordere to populate the `ConditionEvaluationReport`. We now introduce
a `AutoConfigurationImportListener` strategy that allows anyone to
listen for AutoConfigurationImportEvents. The listener implementation
is now used to update the ConditionEvaluationReport.

Fixes gh-8073
8 years ago
Phillip Webb b225b7f33a Rename EnableAutoConfigurationImportSelector
Rename EnableAutoConfigurationImportSelector to the more general
AutoConfigurationImportSelector since it's now used for more than
just the enable annotation.

The existing EnableAutoConfigurationImportSelector class remains in
a deprecated form so that it can be made package-private again in
Spring Boot 2.0.

Fixes gh-8072
8 years ago
Phillip Webb 2c89d9918f Relocate AutoConfigurations from root package
Move PropertyPlaceholder and MessageSource auto-configuration from the
root package to the `context` subpackage.

Fixes gh-8071
8 years ago
Phillip Webb 5703fb1515 Polish 8 years ago
Stephane Nicoll f36b051071 Deprecate exceptionIfInvalid for yaml processing
See gh-8027
8 years ago
Stephane Nicoll 0286128b28 Deprecate exceptionIfInvalid
This commit deprecates the `exceptionIfInvalid` feature as we have now a
way to select the `@ConfigurationProperties` object to validate (i.e. add
`@Validated` on them).

Closes gh-8027
8 years ago
Andy Wilkinson 393cfe505e Allow spring.profiles.include to be used anywhere to add active profiles
Previously, spring.profiles.include was only considered when it was
used in a configuration file. It was ignored in any other property
source.

This commit updates ConfigFileApplicationListener so that
spring.profiles.include can be used in any property source to add to
the profiles that have been declared active via
spring.profiles.active.

Closes gh-7668
8 years ago
Andy Wilkinson 07d9c3fef6 Rename classes and package in new OAuth2 and Actuator sample
Closes gh-8058
8 years ago
Andy Wilkinson 0067082eac Document a warning about embedded Tomcat and tmpwatch on CentOS
Closes gh-5009
8 years ago
Andy Wilkinson 9a79d32f4c Polishing 8 years ago
Andy Wilkinson 68fdd49a0b Document payload types of messages sent to metricsChannel
Closes gh-7790
8 years ago
Andy Wilkinson c86b844477 Remove @Component from ResourceServerFilterChainOrderProcessor
Closes gh-8050
8 years ago
Stephane Nicoll a15cb26278 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 4760a1a6e1 Merge pull request #8057 from izeye:fix-test-20170122
* pr/8057:
  Fix entry in broken-initialization.factories
8 years ago
Johnny Lim 752b8bd650 Fix entry in broken-initialization.factories
Closes gh-8057
8 years ago
Stephane Nicoll 012f3d3509 Upgrade to Spring LDAP 2.3.1.RELEASE
Closes gh-8055
8 years ago
Andy Wilkinson 080ff49c8d Prevent AspectJ from loading aspects too early
Previously, AspectJ would find META-INF/aop.xml almost as soon as
the jar was launched, and before LaunchedURLClassLoader had been
created. This meant that AspectJ would attempt to load aspects listed
in META-INF/aop.xml but that were package in BOOT-INF/classes and,
therefore, could not be loaded.

This commit updates the Repackager so that a META-INF/aop.xml file
is moved into BOOT-INF/classes. This ensures that it isn't visible
to the app class loader so it won't be loaded to early. It will
now be loaded by LaunchedURLClassLoader which can also load the
compiled aspects that aop.xml references.

Closes gh-7587
8 years ago
Andy Wilkinson a30fe9d9ff Update ServerPropertiesTests to tolerate changes in Tomcat 8.5.11
Closes gh-7360
8 years ago
Andy Wilkinson b71baf2c38 Support @ContextHierarchy when using @SpringBootTest
Closes gh-8000
8 years ago
Andy Wilkinson 0ad4e0e70f Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 9e2e824098 Upgrade to Tomcat 8.5.11
Closes gh-7360
8 years ago
Andy Wilkinson bfd319755c Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 0ce7c9516a Document how to configure test- and profile-specific Flyway migrations
Closes gh-2753
8 years ago
Stephane Nicoll 45b93f3223 Merge pull request #8047 from eddumelendez:gh-7965
* pr/8047:
  Upgrade to Spring LDAP 2.3.0.RELEASE
8 years ago
Eddú Meléndez 5b57beca57 Upgrade to Spring LDAP 2.3.0.RELEASE
Closes gh-8047
8 years ago
Stephane Nicoll fbae14da5d Merge pull request #7600 from michael-simons:DataMongoTest
* pr/7600:
  Polish contribution
  Add slide test annotation for MongoDB
8 years ago
Stephane Nicoll 915c959a28 Polish contribution
Closes gh-7600
8 years ago
Michael J. Simons 8648520876 Add slide test annotation for MongoDB
This commits adds a slice test infrastructure for MongoDB, similar to
what `@DataJpaTest` does with JPA.

By default, an embedded Mongod process is used if available.

See gh-7600
8 years ago
Stephane Nicoll b19d31e067 Use a random port with embedded Mongo by default
This commit improves the logic of the embedded Mongo support to use a
random port if no custom port has been specified. This doesn't change
the default if the embedded support isn't active.

Closes gh-8044
8 years ago
Andy Wilkinson b900a3efc8 Update Actuator endpoints to use custom media type
Previously, the actuator's endpoints produced application/json and,
where appropriate, also consumed application/json. Without a custom,
versioned media type, it's impossible for us to make changes to the
endpoints without breaking clients.

This commit introduces a new media type,
application/spring-boot.actuator.v1+json, that is now produced by
default with application/json also being produced if requested.
Endpoints that consume JSON will now also accept content the uses
the new media type in addition to application/json.

Closes gh-7967
8 years ago