Refactor publishing workflow, reduce file count#359
Merged
Conversation
Manrich121
approved these changes
Jun 23, 2026
Manrich121
left a comment
Contributor
There was a problem hiding this comment.
LGTM and excluding sha512 hashes make sense
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
To be able to understand what we're uploading to Maven Central better, this restructures the publishing workflow. Currently, publishing works by:
build/sonatypeLocalmaven repository.This keeps the first step, but refactors the second to first aggregate all packages being published in the top-level
build/sonatypeBundledirectory. This allows us to analyze the bundle from a single directory. Also, it allows us to replace custom uploading code and Gradle tasks with a plaincurlinvocation.Additionally, this fixes the build configuration to avoid dokka output being published as a
-javadoc.jar. Those take up a lot of space, and aren't useful since we publish them separately. Also, skips sha512 hashes (only keeping md5, sha1 and sha256 around) and hashes on signatures (which aren't required), reducing the total amount of files.I also had Claude generate an analysis script to break down the total file size. This is the output from a test run in CI:
This is a noticable reduction in total file size (which was at roughly 100MB before this PR) and file count (was at 5k). However, it's still too much. We should discuss next steps offline.
AI use disclosure: The analysis script and some build changes were generated with Claude Code, but manually revised.