cbeust / jcommander

Command line parsing framework for Java
Apache License 2.0
1.96k stars 334 forks source link

Not all repositories provide the latest version 1.74 ? #441

Closed Pitterling closed 5 years ago

Pitterling commented 6 years ago

Hi,

it seems that there is some discrepancy in providing the library ..

latest tagged git release - 1.71 Maven Repository - 1.72 Bintray Maven - 1.74

Will only Bintray be maintained ?

Thx, P.

ggdupont commented 6 years ago

More than this, it appears the jar and source on maven central and bintray are not aligned (as per IntelliJ API check)... It appeared for me on 1.72 from maven central and 1.74 from bintray.

Anyone can confirm this?

juherr commented 6 years ago

@cbeust has often issues with the bintray to central sync. That's why you don't see the exact same versions.

2 options:

jonforums commented 6 years ago

bottom line...what's the latest release one should use, v1.71 tag from this repo or v1.74 from bintray?

DPUkyle commented 6 years ago

+1 I don't mind if the "official" repo is bintray vs. maven central, that's not a problem.

But I'd like to politely suggest taking a second look at jcommander's tagging strategy. The fact that I can't easily jump to a tag for anything past v1.71 makes me a bit uncomfortable to grab the latest version, since I don't know exactly which commit to reference on github.

And of course, thanks for continuing to maintain this very useful tool! :+1:

reubenfirmin commented 5 years ago

Further, the maven antrun plugin apparently depends on jcommander 1.74. That means that a workaround is needed (using a secondary repo - compliance hurdle) in order to use antrun.

jsw commented 5 years ago

I'm not able to add additional pluginRepository, but this workaround seems to work for me.

                       <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.8</version>
                                ...
                <dependencies>
                    <dependency>
                        <groupId>com.beust</groupId>
                        <artifactId>jcommander</artifactId>
                        <version>1.72</version> <!-- force 1.72 until this is resolved https://github.com/cbeust/jcommander/issues/441 -->
                    </dependency>
                </dependencies>
            </plugin>
mkarg commented 5 years ago

This is ridiculous. Publishing to Maven Central via OSSRH is done in minutes. @cbeust Please push 1.74 to Maven Central or allow me to show you how simple this is.

cbeust commented 5 years ago

@mkarg Here is the result of my latest attempt to sync:

Last Synced: Never
Last Sync Status: Validation Failed
Last Sync Errors: Rule evaluation unexpectedly failed: org.sonatype.nexus.proxy.walker.WalkerException: Aborted walking on repository ID='combeust-1029' from path='/'. Dropping existing partial staging repository.

I'm happy to accept a PR that will make it easy to deploy to Maven Central because I really don't feel like debugging such an arcane error message when JCenter is pretty much a standard these days and so much easier to deploy to.

mkarg commented 5 years ago

We're publishing on Maven Central via OSSRH frequently and never had problems (but we do not sync via other services). How do you perform the release, manually (mvn deploy) or using a CI/CD system (like Travis CI)? For the PR we need to know that, because in case of CI/CD we need to write down the steps you have to manually configure within that system.

mkarg commented 5 years ago

BTW, the error message you mention says that your binaries fail needed preconditions. These preconditions can be seen when deploying using OSSRH, as the stage is not dropped automatically (as in your syncing case).

cbeust commented 5 years ago

Fixed, 1.75 now available on Maven Central: https://search.maven.org/artifact/com.beust/jcommander/1.75/jar