apache / apache/maven-shade-plugin

[MSHADE-481] Can we mark members in SimpleRelocator protected?

Open
#678 0 comments 0 reactions 0 assignees View on GitHub
enhancement priority:major
Dominant language
Java
Stars
188
Forks
103
Avg merge
16h 39m
Merged PRs (30d)
4

Description

**[Zongle Wang](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=JIRAUSER294797)** opened **[MSHADE-481](https://issues.apache.org/jira/browse/MSHADE-481?redirect=false)** and commented

I'm refactoring [Shadow Gradle Plugin](https://github.com/GradleUp/shadow), which implements Maven Shade Plugin on Gradle.
The logic in [SimpleRelocator.kt](https://github.com/GradleUp/shadow/blob/main/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator.kt) is simular to [SimpleRelocator.java](https://github.com/apache/maven-shade-plugin/blob/f15f26b1b8100d0c3bfa15b9e8b233922432ee15/src/main/java/org/apache/maven/plugins/shade/relocation/SimpleRelocator.java) but behind some features and bug fixes. It would be great if we can mark some members `protected` in `SimpleRelocator.java`, this is handy for delegating logic of `SimpleRelocator.java` to `SimpleRelocator.kt`. This change would also make it easier to keep the Kotlin implementation in sync with updates from the Maven Shade Plugin side.

---
No further details from [MSHADE-481](https://issues.apache.org/jira/browse/MSHADE-481?redirect=false)

Contributor guide

No contributing guide indexed for this repository

Research direction

Read src/main/java/org/apache/maven/plugins/shade/relocation/SimpleRelocator.java and compare it with the linked SimpleRelocator.kt implementation. Identify which members need protected visibility for delegation, then verify that the requested visibility changes support the Kotlin implementation without changing behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, kotlin
Domain
build-system
Issue type
Refactor
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.