1. 21 Jan, 2016 4 commits
    • Stephane Nicoll's avatar
      Merge pull request #4987 from rakk/master · a61b29e6
      Stephane Nicoll authored
      * pr/4987:
        Update inconsistent documentation
      a61b29e6
    • Robert Kapala's avatar
      Update inconsistent documentation · 9de13446
      Robert Kapala authored
      Closes gh-4987
      9de13446
    • Stephane Nicoll's avatar
      Support for simple numeric Flyway version · ea8e0cfc
      Stephane Nicoll authored
      While Flyway's `MigrationVersion` is a String value, a simple "0" is
      also a valid number. When such value is not wrapped in YAML, an integer
      is injected rather than a String which leads to a failure as we can't
      convert it.
      
      This commit updates the `StringToMigrationVersionConverter` to also
      supports conversion from a Number. This is a convenience for users
      using YAML for configuration
      
      Closes gh-4981
      ea8e0cfc
    • Stephane Nicoll's avatar
      Support of GenericConverter · c23af8f5
      Stephane Nicoll authored
      This commit makes sure to also include any `GenericConverter` flagged for
      inclusion in the conversion service to use to convert configuration keys.
      
      Previously, those were ignored as `Converter` and `GenericConverter` are
      two separate interfaces.
      
      Closes gh-4988
      c23af8f5
  2. 20 Jan, 2016 9 commits
    • Andy Wilkinson's avatar
      Handle multiple ContextRefreshedEvents in BackgroundPreinitializer · 6f8d4c77
      Andy Wilkinson authored
      The same initializer will receive multiple ContextRefreshedEvents
      when their is an application context hierarchy. This commit updates
      the initializer to correctly handle multiple ContextRefreshedEvents
      and only act upon the first that it receives.
      
      See gh-4871
      6f8d4c77
    • Andy Wilkinson's avatar
      Ensure that background preinit has completed before refresh returns · 992e90f4
      Andy Wilkinson authored
      This commit is a continuation of the changes made in b85b6082. It
      addresses an additional problem when testing applications where two
      contexts are refreshed in quick succession. In this scenario, it
      was possible, theoretically at least, for the first context’s background preinitialization to still be in progress and creating loggers when the
      second is refreshed and resets the logger context.
      
      This commit updates BackgroundPreinitializer so that, upon receipt of
      a ContextRefreshedEvent, it waits for preinitialization to have
      completed. In the scenario described above, this ensures that
      preinitialization has completed before the call to refresh() for the
      first context returns, thereby preventing it from running in parallel
      with the refresh of the second context.
      
      Closes gh-4871
      992e90f4
    • Stephane Nicoll's avatar
      Make HazelcastJpaDependencyAutoConfiguration public · 179467bd
      Stephane Nicoll authored
      If Both Hazelcast and Hibernate are available, Spring Boot takes the
      opinion that Hazelcast can be used for 2nd level caching and therefore
      need to start before Hibernate.
      
      Unfortunately, some users require Hibernate in some of their hazelcast
      use case so the link is actually reversed. One way for such user is to
      disable the auto-configuration that deals with this link. This class is
      now public so that users can locate them and exclude them if necessary.
      
      Closes gh-4960
      179467bd
    • Andy Wilkinson's avatar
      5e5542f0
    • Andy Wilkinson's avatar
      Perform background preinitialization after logging system setup · b85b6082
      Andy Wilkinson authored
      Previously, BackgroundPreinitializer would kick off preinitialization
      on a separate thread in response to an ApplicationStartedEvent. This
      work would then race with the logging system being set up in response
      to an ApplicationEnvironmentPreparedEvent. When Logback’s being used
      this race is problematic. As part of Logback’s setup,
      LoggerContext.stop() is called. This calls LoggerContext.reset() which
      can fail with a ConcurrentModificationException if another thread tries
      to create a Logger at the same time. This is a known bug in Logback [1].
      
      This commit updates BackgroundPreinitializer to respond to
      an ApplicationEnvironmentPreparedEvent and to order itself so that it’s
      called after LoggingApplicationListener has responded to the same event
      by initializing the logging system.
      
      Closes gh-4871
      
      [1] http://jira.qos.ch/browse/LOGBACK-397
      b85b6082
    • Andy Wilkinson's avatar
      Don’t check that a Gauge’s value is a Number until it’s being read · 00f45385
      Andy Wilkinson authored
      Spring Boot’s metrics require all values to be Numbers. A Dropwizard
      Gauge can have a non-Number value. Previously, to prevent this causing
      a problem, MetricRegistryMetricReader would check the value of a Gauge
      when it’s being added and ignore it if it had a non-Number value.
      Unfortunately, retrieving the value of a Gauge can take a non-trivial
      amount of time (hence CachedGauge) so this approach, while functional,
      could be improved.
      
      This commit updates the filtering to happen when a Metric is being
      retrieved from MetricRegistryMetricReader (via findOne or findAll)
      when its value is required anyway. At this point, any Gauge with a
      non-Number value is ignored.
      
      Closes gh-4874
      00f45385
    • Andy Wilkinson's avatar
      Merge branch 'gh-4976' · d7fbe9ef
      Andy Wilkinson authored
      d7fbe9ef
    • Andy Wilkinson's avatar
      Polish contribution · 2f24c186
      Andy Wilkinson authored
      2f24c186
    • mkwaczynski's avatar
      Include details in AuditEvent data in AuthenticationAuditListener · 3724db9e
      mkwaczynski authored
      Closes gh-4976
      3724db9e
  3. 19 Jan, 2016 5 commits
    • Andy Wilkinson's avatar
      Merge branch '1.2.x' · 1dd16669
      Andy Wilkinson authored
      1dd16669
    • Andy Wilkinson's avatar
      Make EmbeddedVelocityToolboxView work in servlet container deployments · 5ef69036
      Andy Wilkinson authored
      EmbeddedVelocityToolboxView is used with both embedded containers and
      when a Spring Boot application is deployed to a servlet container. It
      process the ServletContext to intercept calls to getResource so that it
      can load Velocity’s toolbox.xml file from within an executable jar.
      Previously, when it created the proxy, it didn’t specify the ClassLoader
      to use. This resulted in the proxy being created using the ClassLoader
      that loaded the Class that is being proxied. This fails when the
      application is deployed to a ServletContainer as the ClassLoader that
      loaded the ServletContext implementation is the container’s ClassLoader
      and it cannot see the classes that are specific to the web application.
      
      This commit updates EmbeddedVelocityToolboxView to specify the
      ClassLoader to use when creating the proxy. It specifies its own
      ClassLoader thereby ensuring that the proxy creation can load
      application-specific classes.
      
      Fixes gh-4967
      5ef69036
    • Stephane Nicoll's avatar
      Fix log message · 46470934
      Stephane Nicoll authored
      Closes gh-4969
      46470934
    • Stephane Nicoll's avatar
      Merge branch '1.2.x' · c57588ac
      Stephane Nicoll authored
      c57588ac
    • Stephane Nicoll's avatar
      Fix documentation of logging.path and logging.file · 2ceadd70
      Stephane Nicoll authored
      See gh-4969
      2ceadd70
  4. 18 Jan, 2016 11 commits
    • Andy Wilkinson's avatar
      Ensure that MongoClient is not created with a null credentials list · 112b707b
      Andy Wilkinson authored
      Mongo’s 2.x driver allowed the credentials list to be null, however
      the 3.x driver requires an empty list instead. The behaviour of the 2.x
      driver is the same whether the client is created with a null credential
      list or an empty credential list.
      
      This commit aligns with the requirements of the 3.x driver by ensuring
      that we never pass in a null credential list when creating the client.
      
      Closes gh-4076
      112b707b
    • Andy Wilkinson's avatar
      Merge branch 'gh-4895' · 6dadac1d
      Andy Wilkinson authored
      6dadac1d
    • Andy Wilkinson's avatar
      Polish contribution · 77e350ac
      Andy Wilkinson authored
      77e350ac
    • Vladimir Tsanev's avatar
      Allow DevTools to find and configure Spring Session 1.1's RedisTemplate · 3e291ff0
      Vladimir Tsanev authored
      Previously, when Spring Session 1.1.0.M1 and DevTools were declared as
      dependencies the application failed to start, because
      sessionRedisTemplate could not be resolved.
      
      This commit relaxes the dependency for sessionRedisTemplate in
      restartCompatibleRedisSerializerConfigurer from
      RedisTemplate<String, ExpiringSession> to RedisTemplate<?, ?> and uses
      the bean name in a @Qualifer to ensure that the right RedisTemplate
      bean gets injected.
      
      Fixes gh-4895
      Closes gh-4896
      3e291ff0
    • Andy Wilkinson's avatar
      Merge branch '1.2.x' · da450411
      Andy Wilkinson authored
      da450411
    • Andy Wilkinson's avatar
      Reinstate Tomcat’s old default behaviour for context root redirects · 43ed824f
      Andy Wilkinson authored
      Prior to Tomcat 8.0.30, its default behaviour was for the mapper to
      redirect a request for context-root to context-root/. This redirection
      was switched off by default in 8.0.30 by default. This has proven
      to be problematic and Tomcat 8.0.31 will reinstate the old default.
      
      While we are waiting for Tomcat 8.0.31 to be released, this commit
      explicitly sets the default back to what it was in 8.0.29 and earlier
      and what it will be in 8.0.31.
      
      Closes gh-4937
      43ed824f
    • Andy Wilkinson's avatar
      Remove HalJsonMvcEndpoint’s redirect and add links to both paths instead · 69b60f6d
      Andy Wilkinson authored
      Previously, HalJsonMvcEndpoint used a redirect to go from path/ to path.
      When the actuator’s configured to use a custom context path this
      redirect was leading to an infinite redirect loop.
      
      This commit removes the redirect in favour of updating the controller
      advice to apply the links to requests for path and path/.
      
      Closes gh-4853
      69b60f6d
    • Andy Wilkinson's avatar
      Fix MavenSettings’ handling of profiles activated by a file · c4f756da
      Andy Wilkinson authored
      Previously, MavenSettings used a FileProfileActivator with no
      PathTransformer. If a settings.xml file contains a file-activated
      profile this would result in an NPE within Maven. This was made worse
      by the NPE not being included in the resulting failure message which
      hampered diagnosis of the problem.
      
      This commit updates MavenSettings to configure its FileProfileActivator
      with a PathTransformer. It also improves the failure message that’s
      created from any problems that are reported by Maven while determining
      the active profiles to include a problem’s exception if it has one.
      
      Closes gh-4826
      c4f756da
    • Stephane Nicoll's avatar
      Polish · 7d975ecd
      Stephane Nicoll authored
      7d975ecd
    • Stephane Nicoll's avatar
      Enable resource chain if webjars locator is present · af5d765a
      Stephane Nicoll authored
      Webjars locator is a good hint that the resource chain should be
      enabled. The sole presence of the library now enables the resource chain
      unless the configuration states otherwise.
      
      Closes gh-4403
      af5d765a
    • Stephane Nicoll's avatar
      Add property to skip integration tests · 7842f50e
      Stephane Nicoll authored
      Generalize the `skip` property to start and stop goals so that one
      can control if the Spring Boot app is starting via a configuration
      property.
      
      Note that this only controls the Spring Boot Maven plugin and the
      failsafe maven plugin should be updated accordingly.
      
      Closes gh-4922
      7842f50e
  5. 17 Jan, 2016 3 commits
  6. 15 Jan, 2016 8 commits