Skip to content
This repository has been archived by the owner on Feb 12, 2018. It is now read-only.

Upload maven-protoc-plugin to Maven Central #11

Closed
jsilland opened this issue Feb 26, 2013 · 23 comments
Closed

Upload maven-protoc-plugin to Maven Central #11

jsilland opened this issue Feb 26, 2013 · 23 comments
Assignees
Labels
Milestone

Comments

@jsilland
Copy link

I'm about to publish a library whose Maven artifact uses this plugin to compile proto messages. I'd like to make this library available on Maven Central, which discourages the use of pluginRepositories and provides only a convoluted way for me to upload a third party artifact to Central, which I would like to avoid doing myself: https://docs.sonatype.org/display/Repository/Uploading+3rd-party+Artifacts+to+The+Central+Repository

Is there a concrete plan to make maven-protoc-plugin available on central? I read in a separate bug that there's talk of doing a clean-room implementation of this plugin due to some confusion surrounding licenses, but would this further delay to publishing of this plugin to the rest of the world. I'm happy to contribute time and code to this effort if the plans for this have already been devised.

@sergei-ivanov
Copy link
Owner

Yes, I am planning to push it to Maven central, but it will be a completely new plugin. Please bear with me for the time being. I cannot give you a hard deadline, but I shall try to commit more resources to this effort in the near future. Thank you for your patience.

@SomMeri
Copy link

SomMeri commented Jun 27, 2013

👍

@jsilland
Copy link
Author

Sergei,

Could you give an update on this? I now have a couple of published OSS projects that depend on this plugin an having to depend upon a non-standard Maven repo is bad form. While I realize you may have bigger plans for this plugin, a more pragmatic approach would be start with releasing what you already have and make incremental progress after that.

@sergei-ivanov
Copy link
Owner

Hello Julien,

Sorry for not responding for a whole month. In that time I actually applied for a place at CodeHaus Mojo project, but the proposal was met with a lack of enthusiasm, or hardly any response in fact. I guess I am going to carry on here, but as I said before, prior to deployment into Maven Central I need to rewrite large parts of the plugin from a clean state, so that it complies with Maven plugin guidelines and is clean from the licensing perspective. I started working on it, but there's nothing publicly available yet.

Kind regards,
Sergei

@lanwen
Copy link

lanwen commented May 18, 2014

👍

@sergei-ivanov
Copy link
Owner

I was also contacted by people from Google recently (not the protobuf team, but another team who are using protobuf and the plugin), and they promised to come back with the possible options when they'd have consulted their open-source department, but I have not heard from them since then. Let me ping them and see if there's been any progress at all.

@philipa
Copy link

philipa commented Sep 18, 2014

Any news on this? It would be great to see this in Central.

@niels1voo
Copy link

+1. it would help us to have it in a public maven repo.

@sergei-ivanov
Copy link
Owner

I've been contacted by Google again last week, they would like to reintegrate the plugin back into the protobuf project, but I do not vest much hope in it. Let us see how the situation develops in the next few weeks. I am trying to maintain the plugin and I am adding new functionality from time to time, but I cannot commit resources to a complete rewrite, which would have eliminated any licensing issues. The best outcome would indeed be if we somehow sorted it out with Google and they either took it in house or appointed me as an official maintainer.

@parsnips
Copy link

parsnips commented Jun 1, 2015

Hey @sergei-ivanov ,

I'm curious as to which licensing issues are presented here. Has anyone attempted to contact the parent and ask them to MIT license the software? I don't see a LICENSE in either the parent repo or this one, so could it be as simple as that? The google documentation already specifies this plugin as the way to go, so it would be nice to get this into maven central. Do you require any assistance here?

Thanks!

@sergei-ivanov
Copy link
Owner

@parsnips
I provided a pretty detailed (and admittedly emotional) explanation in dtrott#27, with references to some old discussion threads related to this. The gRPC team have been very co-operative and we managed to get the plugin going with the latest protoc and grpc binaries. I did not know though that they'd already endorsed this plugin in their documentation!
From the licensing point of view the situation remains the same. There has been no commitment from Google to re-take the ownership of the project and either allocate their resources to its evolution in the long term or retain me as a committer. On my side, I still lack resources for a major rewrite, because I can only work on this project in my spare time outside of billable hours (thank you, corporate legal departments). Therefore I keep carrying on with bug fixes and drip-feed improvements.

@tinnet
Copy link

tinnet commented Aug 6, 2015

@sergei-ivanov really messy story with the G there & I can relate a lot to you not finding free time to spend on this

On my latest project I can't use non-central repos anymore :( In case anybody has the same problem, we switched to this plugin instead: https://github.com/os72/protoc-jar-maven-plugin

@jsilland
Copy link
Author

@SylvainJuge just reminded me that this bug was opened two and half years ago and, from an external standpoint, very little has changed.

@sergei-ivanov, I see you have been recently active in this repository – could you please provide an insight into your plan and timeline?

@sergei-ivanov
Copy link
Owner

@jsilland Little has actually changed from the internal standpoint either. I am still looking after the plugin, integrating occasional pull requests and fixing it whenever it is broken due to various external factors. The commercial projects I am working on at the moment make no use of the plugin, but I am still maintaining it out of good will. That probably sums it up, there's currently no timeline and I cannot make any promises at the moment.

@SylvainJuge
Copy link

I've been publishing to sonatype OSS repo recently, it does not take much time to do it http://central.sonatype.org/pages/ossrh-guide.html, there is also few constraints on jar packaging groupId.

However, it involves signature keys, which should not be publicly shared, thus I don't know how we can help since that's more than just a pull-request.

@sergei-ivanov
Copy link
Owner

There's no technical obstacle to it, it is a potential licensing issue that puts me off. I can easily enough push to Central from my existing Bintray repo, but I do not fancy ending up in some sort of IP dispute with Google, who own the original code.

@jsilland
Copy link
Author

Allow me to try untangling the issues at stake here —

You explain that you do not have the resources to move this plugin towards a release on Maven central – something that is perfectly understandable and that a lot of people here can relate to. However, you also say (earlier in this thread) "The best outcome would indeed be if [Google] appointed me as an official maintainer". How do you expect an official anointment by Google to free your schedule or give you the means to execute on the plans you have for this project?

On several occasions, you have mentioned licensing issues without ever making it clear what those were. Pretty much all of the Google-published OSS is released under the Apache 2 license, which is about as liberal as it gets. I'm pretty sure this was the case for the original version of this plugin as well, but this fork lacks a LICENSE file.

Again, clarifying your concerns seems like the only way to move things forward for your community of users. As per your own words, "I reckon it inherits the licence from the protobuf project" but you also say that you "[refuse to] relinquish the rights on my work to Google". Which one is it? What is the status of this project?

I'm sorry to say this because you have generally been quite responsive to the various bugs and feature requests that I have filed here but – something just doesn't check out. The reality is that this is a fork of a liberally-released open-source project and that it is on you, the owner, and not on Google, to choose to put your fork back in the public domain.

@sergei-ivanov
Copy link
Owner

@jsilland Sorry for disappearing for a long time, but there's some good news at last. I have been in a conversation with the OSS legal team at Google, and we have fully settled the issue with them. I do really appreciate their goodwill and co-operation, and I intend to implement all agreed changes as soon as possible.

@243826
Copy link

243826 commented Jan 20, 2016

Sergei - letting you know that waiting for the plugin to be available.

@mtsgrd
Copy link

mtsgrd commented Jan 20, 2016

+1

1 similar comment
@fenske
Copy link

fenske commented Jan 20, 2016

+1

@sergei-ivanov
Copy link
Owner

@243826 It is in progress, I am waiting for OSSRH approval, which will allow me to push into Maven Central.

@sergei-ivanov
Copy link
Owner

Hello all,

We managed to amicably resolve licensing issues with Google. The plugin has been licensed under Apache 2.0 licence, and it has a new home now:
https://github.com/xolstice/protobuf-maven-plugin

The new plugin is already available in Maven Central. Please be aware that the coordinates have changed. I placed a relocation POM in the old Bintray repository to make the transition easier.

This repository will be locked down shortly. Please submit issues and pull requests to the new repository.

Thank you for your patience.
Kind regards,

Sergei

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests