433 Commits

Author SHA1 Message Date
Andy Wilkinson
700af8ed00 Merge branch '1.5.x' 2017-06-12 14:25:26 +01:00
Andy Wilkinson
2d3bcae4e1 Make JarURLConnection return entry's length from getContentLengthLong()
Closes gh-9484
2017-06-12 13:46:59 +01:00
Spring Buildmaster
05d4d0281c Next Development Version 2017-06-08 12:47:16 +00:00
Andy Wilkinson
7301f9b5e8 Merge branch '1.5.x' 2017-06-01 11:04:42 +01:00
Andy Wilkinson
5c708ae712 Merge branch '1.4.x' into 1.5.x 2017-06-01 11:04:23 +01:00
Andy Wilkinson
5b4f9edc86 Restore original TCCL in PropertiesLauncherTests
Calling launch of PropertiesLauncherTests sets the thread context
class loader to an instance of LaunchedURLClassLoader. To avoid this
class loader being used beyond the scope of the test and launcher
that created it, this commit updates PropertiesLauncherTests to
capture the TCCL before each test and restore it after each test.

Closes gh-9378
2017-06-01 10:58:00 +01:00
Andy Wilkinson
2928a31278 Merge branch '1.5.x' 2017-05-31 23:43:55 +01:00
Andy Wilkinson
c22230a418 Try making FilePool static to fix the Mockito problem on Bamboo 2017-05-31 23:24:03 +01:00
Andy Wilkinson
8e2986c86e Fix call to isSpy to be compatible with Mockito 2 2017-05-31 22:10:14 +01:00
Andy Wilkinson
b85eed4b58 Polish 2017-05-31 21:59:46 +01:00
Andy Wilkinson
bcd34bca6f Merge branch '1.5.x' 2017-05-31 21:50:35 +01:00
Andy Wilkinson
e11b7aff08 Ensure that file is released back to pool when seek fails
Closes gh-9370
2017-05-31 21:50:05 +01:00
Stephane Nicoll
e8aa3a3a8e Upgrade to Maven War Plugin 3.1.0
Closes gh-9344
2017-05-29 16:16:43 +02:00
Andy Wilkinson
6c3a27dadf Merge branch '1.5.x' 2017-05-23 20:44:46 +01:00
Andy Wilkinson
f7127e5522 Ensure that closing a JarFile closes all underlying resources
Closes gh-8871
2017-05-23 20:42:59 +01:00
Andy Wilkinson
d5438c299c Polish "Use try-with-resources to close resources automatically"
- Apply code formatting
- Use try-with-resources in many other places that were missed in the
  pull request

Closes gh-8045
2017-05-23 19:38:48 +01:00
Phillip Webb
302f038e84 Polish 2017-05-15 20:35:29 -07:00
Stephane Nicoll
5e14383886 Merge branch '1.5.x' 2017-05-09 09:38:47 +02:00
Stephane Nicoll
f8e1345b75 Unify versions used in integration tests
This commit makes sure the integration tests use the same versions as
the one managed by `spring-boot-dependencies` (including Maven plugins).

Closes gh-8947
2017-05-09 09:36:21 +02:00
Johnny Lim
53e5d67cde Polish
Closes gh-9103
2017-05-07 10:32:12 +02:00
Andy Wilkinson
3abd8d3adf Drop support for configuring PropertiesLauncher with application.properties
Closes gh-8464
2017-05-04 17:01:07 +01:00
Spring Buildmaster
9768b0a8c2 Next Development Version 2017-04-21 08:32:01 +00:00
Spring Buildmaster
d719d2cbbc Next Development Version 2017-04-20 12:46:19 +00:00
Phillip Webb
81fef71fcb Merge branch '1.5.x' 2017-04-19 22:48:46 -07:00
Dave Syer
14638e67bc Extended PropertiesLauncher class location logic
Update `PropertiesLauncher` so that classes can be loaded outside of
`BOOT-INF/classes`. You can use a subdirectory, or the root directory
of an external jar (but not the parent archive to avoid issues
with agents and awkward delegation models).

Fixes gh-8480
Closes gh-8486
2017-04-19 22:18:12 -07:00
Phillip Webb
ad38776de3 Polish 2017-04-04 09:48:10 -07:00
Phillip Webb
ddcb5ee328 Polish 2017-04-04 09:36:27 -07:00
Andy Wilkinson
3ec5041826 Merge branch '1.5.x' 2017-04-04 11:31:43 +01:00
Andy Wilkinson
c55bfb00b1 Merge branch '1.4.x' into 1.5.x 2017-04-04 11:31:34 +01:00
Andy Wilkinson
456327260b Fail fast when a Zip64 jar is encountered
Previously, jars (either top-level or nested) in Zip64 format were
treated as normal jar files. This would lead to a failure later on
when an attempt was made to read an entry from the file.

This commit updates the loader to fail fast when it encounters a
Zip64 jar file. Such files are identified by the number of entries
in the central directory end record being 0xFFFF.

Closes gh-8735
2017-04-04 11:31:18 +01:00
Stephane Nicoll
ff50331168 Merge branch '1.5.x' 2017-03-28 10:27:31 +02:00
Stephane Nicoll
d8e90af3bf Merge branch '1.4.x' into 1.5.x 2017-03-28 10:27:14 +02:00
dreis
1266642aba Fix test assertions
Closes gh-8660
2017-03-28 10:26:25 +02:00
Andy Wilkinson
83df8e47fe Merge branch '1.5.x' 2017-03-24 10:34:02 +00:00
Andy Wilkinson
e6cfb4e5fb Improve diagnostics when reading a nested jar throws a runtime exception
Previously, only IOExceptions were caught and wrapped in a new
IOException that included the name of the nested entry that was
being read.

Following this commit, any Exception is caught and wrapped so that the
problematic entry can be identified in more failure scenarios.

Closes gh-8711
2017-03-24 10:32:16 +00:00
Phillip Webb
d8f827d224 Cleanup and format code 2017-03-06 17:08:09 -08:00
Spring Buildmaster
d23fa24340 Next Development Version 2017-03-03 16:18:26 +00:00
Spring Buildmaster
2a83e80a9b Next Development Version 2017-03-03 14:39:21 +00:00
Andy Wilkinson
9c88ba3b90 Merge branch '1.5.x' 2017-03-02 17:30:44 +00:00
Andy Wilkinson
6673d8eebc Polish "Allow loader.path to refer to nested jars"
Closes gh-8334
Closes gh-8465
2017-03-02 17:29:45 +00:00
Dave Syer
3701cce88f Allow loader.path to refer to nested jars
Previously, each entry in loader.path could only refer to a standard
jar file. Refering to such a jar would add all of the classes in
the root of the jar to the class path.

This commit adds support for referencing a directory within a jar file
that contains one or more nested jars. For example:

$ java -jar -Dloader.path='jar:file:./lib.jar/!BOOT-INF/lib' my.jar

This will add all of the classes in all of that jars in the
BOOT-INF/lib directory of lib.jar to the class path.

See gh-8334
2017-03-02 16:49:24 +00:00
Andy Wilkinson
b6e8a280fd Merge branch '1.5.x' 2017-03-02 11:22:17 +00:00
Andy Wilkinson
b36c8a7c24 Polish "Tighten up PropertiesLauncher's contract"
See gh-8346
Closes gh-7221
2017-03-02 11:19:48 +00:00
Dave Syer
e4c807b884 Tighten up PropertiesLauncher's contract
The main changes are:

- Switch to `loader.properties` instead of `application.properties`
- Search for `loader.properties` in `loader.home` as well as in
  the classpath
- Placeholder replacements in MANIFEST.MF (using `loader.properties`
  or system/env vars)

See gh-7221
Closes gh-8346
2017-03-02 11:19:48 +00:00
Spring Buildmaster
5c12500366 Next Development Version 2017-01-30 20:10:13 +00:00
Spring Buildmaster
a2696bf873 Next Development Version 2017-01-30 11:40:24 +00:00
Andy Wilkinson
31b0e81765 Add @FunctionalInterface to remaining public and protected interfaces
See gh-6857
2017-01-27 16:41:09 +00:00
Eddú Meléndez
3d52c86a21 Annotate interfaces with @FunctionaInterface
Closes gh-6857
2017-01-27 16:41:01 +00:00
Spring Buildmaster
ed1ce140c0 Next Development Version 2017-01-26 14:20:39 +00:00
Stephane Nicoll
661fd848eb Merge branch '1.5.x' 2017-01-25 11:02:32 +01:00