Commit Graph

272 Commits (ab7e4da70347f6c7126c89f474a790b1b473b861)

Author SHA1 Message Date
Stephane Nicoll 136b5959c3 Merge branch '2.5.x' into 2.6.x
Closes gh-29612
3 years ago
Stephane Nicoll 7f17f819a6 Polish "Enforce use of BDDMockito"
See gh-29178
3 years ago
Yanming Zhou b49418aaaf Enforce use of BDDMockito
1. Replace Mockito.verify*() with BDDMockito.then()
2. Replace Mockito.doReturn() with BDDMockito.willReturn()
3. Adjust checkstyle rule

See gh-29178
3 years ago
Stephane Nicoll e691cfdf3d Merge branch '2.7.x' 3 years ago
Stephane Nicoll f1dc7e7b78 Merge branch '2.5.x' into 2.6.x
Closes gh-29600
3 years ago
Stephane Nicoll 0d78ff0657 Polish "Use a timeout when joining threads in HttpTunnelServerTests"
See gh-29522
3 years ago
Leo Li 940d969c7c Use a timeout when joining threads in HttpTunnelServerTests
See gh-29522
3 years ago
Andy Wilkinson fe7b13ec46 Upgrade to Spring Framework 6 and Jakarta EE 9
Closes gh-28619
Closes gh-28620
Closes gh-28621
Closes gh-28622
Closes gh-28623
Closes gh-28624
Closes gh-28625
Closes gh-28626
Closes gh-28627
Closes gh-28628
Closes gh-28629
Closes gh-28630
Closes gh-28631
Closes gh-28632
Closes gh-28633
Closes gh-28634
Closes gh-28635
Closes gh-28636
Closes gh-28638
Closes gh-28639
Closes gh-28640
Closes gh-28644
Closes gh-28645
Closes gh-28650
Closes gh-28711
Closes gh-28866
Closes gh-28867
Closes gh-28868
Closes gh-28872

See gh-28641
See gh-28642
See gh-28643
See gh-28646
See gh-28647
See gh-28648
See gh-28649
See gh-28721
See gh-28869
See gh-28871
3 years ago
Scott Frederick 4eed637481 Merge branch '2.5.x'
Closes gh-28789
3 years ago
Scott Frederick 12244a8edd Remove use of Thymeleaf from smoke tests
Closes gh-28788
3 years ago
Leo Li 73e9c355f1 Polish
See gh-28501
3 years ago
Andy Wilkinson b9f0ec5df8 Merge branch '2.5.x'
Closes gh-28443
3 years ago
Andy Wilkinson 4d811f66ec Merge branch '2.4.x' into 2.5.x
Closes gh-28442
3 years ago
Andy Wilkinson 7607587b6c Stabilize liveReloadOnClassPathChanged()
Closes gh-28441
3 years ago
Phillip Webb 04123e0a0e Merge branch '2.5.x'
Closes gh-28377
3 years ago
Phillip Webb b93a629dbe Shutdown in-memory R2DBC databases before devtools restart
Add `DevToolsR2dbcAutoConfiguration` to automatically shutdown in-memory
R2DBC databases before restarting. Prior to this commit, restarts that
involved SQL initialization scripts could fail due to dirty database
content.

The `DevToolsR2dbcAutoConfiguration` class is similar in design to
`DevToolsDataSourceAutoConfiguration`, but it applies to both pooled
and non-pooled connection factories. The `DataSource` variant does not
need to deal with non-pooled connections due to the fact that
`EmbeddedDataSourceConfiguration` calls `EmbeddedDatabase.shutdown`
as a `destroyMethod`. With R2DB we don't have an `EmbeddedDatabase`
equivalent so we can always trigger a shutdown for devtools.

Fixes gh-28345
3 years ago
Phillip Webb 55a1ec72cc Update copyright year of changed files 3 years ago
Stephane Nicoll c62a6819fe Polish "Add startup time metrics"
See gh-27878
3 years ago
bono007 2e67963bfe Add startup time metrics
See gh-27878
3 years ago
Andy Wilkinson 1bca2bbc85 Merge branch '2.5.x'
Closes gh-27511
3 years ago
Andy Wilkinson 30f63cc0cf Merge branch '2.4.x' into 2.5.x
Closes gh-27510
3 years ago
Andy Wilkinson ade922baec Stabilize LiveReloadServerTests
Closes gh-27503
3 years ago
Andy Wilkinson 3ff20ed4d9 Merge branch '2.5.x'
Closes gh-27485
3 years ago
Andy Wilkinson dead33a90a Merge branch '2.4.x' into 2.5.x
Closes gh-27484
3 years ago
Andy Wilkinson cff1827e27 Stabilize socketChannelClosedTriggersTunnelClose
Closes gh-27483
3 years ago
Andy Wilkinson c211c971f1 Polishing
Closes gh-27429
3 years ago
Andy Wilkinson 8e7a6ceb44 Polish "Make dev tools' home directory configurable"
See gh-17924
3 years ago
sfeldstein b9dbfad473 Make dev tools' home directory configurable
This allows separate projects to keep their own settings where common
settings such as spring.* or server.* don't conflict.

See gh-17924
3 years ago
Stephane Nicoll dc5acb0019 Remove deprecated code flagged for removal
Closes gh-27303
3 years ago
Phillip Webb a76e5c043e Update copyright year of changed files 3 years ago
Phillip Webb b75c79cc7c Merge branch '2.4.x' into 2.5.x
Closes gh-26919
3 years ago
Phillip Webb 5ca687c9a6 Polish 'Make livereload websocket headers case insensitive'
See gh-26813

Closes gh-26813
3 years ago
Andy Wilkinson 44187bc6bf Merge branch '2.4.x' into 2.5.x
See gh-26901
3 years ago
Andy Wilkinson 7ba575d392 Prevent RestarterTests.testRestart from triggering unwanted restarts
See gh-26900
3 years ago
Andy Wilkinson 017ba504d7 Merge branch '2.4.x' into 2.5.x
Closes gh-26901
3 years ago
Andy Wilkinson 32effdba0a Try to stabilize RestarterTests.testRestart
Closes gh-26900
3 years ago
Andy Wilkinson 5de5390ef9 Merge branch '2.4.x' into 2.5.x
Closes gh-26889
3 years ago
Andy Wilkinson c89430e174 Try to stabilize httpConnectionsAreClosedAfterLongPollTimeout
Closes gh-26888
3 years ago
Andy Wilkinson 3858c6299d Merge branch '2.4.x' into 2.5.x
Closes gh-26886
3 years ago
Andy Wilkinson 7a14a53250 Try to stabilize TunnelClientTests.addListener()
Closes gh-26885
3 years ago
Andy Wilkinson 0ab7144bf1 Merge branch '2.4.x' into 2.5.x
Closes gh-26870
3 years ago
Andy Wilkinson 608c4509f8 Try to stabilise SocketTargetServerConnectionTests
Closes gh-26857
3 years ago
Andy Wilkinson 00b9e7f498 Merge branch '2.4.x' into 2.5.x
Closes gh-26868
3 years ago
Andy Wilkinson 186658cc12 Attempt to stabilize stopTriggersTunnelClose
Closes gh-26856
3 years ago
Stephane Nicoll d3c817b7ba Polish "Remove unnecessary throws declaration in tests"
See gh-26441
4 years ago
weixsun 8a2be288a3 Remove unnecessary throws declaration in tests
See gh-26441
4 years ago
Andy Wilkinson a164658dab Merge branch '2.4.x'
Closes gh-26349
4 years ago
Andy Wilkinson cb1af35dde Merge branch '2.3.x' into 2.4.x
Closes gh-26348
4 years ago
Andy Wilkinson 6440843358 Do not wait indefinitely in initialize test if refresh fails
Closes gh-26286
4 years ago
Andy Wilkinson 048463742d Merge branch '2.4.x'
See gh-25985
4 years ago
Andy Wilkinson 06168bb130 Polish FileSystemWatcherTests
See gh-25982
4 years ago
Andy Wilkinson 91473cc326 Merge branch '2.4.x'
Closes gh-25983
4 years ago
Andy Wilkinson 638aa87d13 Merge branch '2.3.x' into 2.4.x
Closes gh-25982
4 years ago
Andy Wilkinson 02e6b7c89c Make FileSystemWatcherTests more robust
Previously, several tests in FileSystemWatcherTests assumed that all
of the changes detected by the watcher would be grouped into a single
change set. This assumption breaks down when a test runs slowly (due
to CPU or IO contention, for example), and making changes to the file
system takes long then the watcher's polling interval. When this
happens, the changes will be split across two (or more).

This commit attempts to make the tests more robust. The tests now
tolerate multiple changes sets by combining them and asserting that
across the n change sets, only the expected changes were detected.

Closes gh-25901
4 years ago
Andy Wilkinson 22b02a6c6f Merge branch '2.4.x'
Closes gh-25823
4 years ago
Andy Wilkinson a025f3d252 Merge branch '2.3.x' into 2.4.x
Closes gh-25822
4 years ago
Andy Wilkinson 896f20e1d3 Improve diagnostics of ClassPathFileSystemWatcherTests
Closes gh-25821
4 years ago
Phillip Webb 11a94ee6f0 Merge branch '2.3.x' into 2.4.x 4 years ago
Andy Wilkinson b5843cfd4d Merge branch '2.4.x' 4 years ago
Andy Wilkinson 24d729ee3b Close ClassLoader so jar it references can be deleted on Windows
Polishes 952ac7b8
4 years ago
Andy Wilkinson 29ba18afec Merge branch '2.4.x'
Closes gh-25584
Fixes gh-25367 in 2.5.x
4 years ago
Andy Wilkinson 952ac7b8d2 Don't use RestartClassLoader when proxying classes it did not load
Fixes gh-19010
Fixes gh-25367
4 years ago
Phillip Webb a1dc107144 Update copyright year of changed files 4 years ago
Madhura Bhave 29ab9fd596 Merge branch '2.4.x'
Closes gh-25351
4 years ago
Madhura Bhave b5e1787641 Make devtools securityFilterChain back-off in presence of WebSecurityConfigurerAdapter
Fixes gh-25147
4 years ago
Stephane Nicoll 5017d59d56 Merge branch '2.4.x'
Closes gh-25184
4 years ago
Stephane Nicoll 75fc896321 Avoid Illegal reflective access warnings with devtools
This commit improves RestartClassLoader to use a method introduced in
SmartClassLoader to avoid triggering a warning on Java 11 and later.

See https://github.com/spring-projects/spring-framework/issues/26403

Closes gh-24857
4 years ago
Stephane Nicoll e4618cfb8d Delete ErrorProperties.IncludeStacktrace
Closes gh-21286
4 years ago
Andy Wilkinson 6df10842d2 Allow Devtools to be enabled irrespective of the launching ClassLoader
Closes gh-21424
4 years ago
Andy Wilkinson c22e655848 Move spring.resources.* properties to spring.web.resources.*
Closes gh-23917
4 years ago
Andy Wilkinson 689d0c8307 Remove skipping of spring-boot-* projects from DevTools restart triggers
Closes gh-23158
4 years ago
Andy Wilkinson a19a565410 Stop registering the default servlet by default
Previously, the default servlet was registered automatically when using
embedded Jetty, Tomcat, or Undertow. However, it is not used by the
majority of applications where Spring MVC's DispatcherServlet will be
the only servlet that's needed. As such configuring the default servlet
was wasting CPU and memory.

This commit changes the default for registering the default servlet to
false. It can be re-enabled by setting
server.servlet.register-default-servlet=true.

Closes gh-22915
4 years ago
Phillip Webb 1ae1436211 Refactor BootstrapRegistry support
Refactor `BootstrapRegistry` support following initial prototype work
with the Spring Cloud team.

This update splits the `BootstrapRegistry` API into `BootstrapRegistry`,
`BootstrapContext` and  `ConfigurableBootstrapContext` interfaces and
moves it to the same package as `SpringApplication`.

A new `Bootstrapper` interface has been introduced that can be added
to the `SpringApplication` to customize the `BootstrapRegistry` before
it's used.

Closes gh-23326
4 years ago
Phillip Webb 8ccf7ee489 Make file detection more resilient across restarts
Retain file snapshot state across devtools restarts to help prevent
detection failures.

Closes gh-19543
4 years ago
Andy Wilkinson 969dd35e45 Upgrade to Mockito 3.4.6
Closes gh-22838
4 years ago
Andy Wilkinson 94644f3814 Merge branch '2.2.x' into 2.3.x
Closes gh-22737
4 years ago
Andy Wilkinson 2238b0d797 Try to make FileSystemWatcherTests.waitsForQuietPeriod() more robust
Previously, waitsForQuietPeriod would iterate 10 times, touching a new
file and then sleeping for 100ms at it did so. With a quiet period of
200ms, this was intended to result in a single change set containing
10 files. However, the test would fail occasionally as multiple change
sets were detected. The test is multi-threaded and is, therefore, at
the mercy of the scheduler. If the thread that is iterating and
touching the files takes over 200ms to be scheduled – exceeding the
watcher's quiet period – the watcher may detect a change set while the
changes are still being made. Eliminating this possibilty would require
the test to participate in the watcher's synchronization, which would
require some changes to its implementation. Instead, this commit
aims to avoid the problem by sleeping for 1/10 of the time (10ms) and
expecting a single change set of 100 files. The hope is that the much
shorter sleep time will result in the file touching thread being
scheduled well within the 200ms quiet period.

Closes gh-22732
4 years ago
Andy Wilkinson 136c9b1af8 Merge branch '2.2.x' into 2.3.x
Closes gh-22020
4 years ago
Andy Wilkinson 41173f7c40 Polish "Use Awaitility instead of Thread.sleep"
See gh-21988
4 years ago
Tomek Szmytka c13385ea74 Use Awaitility instead of Thread.sleep
See gh-21988
4 years ago
Andy Wilkinson 8f7d71ca11 Merge branch '2.2.x' into 2.3.x 4 years ago
Andy Wilkinson 907b64a5eb Remove redundant stop() calls from LiveReloadServerTests 4 years ago
Scott Frederick a30740f8d2 Separate server properties for message and errors
Prior to this commit, there was a property server.error.include-details
that allowed configuration of the message and errors attributes in a
server error response.

This commit separates the control of the message and errors attributes
into two separate properties named server.error.include-message and
server.error.include-binding-errors. When the message attribute is
excluded from a servlet response, the value is changed from a
hard-coded text value to an empty value.

Fixes gh-20505
5 years ago
Phillip Webb ad1248e4ec Replace "folder" with "directory"
Consistently use the term "directory" instead of "folder"

Closes gh-21218
5 years ago
Stephane Nicoll 85e9f713b0 Update copyright year of changed files
See gh-21007
5 years ago
Johnny Lim 29717423a3 Remove this keyword on member method invocations
See gh-21007
5 years ago
Phillip Webb bf41da5322 Update copyright year of changed files 5 years ago
Scott Frederick 70d4994502 Disable exception details on default error views
Prior to this commit, default error responses included the message
from a handled exception. When the exception was a BindException, the
error responses could also include an errors attribute containing the
details of the binding failure. These details could leak information
about the application.

This commit removes the exception message and binding errors detail
from error responses by default, and introduces a
`server.error.include-details` property that can be used to cause
these details to be included in the response.

Fixes gh-20505
5 years ago
dreis2211 fac6f08ca3 Use new AssertJ duration assertions
See gh-19985
5 years ago
Stephane Nicoll 95be419527 Use Class.forName rather than ClassLoader.loadClass
This commit changes uses of ClassLoader.loadClass to Class.forName for
consistency with what was initiated in #19342 and better compatibility
with GraalVM.

Closes gh-19824
5 years ago
Phillip Webb 862462b791 Update copyright year of changed files 5 years ago
Andy Wilkinson ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
5 years ago
Madhura Bhave 8ec3ca74e1 Fix loading of devtools yaml files
Fixes gh-19081
5 years ago
dreis2211 8ecdf919f8 Fix Mockito deprecations
See gh-18689
5 years ago
Andy Wilkinson 078536aded Merge branch '2.1.x'
Closes gh-18502
5 years ago
Andy Wilkinson f42b442ce2 Fix handling of encoded URLs in Class-Path manifest attribute
Fixes gh-18410
5 years ago
Andy Wilkinson 35ad5cd011 Fix intermittent failure of inMemoryDerbyIsShutdown 5 years ago
Madhura Bhave 7978c3d75c Polish 5 years ago
Madhura Bhave 48960c54d1 Drop . prefix from files in .config directory for devtools
Closes gh-18006
5 years ago
Stephane Nicoll 81ddebbc27 Merge branch '2.1.x'
Closes gh-18239
5 years ago