- Renamed
FastFilePathUtil->FastFilePathRelativzer - Updated dependencies
- Updated dependencies
- Update to Testcontainers v2
- Use Virtual Threads on Java 21+
- Minor optimizations
- Updated dependencies
- Windows NTFS junction fix
- Automatically disable it on Java 26+ as JDK-8364277 is fixed there
- Backport changes from Java 25 to ensure compatibility and get performance improvements (JEP 486)
- Updated dependencies
- Added an explicit option for enabling the Windows NTFS junction fix:
useWinNTFSJunctionFixIfApplicable#155- Enabling it also requires adding
--add-exports java.base/sun.nio.fs=ALL-UNNAMEDor performance will be impacted by ~20x due to non-accessible file attributes cache - This option is temporary and will be removed once the underlying JDK bug was fixed
- Enabling it also requires adding
- The default logger of
AdvancedImageFromDockerFilenow also includesdockerImageNameto make it easier to distinguish between parallel builds
- Addresses a JDK bug which results in a crash or "infinite" loop when encountering recursive NTFS junctions on Windows #155
- Add customizer for
TransferArchiveTARCompressor - Create more predefined FileContentModifiers
- This allows to e.g. remove not needed Maven modules when building
- Don't try to pull reserved
scratchimage during build
- Improve matching in
DockerfileCOPYParentsEmulator#134- Now should properly handle
./
- Now should properly handle
- Changed ignore backend to utilize JGit
- This should now behave exactly like a
.gitignore - Overall performance should be a lot faster
- This should now behave exactly like a
- Make it possible to modify transferred files
- Provide an option to emulate
COPY --parentsusingDockerfileCOPYParentsEmulator(which is currently not supported by Docker out of the box)- This option is required to utilize Docker's cache properly
# syntax=docker/dockerfile:1-labs # ... # Copy & Cache wrapper COPY --parents mvnw .mvn/** ./ RUN ./mvnw --version # Copy & Cache poms/dependencies COPY --parents **/pom.xml ./ # Resolve jars so that they can be cached and don't need to be downloaded when a Java file changes RUN ./mvnw -B dependency:go-offline -pl app -am -DincludeScope=runtime -T2C # Copying all other files COPY . ./ # Run the actual build RUN ./mvnw -B clean package -pl app -am -T2C -Dmaven.test.skip - At ton of minor optimizations and improvements
- Provide an option to always transfer specific paths
- Always transfer Dockerfile - as it is required for building - by default
- Migrated deployment to Sonatype Maven Central Portal #155
- Remove testcontainer's dependency onto JUnit 4
- Updated dependencies
- Do not pull images that are declared inside the Dockerfile (Multi-Stage build)
- Minor improvements in cleanup behavior (backported from upstream)
Initial release