Commit Graph

836 Commits

Author SHA1 Message Date
Andy Wilkinson a6f1619971 Use Asciidoctor extension to verify documented configuration properties
Closes gh-18451
2019-10-01 10:39:06 +01:00
Stephane Nicoll e0d6d90683 Merge branch '2.1.x'
Closes gh-18447
2019-10-01 08:06:23 +02:00
dreis2211 417bfc4c87 Fix comment position in ZipHeaderPeekInputStreamTests
See gh-18445
2019-10-01 08:05:08 +02:00
dreis2211 370998e91e Simplify pipe escaping for reference doc tables
Replace `{vbar}` with an escaped pipe character. Unfortunately
`{vbar}` does not render correctly with PDF generation.

See gh-18374
2019-09-28 22:02:27 -07:00
dreis2211 8a6e254465 Avoid need to escape pipe character in reference tables 2019-09-28 22:02:27 -07:00
Phillip Webb a13666d696 Polish "Simplify code"
See gh-18342
2019-09-26 19:12:18 -07:00
Yuyan 4d0da4b700 Simplify code
See gh-18342
2019-09-26 19:09:28 -07:00
Brian Clozel eeaa9bc6c1 Fix ref docs code snippet theme
This commit also fixes a link in the reference documentation.

See gh-18293
2019-09-24 11:25:57 +02:00
Andy Wilkinson 79b5fd9d73 Polish "Allow the user that runs the app to be specified via an env var"
See gh-16973
2019-09-21 20:14:49 +01:00
Wagner Macedo b57f35893c Allow the user that runs the app to be specified via an env var
See gh-16973
2019-09-21 17:57:20 +01:00
Phillip Webb 838e7eb605 Extract spring-doc-resources URL property
Update the build to use a shared spring-doc-resources URL
rather than repeating it multiple times.

See gh-18293
2019-09-20 21:38:56 -07:00
Andy Wilkinson 02ac089767 Polish "Support zip64 jars"
See gh-16091
2019-09-20 14:35:19 +01:00
Camille Vienot 1917e1eac5 Support zip64 jars
See gh-16091
2019-09-20 12:44:04 +01:00
Andy Wilkinson d5fc324537 Upgrade to Asciidoctor Maven Plugin 1.6.0
Closes gh-17234
2019-09-20 11:59:16 +01:00
Andy Wilkinson 7d3e53c94c Fix test expectations for run-fork JVM args on Java 13+
Closes gh-17008
2019-09-19 10:07:03 +01:00
Andy Wilkinson d2b28ceba5 Don't add -Xverify:none to JVM args when running on Java 13
Closes gh-17008
2019-09-18 21:51:41 +01:00
Andy Wilkinson 1b237de5f5 Use Awaitility in our own tests
Closes gh-18227
2019-09-13 20:50:14 +01:00
Johnny Lim 5b41c3b608 Polish
See gh-18192
2019-09-12 14:55:47 +02:00
Stephane Nicoll 39fed4a9d9 Fix binding detection of ConfigurationProperties contributed by @Bean
This commit makes sure that a ConfigurationProperties type contributed
by a `@Bean` factory method uses properties binding regardless of the
presence of a matching constructor.

`@Bean` method makes sure the user is in control and will be responsible
of creating the instance. As a result, binding of properties will not
happen there and therefore can only happen with regular JavaBean
accessors.

Closes gh-18184
2019-09-09 13:29:31 +02:00
Andy Wilkinson 0c0e2dd54b Merge branch '2.1.x'
Closes gh-18186
2019-09-09 11:16:30 +01:00
Andy Wilkinson 7b1e10ed00 Use one sentence per line in Actuator and Gradle plugin doc source
Closes gh-18185
2019-09-09 10:59:49 +01:00
Andy Wilkinson ff1983c9ae Merge branch '2.1.x'
Closes gh-18168
2019-09-06 14:38:45 +01:00
Andy Wilkinson 795c2f225f Support getComment() on a nested JarFile
Previously, calling getComment() on a nested jar file would result
in the outer jar file's comment being returned.

This commit updates the loader's JarFile to read the file's comment
from the central directory end record and return it from getComment().

Fixes gh-18128
2019-09-06 14:29:48 +01:00
Andy Wilkinson fc1889ee72 Merge branch '2.1.x'
Closes gh-18167
2019-09-06 14:04:54 +01:00
dreis2211 ae30515e5e Test the Gradle Plugin against Gradle 5.6.2
See gh-18164
2019-09-06 13:19:08 +01:00
Andy Wilkinson 4b5ebd8505 Process all non-private methods, not just public methods
Previously, the configuration processor would ignore any
@ConfigurationProperties-annotated methods that were not public. This
prevented metadata generation for package-private @Bean methods such
as those in DataSourceConfiguration's inner-classes for DBCP2, Hikari,
and Tomcat JDBC.

This commit updates the annotation processor so that it will process
any non-private method annotated with @ConfigurationProperties.

Fixes gh-18124
2019-09-04 14:26:12 +01:00
Andy Wilkinson 29080b87ec Protect autoconfigure module against slow starting test containers 2019-09-04 10:15:10 +01:00
dreis2211 07b857e57a Use disabledWithoutDocker option for @Testcontainers
See gh-18095
2019-09-03 09:51:53 +02:00
dreis2211 b4350a9d96 Remove unnecessary blank lines
See gh-18089
2019-09-03 08:48:10 +02:00
Andy Wilkinson a4b8d2401f Merge branch '2.1.x'
Closes gh-18094
2019-09-02 14:54:48 +01:00
Andy Wilkinson abba4fa9c9 Include exception's message in message printed by AP
Fixes gh-17974
2019-09-02 14:52:14 +01:00
Andy Wilkinson b463acb10f Merge branch '2.1.x'
Closes gh-18093
2019-09-02 14:42:21 +01:00
Andy Wilkinson edcaee375f Consider @Deprecated on field when determining property's deprecation
Fixes gh-17550
2019-09-02 14:39:24 +01:00
dreis2211 3e35a6616c Fix duplicated words
See gh-18004
2019-09-01 09:09:38 +02:00
Andy Wilkinson 7f8b3a7b86 Test the Gradle Plugin against Gradle 5.6.1
Closes gh-17995
2019-08-29 12:53:50 +01:00
dreis2211 26a22fa523 Test the Gradle Plugin against Gradle 5.6.1
See gh-17984

Closes gh-17984
2019-08-29 12:46:26 +01:00
Stephane Nicoll b57db504df Fix broken build due to Kotlin upgrade 2019-08-29 10:01:16 +02:00
Andy Wilkinson ab87b2a39b Polish 2019-08-19 16:05:43 +01:00
thelproad 9c1f503e46 Simplify if statements
See gh-17884
2019-08-17 06:50:32 +02:00
dreis2211 d4affd7f85 Use hasSize() assertion in favor of length checks
See gh-17874
2019-08-17 06:39:41 +02:00
Andy Wilkinson a785a5b58a Test the Gradle Plugin against Gradle 5.6
Closes gh-17883
2019-08-16 08:46:48 +01:00
dreis2211 56940fca97 Test the Gradle Plugin against Gradle 5.6
See gh-17876
2019-08-16 08:45:33 +01:00
dreis2211 b605cddb10 Polish some Collections API calls
See gh-17825
2019-08-11 10:36:10 +02:00
Madhura Bhave 8a9c60a29a Merge branch '2.1.x' 2019-08-08 11:52:50 -07:00
Madhura Bhave 541d3c4853 Fix typo 2019-08-08 11:52:05 -07:00
Stephane Nicoll 07cd67a3fe Tolerate null startTime
This commit prevents a potential NPE if the startTime of the
MavenSession is not available and fallbacks to the current time. This
can happen when invoking the plugin with Maven embedded in an IDE.

Closes gh-17810
2019-08-08 17:32:04 +02:00
Stephane Nicoll 1c8f727864 Polish "Simplify if statements"
See gh-17785
2019-08-08 14:35:29 +02:00
SaberXu c6c3a91f8d Simplify if statements
See gh-17785
2019-08-08 14:32:37 +02:00
Phillip Webb 2cdceb92bf Polish 2019-08-03 14:29:20 +01:00
Phillip Webb da4f436140 Change SearchStrategy EXHAUSTIVE to TYPE_HIERARCHY
Fixup references following upstream Spring Framework change.
2019-07-31 15:11:43 +01:00
Stephane Nicoll 5926547767 Merge branch '2.1.x'
Closes gh-17745
2019-07-31 15:15:21 +02:00
Stephane Nicoll 0c560795fd Harmonize settings.gradle documentation in Gradle getting started guide
See gh-17736
2019-07-31 15:11:53 +02:00
Dave Syer e7b0450a7f Add missing repositories to snapshot configuration
See gh-17736
2019-07-31 15:00:07 +02:00
Stephane Nicoll f68c7a751f Polish "Escape reserved asciidoc character in generated documentation"
See gh-17663
2019-07-31 10:17:14 +02:00
vivganes b0fa58e861 Escape reserved asciidoc character in generated documentation
See gh-17663
2019-07-31 10:06:38 +02:00
Phillip Webb 8bc780762a Merge branch '2.1.x' 2019-07-24 11:42:48 +01:00
Phillip Webb fb1dd8fe93 Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
Phillip Webb 913e831f4e Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
Stephane Nicoll f3a138da16 Skip Gradle Plugin test when building with JDK 13
See gh-16970
2019-07-24 08:49:52 +02:00
Stephane Nicoll 19eaf86efa Update multi release test jar to include Java 12
See gh-16970
2019-07-24 08:06:22 +02:00
Johnny Lim 8f8b0b493e Remove println invocations in tests
See gh-17592
2019-07-21 18:26:26 +02:00
Andy Wilkinson 41957ec2ad Polish "Polish OutputCapture and its JUnit Jupiter extension"
See gh-17049
2019-07-18 17:46:56 +01:00
Stephane Nicoll 4ce9c6edb3 Polish "Make layout parameter available as a user property"
See gh-17277
2019-07-18 18:20:06 +02:00
Marc Rohlfs d2e34e6b07 Make layout parameter available as a user property
This commit allows the layout parameter of the Maven repackage goal to
be set from the command line.

See gh-17277
2019-07-18 18:20:06 +02:00
dreis2211 2038fac825 Remove testsupport.assertj package
See gh-17557
2019-07-18 14:20:28 +02:00
Phillip Webb a9ba7080ce Merge branch '2.1.x' 2019-07-17 21:48:42 +01:00
Phillip Webb 30b5ba87ae Merge branch '2.0.x' into 2.1.x 2019-07-17 21:48:01 +01:00
Phillip Webb 74d00354f5 Refine BuildInfoMojo time property
Update `BuildInfoMojo` so that the time property now defaults to
`${session.request.startTime}` rather than the time the Mojo was
created. Also update javadoc to make it clear that any supplied
value will be passed to `Instant.parse`.

See gh-17390
2019-07-16 13:51:03 +01:00
dreis2211 4ec035977b Polish testsupport.junit.platform package
See gh-17524
2019-07-15 21:35:25 +01:00
Phillip Webb eff1147ccc Rename classpath runner package
Remove `runner` since we're no longer tied to JUnit 4.

See gh-17491
2019-07-15 13:40:26 +01:00
Phillip Webb 1117fdb2b3 Make ModifiedClassPathExtension package private
Meta-annotate `ClassPathExclusions` and `ClassPathOverrides` with
so that the `ModifiedClassPathExtension` no longer needs to be
used directly.

See gh-17491
2019-07-15 13:38:26 +01:00
Phillip Webb b6ec1332a0 Polish ModifiedClassPathClassLoader
Remove the `ModifiedClassPathClassLoaderFactory` in favor of
factory methods on `ModifiedClassPathClassLoader`.

See gh-17491
2019-07-15 13:37:34 +01:00
Phillip Webb 4fe5e9e31e Remove direct junit-platform-launcher dependency
Replace any direct `junit-platform-launcher` dependencies and instead
rely on the test runner providing it. Launcher related class are not
handled via reflection.

This update allows us to workaround SUREFIRE-1679.

Closes gh-17517
2019-07-15 13:35:08 +01:00
Phillip Webb 543fcdbbfd Delete internal OutputCaptureRule
Delete our internal `OutputCaptureRule` since we not longer have any
tests using it.
2019-07-15 00:36:13 +01:00
Phillip Webb 13b39cbbbf Delete ModifiedClassPathRunner
Delete `ModifiedClassPathRunner` since we no longer have any tests
that use it.

See gh-17491
2019-07-15 00:33:00 +01:00
Phillip Webb bd81bb90eb Polish ModifiedClassPath support
See gh-17491
2019-07-15 00:32:34 +01:00
dreis2211 2a4c48cb91 Add JUnit 5 ModifiedClassPathExtension
Add a JUnit 5 extension that allows tests to be run with a
modified classpath. Since JUnit 5 does not currently offer a way
to run tests with a different classpath, we instead fake the
original invocation and launch an entirely new run for each
method.

See gh-17491
2019-07-15 00:28:53 +01:00
dreis2211 90d824f6cb Extract ModifiedClassPathClass logic
Extract classes from `ModifiedClassPathRunner` so that they can
be reused.

See gh-17491
2019-07-15 00:27:42 +01:00
Phillip Webb 01933f9b06 Merge previously split strings
Merge some string lines that were previously split because of the
90 chars wide formatting.
2019-07-15 00:24:19 +01:00
Phillip Webb c3816bfe7b Polish output capture names 2019-07-15 00:24:18 +01:00
Phillip Webb cdf43a7489 Polish 2019-07-14 19:42:56 +01:00
Phillip Webb 8d4a2add63 Allow OutputCaptureRule to be used with AssertJ
Update `OutputCaptureRule` so that it now implements
`CapturedOutput` and can be used directly with AssertJ.

Closes gh-17512
2019-07-14 19:42:42 +01:00
Stephane Nicoll 79b29396d0 Merge branch '2.1.x'
Closes gh-17506
2019-07-14 13:14:21 +02:00
dreis2211 e9203a280c Test the Gradle Plugin against Gradle 5.5.1
See gh-17496
2019-07-14 13:13:17 +02:00
Dmytro Nosan 8dd9c6baa1 Allow build.time to be disabled so BuildInfoMojo's output is repeatable
See gh-17390
2019-07-10 13:40:17 +01:00
dreis2211 32549cfc85 Remove folder that only contains package-info
See gh-17471
2019-07-10 06:24:40 +01:00
Andreas Gebhardt ed7cfedb51 Fix JavaDoc within spring-boot-test-support
See gh-17443
2019-07-08 12:48:02 +01:00
Andy Wilkinson bd22ca0268 Polish 2019-07-04 19:36:32 +01:00
Andy Wilkinson 2816635418 Polish 2019-07-04 17:51:20 +01:00
Andy Wilkinson 4b2a116fa7 Use String indexOf(char) and lastIndexOf(char) where possible
Closes gh-11416
2019-07-04 17:44:40 +01:00
Andy Wilkinson aa01bd3890 Polish "Polish GradleCompatibilityExtension's javadoc"
See gh-17411
2019-07-04 10:18:18 +01:00
dreis2211 dc4cc214fe Polish GradleCompatibilityExtension's javadoc
See gh-17411
2019-07-04 10:13:17 +01:00
Andy Wilkinson 9d5fa98334 Merge branch '2.1.x'
Closes gh-17429
2019-07-04 10:07:40 +01:00
Andy Wilkinson 7553b60e68 Test the Gradle Plugin against Gradle 5.5
Closes gh-17428
2019-07-04 10:05:57 +01:00
Phillip Webb a66c4d3096 Unify method visibility of private classes
Apply checkstyle rule to ensure that private and package private
classes do not have unnecessary public methods. Test classes have
also been unified as much as possible to use default scoped
inner-classes.

Closes gh-7316
2019-07-03 11:39:47 -07:00
Andy Wilkinson 6791dbb786 Merge branch '2.1.x'
Closes gh-17381
2019-07-01 15:47:48 +01:00
Andy Wilkinson 4083c721f2 Fix URL normalization when replacing /./ with /
Previously, a regular expression of /./ was used to replace /./ with
/.  The '.'' in the expression matches any single character so the
replacement was more broadly applicable than it should have been. For
example, /a/ would be replaced with /.

This commit uses Pattern.LITERAL to compile the regular expression
from the CURRENT_DIR (/./) contant. This allows the constant to be
used to check for occurances of /./ in the string before attempting
replacement, while also ensuring that the '.' is treated literally.

Closes gh-17341
2019-07-01 15:42:54 +01:00
Andy Wilkinson 1fa48882bb Merge branch '2.1.x'
See gh-17362
2019-06-29 20:39:19 +01:00
Andy Wilkinson f4e7b80651 Merge branch '2.0.x' into 2.1.x
See gh-17361
2019-06-29 20:38:18 +01:00
Andy Wilkinson 761856ac70 Merge branch '1.5.x' into 2.0.x 2019-06-29 20:29:16 +01:00
Phillip Webb 605599138e Merge branch '2.1.x' 2019-06-28 23:56:02 -07:00
Phillip Webb 92bff3c328 Merge branch '2.0.x' into 2.1.x 2019-06-28 23:42:28 -07:00
Phillip Webb cfeb0239b7 Merge branch '1.5.x' into 2.0.x 2019-06-28 23:28:34 -07:00
Madhura Bhave 7e22901bb2 Fail build on unresolved documentation links
Closes gh-12005
2019-06-28 12:04:30 -07:00
Andy Wilkinson 66f1344f7c Merge branch '2.1.x'
Closes gh-17335
Closes gh-17292
2019-06-27 12:00:34 +01:00
Andy Wilkinson 91786bc712 Merge branch '2.0.x' into 2.1.x
Closes gh-17334
2019-06-27 11:39:17 +01:00
Andy Wilkinson 256a0d636d Merge branch '1.5.x' into 2.0.x 2019-06-27 11:39:02 +01:00
Andy Wilkinson 361a9404fd Merge branch '2.1.x'
Closes gh-17321
2019-06-26 17:40:44 +01:00
Andy Wilkinson 3fb06ee29e Merge branch '2.0.x' into 2.1.x
Closes gh-17320
2019-06-26 17:39:13 +01:00
Andy Wilkinson 4973a2b217 Merge branch '1.5.x' into 2.0.x 2019-06-26 17:37:39 +01:00
Stephane Nicoll e560b7f6ba Remove public modifier on JUnit5 lifecycle methods
See gh-17292
2019-06-21 18:09:05 +02:00
Andy Wilkinson 6d8ba654cc Merge branch '2.1.x'
Closes gh-17276
2019-06-20 11:17:37 +01:00
Andy Wilkinson a5ae1de706 Fix spring-boot-loader's tests on Windows
Closes gh-17275
2019-06-20 11:08:35 +01:00
Phillip Webb 1e0cf960f0 Reinstate single page HTML and PDF docs
Closes gh-16854
2019-06-17 20:44:01 -07:00
Phillip Webb 2c2b962204 Merge branch '2.1.x'
Closes gh-17232
2019-06-17 15:54:51 -07:00
Phillip Webb d82ccf1405 Ensure META-INF/MANIFEST.MF remains as first entry
Update Gradle archive tasks to ensure that `META-INF/` and
`META-INF/MANIFEST.MF` remain as the first entries of the archive.

Prior to this commit, rewritten archives would violate the implicit
specification of `JarInputStream` that these entries should be first.

Fixes gh-16698
2019-06-17 15:48:14 -07:00
Andy Wilkinson f36af7b16d Polish 2019-06-17 11:02:54 +01:00
Andy Wilkinson ece8703278 Merge branch '2.1.x'
Closes gh-17211
2019-06-17 10:36:46 +01:00
Andy Wilkinson 7d59b78829 Fix handling of jar files with + chars in their path
Closes gh-17208
2019-06-17 10:31:51 +01:00
Johnny Lim 368c0eebe4 Fix typo
See gh-17132
2019-06-16 11:42:00 +02:00
gaurav bhatnagar 1ec5fb9972 Drop deprecated 'spring.version' POM property
See gh-17043
2019-06-13 08:59:00 -07:00
Madhura Bhave 30cfe7b4c5 Polish 2019-06-13 08:02:26 -07:00
Andy Wilkinson cffc870fd6 Fix test failures on Windows
Since the move to JUnit 5, a number of tests were failing on Windows.
The majority were failing due to open file handles preventing the
clean up of the tests' temporary directory. This commit addresses
these failures by updating the tests to close JarFiles, InputStreams,
OutputStreams etc.

A change has also been made to CachingOperationInvokerTests to make
a flakey test more robust. Due to System.currentTimeMillis() being
less precise on Windows than it is on *nix platforms, the test could
fail as it would not sleep for long enough for the TTL period to have
expired.
2019-06-13 09:24:31 +01:00
Andy Wilkinson c56fbf8c3d Allow Archives to be closed so they can release resources
Closes gh-17126
2019-06-13 09:22:54 +01:00
Andy Wilkinson 048be1813e Ensure JarFile created for nested entry InputStream is closed
Closes gh-17127
2019-06-12 14:22:17 +01:00
Andy Wilkinson 29d1cd3b2d Merge branch '2.1.x'
Closes gh-17124
2019-06-12 13:01:40 +01:00
Andy Wilkinson c12ccfb342 Close JarFile if failure occurs during construction
Fixes gh-17123
2019-06-12 12:59:14 +01:00
Andy Wilkinson 405b4ad441 Merge branch '2.1.x'
Closes gh-17118
2019-06-12 12:28:19 +01:00
Andy Wilkinson 2833f60344 Avoid leaving streams open when writing libraries
Fixes gh-17115
2019-06-12 12:28:07 +01:00
Phillip Webb b3d5cd538d Add JUnit 5 checkstyle rules
Add a rule to enforce JUnit 5 usage and conventions.

Closes gh-17093
2019-06-10 16:16:45 -07:00
Phillip Webb 266d6334b2 Fix checkstyle RedundantModifier test violations 2019-06-07 20:46:33 -07:00
Andy Wilkinson b18fffaf14 Move tests to JUnit 5 wherever possible 2019-06-07 12:25:54 +01:00
Andy Wilkinson aef92b9295 Merge branch '2.1.x'
Closes gh-17079
2019-06-07 11:00:44 +01:00
Andy Wilkinson 24925c3dae Merge branch '2.0.x' into 2.1.x
Closes gh-17078
2019-06-07 10:50:34 +01:00
Andy Wilkinson c6c139d980 Merge branch '1.5.x' into 2.0.x 2019-06-07 10:46:31 +01:00
Phillip Webb db75347eb6 Merge branch '2.1.x' 2019-06-04 14:41:20 -07:00
Phillip Webb 0ef331018e Merge branch '2.0.x' into 2.1.x 2019-06-04 14:30:52 -07:00
Phillip Webb d306b31ce9 Merge branch '2.1.x' 2019-06-04 02:08:00 -07:00
Phillip Webb ccfbd03482 Merge branch '2.0.x' into 2.1.x 2019-06-04 02:07:14 -07:00
Phillip Webb b442d3b906 Merge branch '1.5.x' into 2.0.x 2019-06-04 01:49:03 -07:00
Phillip Webb 5fba43aa31 Merge branch '1.5.x' into 2.0.x 2019-06-04 00:05:57 -07:00
Brian Clozel c74badd4f2 Auto-configure Elasticsearch REST client in Spring Data
This commit auto-configures the Elasticsearch REST client support
as a template for Spring Data Elasticsearch. As of this commit,
using the transport client is still possible but developers
should migrate.

This commit also removes the deprecated annotation on the
Elasticsearch auto-configuration for the transport client, since
this deprecation notice is already present on the configuration
property.

Closes gh-17024
Closes gh-16542
2019-06-03 21:20:06 +02:00
Stephane Nicoll 8beb6c1bcb Document how to specify arguments on the command line with Maven
Closes gh-10926
2019-06-03 11:37:36 +02:00
Phillip Webb ad5e905bd7 Update copyright header of changed files 2019-05-30 11:30:43 -07:00
Phillip Webb 68aec8b6ee Polish 2019-05-30 11:30:27 -07:00
Andy Wilkinson ecf7c817a6 Build and test the Gradle plugin with Java 11 and 12
Closes gh-12333
2019-05-29 07:20:34 +01:00
Phillip Webb 988f02d766 Merge branch '2.1.x'
Closes gh-16996
2019-05-28 16:46:09 -07:00
Phillip Webb f380ba63eb Exclude Groovy MetaClass from property meta-data
Update `TypeExcludeFilter` to exclude `groovy.lang.MetaClass`.

Closes gh-16981
2019-05-28 16:42:42 -07:00
dreis2211 e59d734098 Fix Gradle plugin code formatting
See gh-16984
2019-05-28 18:10:04 +01:00
Andy Wilkinson c80218064f Use sorted properties to make build info output repeatable
Closes gh-14494
2019-05-28 16:30:36 +01:00