3541 Commits

Author SHA1 Message Date
Andy Wilkinson
f335ec00bf Polish 2018-04-05 09:31:17 +01:00
Phillip Webb
685babc829 Polish "Use lambdas for map entry iteration where possible"
Closes gh-12626
2018-04-04 19:36:18 -07:00
igor-suhorukov
69bc19e0ca Use lambdas for map entry iteration where possible
See gh-12626
2018-04-04 19:36:10 -07:00
Phillip Webb
696aedaef8 Merge branch '1.5.x' 2018-04-04 14:51:16 -07:00
Phillip Webb
9a64d3bf3f Fix AsciiBytes unicode decoding
Fix the decoding logic in the AsciiBytes `hashCode` and `matches` to
correctly deal with multi-byte encodings.

Fixes gh-12504
2018-03-29 14:00:13 -07:00
Phillip Webb
98a2a91d16 Polish 2018-03-29 14:00:13 -07:00
Madhura Bhave
8b29823885 Prevent StackOverFlowException in metadata processor
Fixes gh-11037
2018-03-28 07:58:13 -07:00
Andy Wilkinson
1f35abacd6 Polish “Configure Kotlin compiler to use -java-parameters by default”
Closes gh-12641
2018-03-28 12:24:21 +01:00
Rui Figueira
5e2726f896 Configure Kotlin compiler to use -java-parameters by default
See gh-12641
2018-03-28 12:24:17 +01:00
Stephane Nicoll
006decea2a Merge branch '1.5.x' 2018-03-27 15:47:56 +02:00
Phillip Webb
79ad03b584 Merge branch '1.5.x' 2018-03-16 15:06:08 -07:00
Andy Wilkinson
36ea387a67 Close RandomAccessDataFile when direct JarFile is closed
Previously, the underlying RandomAccessDataFile was not closed when
the JarFile that was using it was closed. This causes a problem on
Windows as the open file handle prevents the file from being deleted.

This commit updates JarFile to close the underlying
RandomAccessDataFile when it is closed and has a JarFileType of
DIRECT.

Previously, when accessing the manifest of a jar file that maps to a
nested directory (BOOT-INF/classes) a new JarFile was created from the
root jar file, the manifest was retrieved, and the new JarFile was
closed. This could lead to the underlying RandomAccessDataFile being
closed while it was still in use.

This commit improves JarFile to retrieve the manifest from the
existing outer JarFile, thereby avoiding the need to create and close
a new JarFile.

Unfortunately, PropertiesLauncher creates a number of scenarios where
a JarFile with a type of direct is closed while it’s still being used.
To accommodate this behaviour, RandomAccessDataFile has been updated
so that it can re-open the underlying RandomAccessFile if it is used
after it has been closed.

Closes gh-12296
2018-03-16 15:58:50 +00:00
Phillip Webb
a4b0be089d Polish 2018-03-14 14:05:26 -07:00
dreis2211
0d3f3e46dd Fix typos
Closes gh-12468
2018-03-13 17:42:19 -07:00
Stephane Nicoll
ed05e1f7ca Polish "Reorder modifiers to comply with the JLS"
Closes gh-12432
2018-03-12 15:17:23 +01:00
igor-suhorukov
aebb475bc5 Reorder modifiers to comply with the JLS
See gh-12432
2018-03-12 15:17:05 +01:00
Andy Wilkinson
6d16c5ff6e Omit libraries with null destination when repackaging
Closes gh-12437
2018-03-12 13:33:42 +00:00
igor-suhorukov
4f4cc1569c Polish
Declarations should use Java collection interfaces such as "Deque" rather
than specific implementation classes such as "LinkedList".

Closes gh-12405
2018-03-09 09:32:14 +01:00
Stephane Nicoll
7d1faa1c88 Ignore static and abstract accessors
This commit updates the annotation processor and the binder to ignore
any static or abstract method that has the characteristics of a JavaBean
accessor. As a result, no property is generated for those (invalid)
accessor and no binding occurs on them either.

Closes gh-12390
2018-03-07 17:55:12 +01:00
Andy Wilkinson
f918e0eb6a Merge branch '1.5.x' 2018-03-05 11:55:18 +00:00
dreis2211
3adced9962 Remove workaround for JDK-8023130 in RunProcess
With JDK 8 being the baseline and JDK 7 not being supported anymore we
can get rid of the workaround for a JDK 7 bug in
ProcessBuilder.inheritIO on Windows machines.

Closes gh-12337
2018-03-05 10:39:28 +00:00
Johnny Lim
751c444166 Polish
See gh-12326
2018-03-03 12:25:41 +01:00
Andy Wilkinson
3370c23ab9 Skip the Gradle plugin when building with the full profile and JDK 10
See gh-12028
2018-03-02 17:48:27 +00:00
Andy Wilkinson
2b1252e282 Skip the Gradle Plugin when building with JDK 10
Previously, the JDK 10 build would fail as we build the plugin using
Gradle 4.0.x (the lowest version of Gradle that we support) and
Gradle 4.0.x doesn't work with Java 10.

Upgrading to Gradle 4.1, which appears to work with Java 10, was
considered but rejected for now as it introduces the risk that we
inadvertently use an API that's new in 4.1 and break our 4.0 support.

This commit goes for the extreme option and disables building the
Gradle Plugin when building with JDK.

See gh-12028
2018-03-02 17:05:58 +00:00
Andy Wilkinson
4a3e0a231c Test the Gradle plugin against Gradle 4.6
Closes gh-12314
2018-03-02 13:41:28 +00:00
Andy Wilkinson
e4a1fed3b8 Test the Gradle plugin against Gradle 4.6 2018-03-02 13:41:27 +00:00
Andy Wilkinson
188d120c9c Test the Gradle plugin against Gradle 4.5.1
Closes gh-12315
2018-03-02 13:41:27 +00:00
Andy Wilkinson
8d1e69bca4 Polish Gradle plugin's javadoc 2018-02-28 20:22:45 +00:00
Andy Wilkinson
703de64842 Reinstate imports 2018-02-28 20:11:42 +00:00
Phillip Webb
7bc535e4fa Polish 2018-02-28 10:59:26 -08:00
Stephane Nicoll
4180762d6d Polish contribution
Closes gh-12236
2018-02-28 09:01:59 +01:00
igor-suhorukov
56cbc65e7b Polish
See gh-12236
2018-02-28 08:58:46 +01:00
Andy Wilkinson
9640881f38 Fix BuildInfo up-to-date check when group, name, or version changes
Previously, if the project's group, name, or version changed the
BuildInfo task would still be considered up-to-date as the values of
the project's properties were not reflected in the fields of the
BuildInfo instance.

This commit updates BuildInfo to copy the value of the project's
property to the corresponding BuildInfo field when the property is
read using its getter method on BuildInfo.

Closes gh-12266
2018-02-27 21:21:16 +00:00
Phillip Webb
3e4da3cc37 Polish 2018-02-27 12:53:01 -08:00
Andy Wilkinson
fdb9a1ea8f Consider time in BuildInfo up-to-date checks and allow it to be set
Closes gh-12111
Closes gh-12266
2018-02-27 20:09:07 +00:00
Andy Wilkinson
30f79f2fb1 Use application name as convention for distribution's base name
Closes gh-12232
2018-02-27 12:56:50 +00:00
Andy Wilkinson
60ac2e5c09 Reduce the amount of garbage produced by JarFile
Previously, working with a JarFile created a large amount of garbage
that was allocated on the thread local allocation buffer (TLAB).
The TLAB allocations made a significant contribution to GC pressure
and slowed down startup. This commit reduces the amount of garbage
by making a number of changes.

Reading from a RandomAccessDataFile has been reworked to avoid
creating new RandomAccessFile instances. A single RandomAccessFile
is now created for an entire jar file and it is used to read data from
anywhere in that jar file, including entries in nested jar files. To
ensure that reads remain thread-safe, a lock is taken on the
RandomAccessFile that is shared by all RandomAccessDataFile instances
that are provided access to (portions of) the same jar file.

Reading all of the bytes from a RandomAccessData has been reworked to
avoid the use of an InputStream that was created, used to read the
data, and then thrown away. In place of the InputStream-based
mechanism a method has been introduced that returns all of the
RandomAccessData as a byte[]. Building on this change, a method has
also been introduced to read a portion of a RandomAccessData as a
byte[]. This avoids the need to create a new RandomAccessData
subsection where the subsection was only used to read its entire
contents and then thrown away.

Decoding of an MS-DOS datetime has been reworked to use LocalDataTime
rather than GregorianCalendar. The former produces less garbage than
the latter.

Closes gh-12226
2018-02-27 10:48:15 +00:00
Phillip Webb
29c3be3590 Polish 2018-02-26 10:26:02 -08:00
Stephane Nicoll
306c79f0de Merge branch '1.5.x' 2018-02-26 18:03:32 +01:00
igor-suhorukov
98f4692c62 Polish
This commit changes invocations to immediately return the expression
instead of assigning it to a temporary variable. The method name should
be sufficient for callers to know exactly what will be returned.

Closes gh-12211
2018-02-25 10:59:02 +01:00
Stephane Nicoll
2641559231 Polish contribution
Closes gh-12202
2018-02-24 16:10:44 +01:00
dreis2211
e2fb093ccf Polish
See gh-12202
2018-02-24 16:09:38 +01:00
Johnny Lim
d441a8a89a Polish
Closes gh-12205
2018-02-24 11:53:25 +01:00
Andy Wilkinson
85c7ed2746 Merge branch '1.5.x' 2018-02-23 17:15:23 +00:00
Phillip Webb
4b9c3c137e Polish Collection.toArray
Consistently use `StringUtils.toStringArray`, `ClassUtils.toClassArray`
or zero length when converting collections to arrays.

Fixes gh-12160
2018-02-22 21:11:30 -08:00
Stephane Nicoll
3fddfee65c Fix default value of endpoint's cache ttl
Closes gh-12173
2018-02-22 13:35:50 +01:00
igor-suhorukov
fe023817c7 Polish static finals
Closes gh-12083
2018-02-19 20:10:58 -08:00
Johnny Lim
88b184ca23 Polish 2018-02-19 20:00:20 -08:00
Andy Wilkinson
e1ab62668f Merge branch '1.5.x' 2018-02-13 15:05:28 +00:00
Andy Wilkinson
5522174e96 Provide package info for all packages included in javadoc 2018-02-08 16:50:37 +00:00