Skip to content

Conversation

@chikei
Copy link
Contributor

@chikei chikei commented Jul 25, 2025

more like a POC for #5592, I think there are rooms for sharing code/task between this and SonatypeCentralPublishModule

Copy link
Member

@lefou lefou left a comment

Choose a reason for hiding this comment

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

@chikei Is this code written from scratch? Is it partially copied from other places in the Mill repo? This info would greatly help reviewing it.

@chikei
Copy link
Contributor Author

chikei commented Sep 1, 2025

It's copied from existing SonatypeCentralPublishModule and replace the publishReleases in publishAll using almost identical from publishSnapshot. Effectively changing the publish flow for release from repo1's staging flow to direct http upload.

Edit: and remove the gpg args from publishAll as well

Copy link
Member

@lefou lefou left a comment

Choose a reason for hiding this comment

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

So, the general approach looks good.

I'd like a have the implementations of object MavenPublishModule moved into a trait and just extends that. That way, it should be easier to customize and reuse it in projects.

Also, the hard-coded use of MavenPublishModule.publishAll should instead use a ModuleRef instead.

@maxstreese
Copy link

maxstreese commented Oct 23, 2025

Hi @lefou and @chikei , do you still consider this PR actively worked on? If not I would like to attempt this (though it does feel a bit out of my depth).

@lefou regarding your last comment about (1) moving the implementations of object MavenPublishModule into a trait and (2) replace the call to MavenPublishModule.publishAll with a ModuleRef: If I look at the sources of SonatypeCentralPublishModule (which @chikei said MavenPublishModule is in large part a copy of) then both of these points apply to that as well. Therefore I am wondering if adjusting things only here is really desirable? Or should a larger refactoring be done that factors out the commonalities between these two modules and implements both of your remarks?

@lefou
Copy link
Member

lefou commented Oct 23, 2025

Hi @lefou and @chikei , do you still consider this PR actively worked on? If not I would like to attempt this (though it does feel a bit out of my depth).

It would be nice to get this over the finish line. Since the base functionality already done, left work should be mostly mechanical editing.

@lefou regarding your last comment about (1) moving the implementations of object MavenPublishModule into a trait and (2) replace the call to MavenPublishModule.publishAll with a ModuleRef: If I look at the sources of SonatypeCentralPublishModule (which @chikei said MavenPublishModule is in large part a copy of) then both of these points apply to that as well. Therefore I am wondering if adjusting things only here is really desirable? Or should a larger refactoring be done that factors out the commonalities between these two modules and implements both of your remarks?

Sharing common parts between both traits would be the best case, of course. Whether we do it right now or in a subsequent PR is both fine for me, as long as we get it merged rather soon.

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.

3 participants