Skip to content

Port more non-API bug fixes and enhancements from main to 8.x - #2189

Merged
Goooler merged 4 commits into
8.xfrom
g/port-v9-fixes-2
Aug 13, 2026
Merged

Port more non-API bug fixes and enhancements from main to 8.x#2189
Goooler merged 4 commits into
8.xfrom
g/port-v9-fixes-2

Conversation

@Goooler

@Goooler Goooler commented Aug 13, 2026

Copy link
Copy Markdown
Member

Port additional non-API bug fixes and enhancements from main to 8.x.

Ported PRs / Fixes

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Ports a set of non-API fixes from main into the 8.x line, improving NOTICE merging behavior, ShadowJar cache invalidation, and application distribution layout when executableDir is customized.

Changes:

  • Adjust ApacheNoticeResourceTransformer formatting/copyright handling and output writing.
  • Ensure ShadowJar reruns when includes / excludes change by wiring them into task inputs.
  • Respect javaApplication.executableDir when generating/installing start scripts and distributions; update changelog.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
src/main/groovy/com/github/jengelman/gradle/plugins/shadow/transformers/ApacheNoticeResourceTransformer.groovy Refines NOTICE parsing/output generation and copyright fallback behavior.
src/main/groovy/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar.java Adds includes/excludes as explicit task inputs to fix up-to-date behavior.
src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowApplicationPlugin.groovy Updates install and distribution script handling to honor executableDir.
src/docs/changes/README.md Documents the backported fixes in the Unreleased changelog.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@Goooler
Goooler force-pushed the g/port-v9-fixes-2 branch from 4c194c4 to 62dba81 Compare August 13, 2026 13:56
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@Goooler
Goooler requested a lite review from Copilot August 13, 2026 13:58
@Goooler
Goooler merged commit 9bd08df into 8.x Aug 13, 2026
6 checks passed
@Goooler
Goooler deleted the g/port-v9-fixes-2 branch August 13, 2026 13:59
@Goooler

Goooler commented Aug 13, 2026

Copy link
Copy Markdown
Member Author

Merged into #2186.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

Suppressed comments (2)

src/main/groovy/com/github/jengelman/gradle/plugins/shadow/transformers/ApacheNoticeResourceTransformer.groovy:195

  • When a user explicitly configures copyright, actualCopyright becomes the user value, but the derived fallbackCopyright entry from the NOTICE contents can still be emitted later in the output because the skip condition only checks actualCopyright. This can reintroduce duplicate copyright blocks. Consider skipping fallbackCopyright as well (and still skipping actualCopyright if it happens to appear in entries).
            if (line == actualCopyright && count != 2) {
                continue

src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowApplicationPlugin.groovy:128

  • This PR changes installation/layout behavior to respect javaApplication.executableDir, but there doesn’t appear to be an integration test asserting non-default executableDir affects install/dist outputs (existing ApplicationSpec only exercises the default bin). Adding a test that sets application { executableDir = 'custom-bin' } and asserts scripts land under that directory (and are chmod’d) would help prevent regressions.
            into({ javaApplication.executableDir }) {
                from(startScripts)
                filePermissions { it.unix(493) }
            }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants