Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Community building #414

Open
HerrMuellerluedenscheid opened this issue Nov 19, 2024 · 12 comments
Open

Community building #414

HerrMuellerluedenscheid opened this issue Nov 19, 2024 · 12 comments

Comments

@HerrMuellerluedenscheid

Hi @locka99 ,

You've build a truely awesome library which is getting pretty popular given the number of stars and forks! At the same time I see that there is quite a number of open pull requests and I was wondering if you could need some help by the community to review, approve and possibly even merge pull requests. Are there already more reviewers then yourself on board for that? Would you be willing to share the workload? I think that the iteration of developments would benefit from that.

Also, I'm always a bit worried about software legacy. I've seen too many packages with single maintainers that for unknown reasons suddenly were not to be seen anymore leaving unmaintained packages in package managers (which is really a pitty but can also become quite dangerous if people continue relying on that). Yes, you can always branch, upload a crate opcua-new or opcua-2 to crates.io but that's never an elegant solution.

What are your thoughts about that?

ps.: I know, nobody wants to talk about the real end, but you might also consider setting up a successor for your github account. I don't want to be gaslighting. It's just nice to have things in order :)

@HerrMuellerluedenscheid
Copy link
Author

I see that e.g. @AiyionPrime contributed recently and has open merge requests. Maybe you would be a good candidate? Also @svanharmelen, you were contributing quite a bit. Just a shoutout trying to get people involved ;)

@svanharmelen
Copy link
Contributor

Hi @HerrMuellerluedenscheid, thanks for the shoutout 👍🏻 I indeed have a (both personal and professional) interest and motivation in both using and contributing to this crate. So if @locka99 would be open to accept any help, I would be more then happy to step up and help out!

I think that maybe in addition to myself, @einarmo would be a good candidate as an additional maintainer as he did the recent client rewrite (to make it fully async) and also has (still pending a PR) a rewritten version the server (to also make the server fully async). In addition we've been in good contact for any changes and bugs resulting from that recent client rewrite lately, discussing any additional changes and fixes.

But I feel like we are somewhat jumping the gun here, as this is all really up to the discretion of @locka99! I have no idea how he is doing and what might be going on in his life, so let's be careful with opening issues like this (while asking the question on itself should be fine of course) and/or discussing or assuming things without having heard from @locka99 himself first...

@einarmo
Copy link
Contributor

einarmo commented Nov 19, 2024

I've got a fork that I've been working on with a pretty enormous amount of changes, at this point I have touched pretty much every part of the code in one way or another. I'll eventually finish doing everything I want to with this library, at which point I would like to somehow share it. Not sharing it isn't really an option for me, considering the amount of work that has gone into it at this point...

What @locka99 has done here is great, and without the foundation he and others built I would've never gotten as far as I have, but at this point I think it's clear that he doesn't want to be involved as deeply in this project as it will require if he is to be the sole maintainer for the only active OPC-UA project in Rust.

I only see two real ways forward:

  • Fork and publish with a different name. It would not be the first time this has happened in an open source project, and it won't be the last, but obviously it would be best to avoid...
  • Create a github org and move this repo there, then add at least two maintainers from the community. I'm willing, and @svanharmelen is willing, perhaps others that have contributed would be willing as well.

I really don't want to make this an ultimatum, like "make me maintainer or I fork", but I also feel like it's productive to lay the cards on the table. This project is going to keep getting contributions, I'm pretty sure, and it does have issues that needs resolving (I've found and fixed quite a few in my time working on my fork).

If you don't want to give away the project, or share influence over it, (a sentiment I can understand...) then perhaps a coordinated fork would be for the best.

@HerrMuellerluedenscheid
Copy link
Author

HerrMuellerluedenscheid commented Nov 19, 2024

Thanks for both your inputs! Awesome @einarmo that you brought the project forward a lot as it seems!

Definately the more pragmatic and sustainable way and clearly my personal favorite:

Create a github org and move this repo there, then add at least two maintainers from the community. I'm willing, and @svanharmelen is willing, perhaps others that have contributed would be willing as well.

@locka99 what do you think? Looking really much forward hearing your thoughts! I would love to see a bigger community revolving around this project which really gains traction and is a great replacement for all those overly complex and overprized c++ / c# closed source implementations out there ;)

@AiyionPrime
Copy link
Contributor

AiyionPrime commented Nov 21, 2024

While I second @svanharmelen's suggestion to include @einarmo in a list of useful maintainers,
I do not think putting this repo in the hands of a (newfound-)org is in his interests, iirc he had a debate with @oroulet about the matter a while ago, which did not help either of them.

I've got a bunch of improvements at our fork as well, of which I promised @locka99 to only open five at a time in order to keep the PR overhead at bay.

Anyway, if @locka99 found a way to get this repos development moving again, I'd be quite happy about it as well. Just keep in mind: none of us has a clue how his priorities are at the moment, let alone why; I'd refrain from ultimatums or fork announcements, as they're imo not really the best grounds to have an open discussion about this projects furture and @locka99's visions for it.

@oroulet
Copy link

oroulet commented Nov 21, 2024

As I wrote earlier I used to maintain some OPC ua c++ stack and now maintain the opcua-asyncio stack using the freeopcua organisation.
As I proposed earlier I can fork the project under that organization and let any of you become maintainer so we are not depending on one person.
As far as I can see the original maintainer here is not contributing much anymore while some of you do so I am ready to do that just now. Just propose a good name and I ll do it.
Also that organization is not affiliated to any company and I can give admin access to anyone showing good understanding of us and code.
Of course you can make a new organization but I think putting together different stacks is not a bad idea.

I can start by proposing a bad name opcua2 or rust-opcua. Anyone has a better idea?

@oroulet
Copy link

oroulet commented Nov 21, 2024

Also if anyone does not trust me they can just search my record in maintaining that organization. I have no other motivation than trying to keep projects alive and well functioning

@AiyionPrime
Copy link
Contributor

AiyionPrime commented Nov 21, 2024

Now that was a fast reaction :)

All I wanted to express above was my urgent wish that we all keep our heads down for a moment and do not rush to possible solutions, before we have not even heard @locka99's current stand on the matter.

@oroulet I understand you only want to help here, but it's not that we're not capable of forking this, but do intend to avoid it if possible and work on a solution with the current maintainer and not against him.

Thanks for your ongoing interest though, maybe we can just give @locka99 a few days to find time for an answer, before we escalate this further :)

@oroulet
Copy link

oroulet commented Nov 21, 2024

I am completely clear over that anyone is able to fork the project in an organisation. I was just proposing to do it inside an already existing org which has been working fine for a long time (not mine btw, I just happen to be the current main admin).
I already waited about a year for something to happen with hat rust opcua project and nothing has changed so I can wait a bit more. Although I think it would be great to move forward here

@oroulet
Copy link

oroulet commented Nov 21, 2024

another possibility is to work together with the guys from https://github.com/open62541/open62541

and btw the name open6241 can be a good crate name for an opcua fork since opcua is used.

@HerrMuellerluedenscheid
Copy link
Author

HerrMuellerluedenscheid commented Nov 22, 2024

Wow! That sparked a discussion. Seems I hit a nerve :) Cool!

I saw this discussion which indicates that you would rather not move that project, which I can relate to. (though integrating that into the FreeOpcUa group would probably boost visibility, community adoption and reputation of the project and as a consequence for yourself as well - winwin 🏆 ).

But foremost as long as we can spread some workload I would be super happy @locka99

@oroulet
Copy link

oroulet commented Nov 22, 2024

Just so I have written it. After having worked with different open source projects for 20 years I think organization is the only way to ensure perennity of a project. Anything else is too much depending on one person who almost always end up disappearing or half disappearing like happening here.

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

No branches or pull requests

5 participants