projecthamster / hamster

GNOME time tracker
http://projecthamster.org
GNU General Public License v3.0
1.06k stars 250 forks source link

Welcome, a heap of gratitude and update! #574

Closed elbenfreund closed 3 years ago

elbenfreund commented 4 years ago

To everyone involved, be it on the sidelines or right down in the thick of it for the past weeks: Thank you all for your continued interest and investments.

After two years of work related neglect, I am starting to slowly claw my way back towards hamster. As this is just the start, I want to focus on one big message right here:

THANK YOU ALL I understand there has been friction among some of our recent contributors and I would like to offer the following solution: Just dump your frustrations on me. Whilst there clearly are differences in approach the sad truth is the main reason things escalated, more than they probably needed to, is because I failed to provide the required guidance and structure.

If you can find it in your heart, I would like to invite all of you, @ederag , @jtojnar , @hedayat @dirkhoffmann , @mwilck and everyone I failed to mention here (I am still catching up, so pretty please do mind me not listing you here...) to work with me towards turning hamster into a well maintained and productive tool. Lets try to forget about the frictions of the past and try to establish a productive and friendly future community spirit!

Immediate actions taken

For now, in order to unblock some of the outstanding contributions so far, I have done the following:

  1. Invited @ederag to the main 'legacy-hamster' team, granting full (provisional) write permissions.
  2. Invited @hedayat , @mwilck and @dirkhoffmann to join the hamster-shell-extenion team, granting (provisional) write access to all of its members.
  3. I made sure master and develop branches in hamster and hamster-shell-extension repositories are "protected", so we keep merges clean and tidy using PRs.

Near future topics

Whilst the recent developments have succeeded in getting my head out of my ass, I would be lying if I would claim that I do have the resources to start proper full time work on hamster in the immediate future. My current work and private live does not permit that. What I can and will do is commit 4-6 hours of "catching up and maintenance" contributions for now. I hope that helps elevating some of the current social friction and provides a overarching perspective into the future.

Questions

That being said, I can not address all outstanding issues right away, so I will be needing your help :)

ederag commented 4 years ago

@elbenfreund Glad to see you back ! Thanks for the invitation, although that did not grant any further rights AFAICS.

Friction on this repo is very localized IMO, and had been sorted out, from my point of view. Friction on the whole project is mainly due to the fact that I did not have the necessary rights.

From the mails that I have seen recently, IMO your comprehension of the current status is tainted by @mwilck's known concerns and by @DirkHoffmann subterranean fighty messages. It's a bit sad that you seem to have mainly listened to them up to now. But that's it, some people make a lot of noise, and can easily give the impression that everything is going to pieces, including this repo.

To catch up, I'd advise to read #433, #493 before going any further. I do hope you'll revise your judgment and we'll be able to work hand in hand eventually.


Edit here, since I have been denied the right to conclude

It's a long noisy thread. Here are important posts IMO:

elbenfreund commented 4 years ago

I do hope you'll revise your judgment and we'll be able to work hand in hand eventually.

We will, absolutely. I hoped my original message made a big point in "not taking sides", as I fell the best way forward is for all of you to just blame me ;) and get on with it.

DirkHoffmann commented 4 years ago

Thanks, @elbenfreund. Good to hear and see that the boat still has a captain. As requested, here is one hint to steer in the right direction:

Invited @hedayat , @mwilck and @DirkHoffmann to join the hamster-shell-extension team, granting (provisional) write access to all of its members.

Please add @benjaoming to make the Three Musketeers complete.

ederag commented 4 years ago

@elbenfreund Your message was very negative, and you did that, not in the extension you are the sole owner of, but here, in the repo I am responsible for.

That might be a mistake due to writing on sunday after a busy week, and the last days have been draining, so don't blame you too much :slightly_smiling_face:

Besides, you did not take into account my explicit recommendation (by mail) of giving access to @hedayat only, following the community consensus summarized here. I expressed strong support in favor of @benjaoming as well (after taking community consensus), and he's not in the extended list. Edit: the last one was based on superficial knowledge.

That does not bode well, that's not how a team should start. I hate forks, but that's it, life is too short, and I'm tired of fighting. So I'll just continue in my fork, hoping you'll integrate as much as possible in the main repo and in the rewrite. Please do ask if certain design choices are unclear, or if I can help with technical issues.


Edit:

repositories are "protected", so we keep merges clean and tidy using PRs.

Wow, that means that I actually lost rights. That only confirms my impression.

Edit 2: (3 days later) about the fork idea: https://github.com/projecthamster/hamster/issues/574#issuecomment-593150299

Edit 3: Why the OP was "playing the savior" and negative, from the active maintainer perspective.

I failed to provide the required guidance and structure.

towards turning hamster into a well maintained and productive tool.

so we keep merges clean and tidy using PRs.

current social friction

elbenfreund commented 4 years ago

@elbenfreund Your message was very negative,

As I said via mail, I didnt mean to and quite frankly do not see where I was. I feel very positive we can overcome this misunderstanding :)

and you did that, not in the extension you are the sole owner of, but here, in the repo I am responsible for.

I did that in the place that I thought would get the most attention in order to reach the biggest audience with my "news". To be honest, I would have preferred using the mailinglist (which is in fact intended for exactly this kind of stuff), but was unsure if everyone was reading there.

That might be a mistake due to writing on sunday after a busy week, and the last days have been draining, so don't blame you too much slightly_smiling_face

I suspect the last days were busy and straining for all of us, so I am confident all of this will appear less conflict prone once we get some rest and a fresh week :)

Besides, you did not take into account my explicit recommendation (by mail) of giving access to @hedayat only, following the community consensus summarized here. I expressed strong support in favor of @benjaoming as well (after taking community consensus), and he's not in the extended list.

Yes, that is correct. Quite frankly: I am in no position to judge who is best suited to take the lead, and so far all members of the extension team seem to be on generally good terms as far as I can see in the issues/PRs I've read so far. The extension's scope is rather limited and I trust that all contributers involved will work together to move things forward.

I hate forks, but that's it, life is too short, and I'm tired of fighting.

I am very sad to hear that, and I honestly do not understand the strength of your reaction. I would love to keep the lones of communication open and hope that some rest and distance will bring you back as the valued contributor that you are.

ederag commented 4 years ago

the valued contributor that you are

Contributor, but not maintainer, yeah, again you marked well your territory.

You have no legitimacy to do so because 1) You did well earlier, but then have left the project for years; I'm the one who brought it back to life recently, together with many people, notably @GeraldJansen (by the way, he's great, and should be invited to be part of the organization) 2) Most of your perception of my maintainer skills is based on unverified ill hear-say. You should have contacted me to have a full understanding before posting.

I'll leave you play the savior here.

To the many kind users who trusted me, most of the experience was a nice one, and I liked the constructive discussions, so it's not my intention to let you down, don't worry. Edit: the "don't worry" link means there's a backup. A hard fork would just harm the project.

GeraldJansen commented 4 years ago

@elbenfreund Actions speak louder than words, and much louder than loud announcements and promises. How can you be trusted this time around given that as project "captain" you practically shipwrecked the project with the abandoned rewrite initiative?

On the other hand, @ederag has put in two years of solid actions and demonstrated his strong commitment to this project. He has been the de facto project leader during this this time, much more so than simple "contributor" or "maintainer". It's great to see him finally added to the list of project members. I do trust that he will be granted full control of the "legacy" Hamster sub-project as an encouragement to stay with the project.

matthijskooijman commented 4 years ago

As a user, occasional contributor and planning-to-be-Debian-maintainer for hamster, let me also chip in.

I'm a bit surprised by the intensity of @ederag's comments here. I did not read anything particularly negative about @ederag or anyone else in @elbenfreund's comments and posts. There are a few things that, now that they're pointed out, could be read like that (protecting branches to take away rights, not following some advice given, saying "contributor" rather than "maintainer"), but I also tend to believe @elbenfreund when they explicitly say things like "I didnt mean to and quite frankly do not see where I was. I feel very positive we can overcome this misunderstanding :)" (about the negativity of his post).

Admittedly, I have not read all previous discussions here (only recently subscribed to the repo as a whole) and of course have not seen any private e-mails, so maybe that would put things in another light. I did read some of the linked discussions just now, and it looks to me, @ederag, that you have a tendency to quickly read negativity and attacks in comments. Personally, I'm usually on the other side of that (I often assume good intentions even they are not there), but in my experience it seems better to not feel attacked when you are, than to fell attacked when you are not :-) And to be explicit: Please do not take this as an attack or judgement, but just as a (subjective) observation and suggestion.

All in all, @ederag, I really hope you will reconsider staying on-board with the project, rather than doing your own fork. If there is anything that needs to happen (e.g. in terms of repository access, or stated responsibilities, etc.) for that, please also make that explicit.

@GeraldJansen said:

@elbenfreund Actions speak louder than words, and much louder than loud announcements and promises. How can you be trusted this time around given that as project "captain" you practically shipwrecked the project with the abandoned rewrite initiative?

This is also a concern of mine. It seems that some of this is mitigated by sharing at least access to some repositories, and I think sharing access to things like the projecthamster.org and extensions.gnome.org might also be useful here (but maybe that's already the plan?).

However, I'm not so sure if @elbenfreund is intending to the "captain" that some people now name him. He writes to have limited time and wants to focus on making things move again, which for a most part, I think, is forming a team and making collaboration work even without his direct involvement (but I am filling in some blanks, so maybe @elbenfreund can confirm).

@elbenfreund said:

In order to deal with low hanging fruits and getting things done, I would like to focus on those development efforts / PRs that deal with uncontroversial maintenance work. I would kindly ask of you to give me a bit more time to read up on any actual design decisions that are currently disputed (links welcome) before we merge. Ultimately, some of the (currently discussed) problems stem from legacy-hamster's monolithic design, which makes it sometimes hard to accomodate different user expectations. Overcoming those limitations is one of the main goals of the (now stalled) rewrite.

I think that the most effort is needed in the shell extension department, where no development (at least no merges) have been happening for quite some time, and some forks have been uploaded to extensions.gnome.org that really need to be unified.

As for the main hamster repository (referred to as hamster-legacy, but given the state of the rewrite, I do not think the "legacy" label is applicable already), I am under the impression that that is actually in a good state, thanks to @ederag's efforts. There is probably a lot of development work that can happen to further improve things, but I think there's not much lacking in project maintainance or stalled pull requests (but I might be wrong - I have not been too closely involved).

Where are we on your preferred communication channel? Do we want to keep the ML or focus on Issues? Or "github team discussions"?

Personally, I like the github issue structure, since that really allows in-depth discussion about specific issues. OTOH, a mailing list might be useful (in addition to github issues) for over-arching discussions and project directions, or to get help with specific problem (though I only just discovered the mailing list actually existed, so was not subscribed before).

As for github team discussions, I think those are access-limited to organization members only, which would make development discussions non-public, which is a bad thing IMHO.

I also like a chat channel for quick questions and discussions, but that mostly works if sufficient people are on-board. I have been one of the few people that hung around in the IRC channel (#projecthamster on Freenode) for the past few years, but maybe something more modern (Riot/matrix is nice and open and can even bridge to Freenode easily) could be better, if we want to use this at all.

ederag commented 4 years ago

@matthijskooijman Please read again https://github.com/projecthamster/hamster/issues/574#issuecomment-593172629 and https://github.com/projecthamster/hamster/issues/574#issuecomment-593156136 and try to walk in my shoes, you might see better. Or not, I'm done fighting.

And to be clear, I did not feel attacked by the philosophical part of your post :wink:, but it does not help at all. It is just common sense. It's clear that you don't know me, and did not read carefully the links. I never felt personaly attacked by @mwilck, IMO a good will, trying too hard to help the project and hurting it instead, but there's hope.

Thanks for the support expressed in the remainder.


OTOH, a mailing list might be useful

Splitting channels does not work, not enough critical mass. It was already tried by @elbenfreund. Discussions can happen in dedicated issues (see #433), no big deal.


I really hope you will reconsider staying on-board with the project, rather than doing your own fork. If there is anything that needs to happen (e.g. in terms of repository access, or stated responsibilities, etc.) for that, please also make that explicit.

Copied from https://github.com/projecthamster/hamster/pull/575#issuecomment-593350172:

This was a cold and well thought decision. (I saw something coming, not that nasty, but enough to be prepared) I will not fight with @elbenfreund and those who do not see the wrong in his acts. Life is too short.

And how could I continue in an organization owned by someone who proved yesterday disrespect to me and the community (as explained in https://github.com/projecthamster/hamster/issues/574#issuecomment-593172629).

No, the only way to continue is where I have full control. [meaning last resort control; I'd rather resign than go against the community will]

mwilck commented 4 years ago

I think that the most effort is needed in the shell extension department, where no development (at least no merges) have been happening for quite some time, and some forks have been uploaded to extensions.gnome.org that really need to be unified.

All that's needed to keep the extension going again is a merge and an upload to https://extensions.gnome.org. Branches for different GNOME versions might be in order, too, but that shouldn't be too hard. The commit history of the 3.34 PR mentions every stable GNOME release since then. Out of these, 3.32 with the JS6 classes was the most intrusive one. I believe it should be possible to maintain just two versions of the extension, one for GNOME 3.22 - 3.30 and one for 3.32 and newer. The "official" extension, as currently uploaded to e.g.o. by @elbenfreund, supports GNOME up to 3.20, and could be left as-is for now.

On e.g.o there's currently @jasuarez version with GNOME 3.32 and 3.34 support. He did what I didn't dare / care to do (upload his stuff to e.g.o. without @elbenfreund's blessing). He has merged a previous version of my 3.34 branch, and added features from his PR https://github.com/projecthamster/hamster-shell-extension/pull/305. I think @jasuarez should also be invited, or otherwise encouraged to participate in maintaining the official GNOME extension.

What the extension still needs most is testing. As of today, I test with 3.34 and 3.26, but I can't promise much for other GNOME versions. As we have so few active people, I guess the "dirty" approach would work best: fork at 66a717d, claim support for all GNOME versions from 3.22 to 3.30, and see if any bug reports come in. After all, for those using 3.22 - 3.28, things can't get worse as they're now.

Of course, these are only the commits necessary to make the extension work again for users, with basic functionality. I don't deny that there are other areas where the extension might be improved, but all that can be done on a relaxed time scale.

mwilck commented 4 years ago

He did what I didn't dare / care to do (upload his stuff to e.g.o. without @elbenfreund's blessing)

Clarification to avoid misunderstanding: this was not meant as criticism from my side.

elbenfreund commented 4 years ago

@ederag

So, I have repeatedly asked for any factual referance where I did speak ill of you. So far, the comments referenced simply re-state that you feel insulted, not why.

Quite frankly, I do not feel particulary inclined to continue being insulted and made out to be some kind of evil persion that goes around insulting people being mean to them. I am not, and I am sure you will have a hard time providing references to the contrary. As far as I can tell you seem to have a very firm opinion on whats going on and that everyone that does not agree with you wholehartedly is out to get you. You keep going on that my comments are informed by "ill advice" when really you are the only one harming my perveption of you. As I have repeadedly pointed out I feel that I do not know any of the people involved well enough to have even a hint of an opinion.

Or not, I'm done fighting.

If you intend to stay with your perception that I am offending you and "take what is rightfully yours", I agree that moving on with your current work is probably for the best. While I would prefer you stayed and worked with us, I can understand if you rather focus on an environment fully under your control. As this seems very important to you. If you decide to go on with this, I wish you all the best and and thank you once again for all the work you have done so far.


@ GeraldJansen

@elbenfreund Actions speak louder than words, and much louder than loud announcements and >promises. How can you be trusted this time around given that as project "captain" you practically >shipwrecked the project with the abandoned rewrite initiative?

Given that we had zero interaction so far, I am a bit disapointed about your assertive tone. I am not going to justify my live choices and priorities to you as an individual. I was quite transparent about my lack of time and it was for that very reason I trusted ederag with the hamsterrepository. None of my, apparently evil, actions had any implication on his work what so ever. If all you care about is hamster, my disapointing existance should be of no concern to you.


@matthijskooijman

I'm a bit surprised by the intensity of @ederag's comments here. I did not read anything particularly negative about @ederag or anyone else in @elbenfreund's comments and posts.

That is what startles me the most, that as far as I can tell, hardly any 'actions' that would have any consequence have been taken.

There are a few things that, now that they're pointed out, could be read like that (protecting branches to take away rights,

To be honest, protecting direct pushes to master/develop is common an best practice anyway. If this is really what this is about, we should be able to talk about it calmly.

not following some advice given, saying "contributor" rather than "maintainer"),

Again, if this is really what hurt people: yeah, my apologies. This was not a particular choice and I have no issue what so ever acknowledging that @ederag is the sole maintainer of the old hamster.

but I also tend to believe @elbenfreund when they explicitly say things like "I didnt mean to and quite frankly do not see where I was. I feel very positive we can overcome this misunderstanding :)" (about the negativity of his post).

Thanks :)

Admittedly, I have not read all previous discussions here (only recently subscribed to the repo as a whole) and of course have not seen any private e-mails, so maybe that would put things in another light.

If so, I would like to know as well. As far as I can tell my few mails with ederag were pretty much the same as my comments here.

I did read some of the linked discussions just now, and it looks to me, @ederag, that you have a tendency to quickly read negativity and attacks in comments.

I start to get the same feeling.

Please do not take this as an attack or judgement, but just as a (subjective) observation and suggestion.

Again, full ack.

All in all, @ederag, I really hope you will reconsider staying on-board with the project, rather than doing your own fork. If there is anything that needs to happen (e.g. in terms of repository access, or stated responsibilities, etc.) for that, please also make that explicit.

:+1:

@GeraldJansen said:

@elbenfreund Actions speak louder than words, and much louder than loud announcements and promises. How can you be trusted this time around given that as project "captain" you practically shipwrecked the project with the abandoned rewrite initiative?

This is also a concern of mine. It seems that some of this is mitigated by sharing at least access to some repositories, and I think sharing access to things like the projecthamster.org and extensions.gnome.org might also be useful here (but maybe that's already the plan?).

Here I tend to disagree, I don't want to get bogged down in a "who said what", but it is simply not true that the project was is a great state when I took over. I did so because things where not moving forward as it was. As said above, I am happy to work with the existing community to improve the situation and distribute responsibilities. And I said so several times. There may be some kinks to iron out with regards to the website and/or extensions.gnome.org, but nothing that should be impossible.

However, I'm not so sure if @elbenfreund is intending to the "captain" that some people now name him. He writes to have limited time and wants to focus on making things move again, which for a most part, I think, is forming a team and making collaboration work even without his direct involvement (but I am filling in some blanks, so maybe @elbenfreund can confirm).

:+1:

And honestly, so far this is not the "restart" I hoped for. I have spend more time defending myself for things I aparently have done than actually getting productive things done for the project. While I agree that a healthy discussion in the open is important, I also will not spend infinite resources on answering to unsubstantiated accusations and hurt egos.

I think that the most effort is needed in the shell extension department, where no development (at least no merges) have been happening for quite some time, and some forks have been uploaded to extensions.gnome.org that really need to be unified.

:+1: 4 People have full write access to the repository. If more is needed, I am more than happy to help.

As for the main hamster repository (referred to as hamster-legacy, but given the state of the rewrite, I do not think the "legacy" label is applicable already),

I did not rename the hamster repo for a reason. The legacy label is more of an internal shorthand to avoid confusion, as I did not want to continue to spend time on this code. If anyone feels downplayed by that label, I am more then open to alternatives.

Where are we on your preferred communication channel? Do we want to keep the ML or focus on Issues? Or "github team discussions"?

Personally, I like the github issue structure, since that really allows in-depth discussion about specific issues. OTOH, a mailing list might be useful (in addition to github issues) for over-arching discussions and project directions, or to get help with specific problem (though I only just discovered the mailing list actually existed, so was not subscribed before).

That would be my preferred separation of concerns as well.

As for github team discussions, I think those are access-limited to organization members only, which would make development discussions non-public, which is a bad thing IMHO.

Thats a good point. If true, I would agree.


So, to sum things up: I am happy to engage in a healthy and respectful discussion about how to move forward and helping with admin stuff. I am not willing to be your continued punshingbag for hurt egos that feel dismissed without any actual proof of ill intentions. When ederag approached me with his offer to maintain hamster I agreed without much hesitation and doubt as it was clear that I would not deal with this codebase in the future and noone else would be either. I did so in good faith and without any fuss. I would be sad if my trust and goodwill would prove to be ill placed.

I sincerely hope we can find a way to calm things down and move forward. Either as a unified project, or if @ederag prefers on his own.

ederag commented 4 years ago

You're the one shouting (Edit: that was referring the first version of the above comment), beyond the no-return line.

Please stop here, take a week or more to read and think, then come back, apologize in due form, with a header to your top post stating that you were misinformed, and it will be settled (no return, but no hard feelings either).

would not deal with this codebase in the future and noone else would be either

Yet you shut me out deliberately (reducing my rights to push at will), without any discussion beforehand (that's disrespectful).

I made sure master and develop branches in hamster and hamster-shell-extension repositories are "protected", so we keep merges clean and tidy using PRs.

Note: as if it were not "clean and tidy" already.

As I said, I'm done fighting, the future will depend on the reaction of the community.

elbenfreund commented 4 years ago

Please stop here, take a week or more to read and think, then come back, apologize in due form, with a header to your top post stating that you were misinformed, and it will be settled (no return, but no hard feelings either).

Dear ederag, I am very disappointed by your patronizing and condescending tone and general attitude. I am confident that I repeatedly stated my desire to work with you and asked you for your constructive feedback. Yet, all you do is repeating your feeling of being insulted and demanding my subordination under your perceived reality. That is not going to happen and I am done trying to accommodate your hurt ego.

As I feel we are going in circles and loose faith that you have any interest in actually improving the current communication I wish you all the best and good luck with your future endeavors. As per your request in #575 I will remove you as the maintainer remain grateful for your work so far.

ederag commented 4 years ago

Your choice. You did not prove any gratitude so far, except in empty words.

You shut me out deliberately (reducing my rights to push at will), without any discussion beforehand (that's disrespectful).

As I said, I'm done fighting, the future will depend on the reaction of the community.

ameenross commented 4 years ago

You did not prove any gratitude so far, except in empty words.

Just an onlooker here, don't know everything that happened, but this caught my attention. @elbenfreund repeatedly thanked you for your efforts in this issue. So I think this statement of yours is unfair.

Also, I get how suddenly missing push access to a certain branch might piss you off, but given @elbenfreund 's explanation, I feel like you're overreacting. Thirdly, you requested being removed as a maintainer and you already posted a link with your fork. What more do you want? Move on...

GeraldJansen commented 4 years ago

@matthijskooijman Thanks for your level-headed assessment. This project needs more well-balanced people like you in a top level team that provides overall coordination and control of the project. Having all control in the hands of a single person who can disappear at any time has already proven to hurt the project.

@elbenfreund I am interested in this project! (You can ascertain that through my concrete contributions in terms of testing, bug reports and pull requests.) I am worried about the future of the project with you alone at the helm (and nothing to do with your own terms like "evil" and "disappointing existence"). It's simply a matter of track record. I hope you will demonstrate your interest in the future of the project by opening up and empowering a team with top-level powers.

ederag commented 4 years ago

@ameenross I was moving on (actually preparing my repo, and just sent this answer because I still care). Now I have to answer you. Thanks :slightly_smiling_face: But I understand that it is easy to overlook, as some people surely make a lot of noise, more than actions, so here are more facts.

It's not "a certain branch". It's my master branch, of the repo I'm maintaining since 2018-11-23, repo which has been dead since 2016-07-16, save for a translation commit.

The organization owner has not been active since (that's his repo, often called the "rewrite") Screenshot_20200302_180711 and even the simplest PRs were ignored.

So I'm not a random contributor. I resurrected the whole project, as noted above.

Edit: There was a condition to my work: being the benevolent dictator, no share of power. I'm methodical, and there are very impatient people out there. This was legitimate as the legacy repo had been abandoned anyway. Now that most of the issues mentioned there have been reduced, they want the power back. So be it.

repeatedly thanked you for your efforts in this issue

My technical contribution is clear, he couldn't do less, and that allows him to play the nice guy. But if you read the top post carefully, you'll see the marks of the owner wanting to reclaim his territory. To this aim, he trashed my maintainer skills, reduced my rights without discussion beforehand, and called that gratitude.

Except, as should be obvious from the above facts, he has no legitimacy to do so.

Thanks for pushing me to give more facts, as I guess that information was indeed not known by passers-by.

benjaoming commented 4 years ago

I want to take the time to thank you @ederag for saving the repository and recognizing all your tremendous efforts. I find it very unfortunate that this thread has seen you step back, but I really understand your decision -- no one wants to engage in Open Source just to have a bunch of controversy.

ameenross commented 4 years ago

sigh well, good luck to everyone. I'll crawl back into the hole I came from, as I can't really judge the situation and have no further interest either as I stopped using Hamster some time ago

ederag commented 4 years ago

@ameenross That's understandable. Thanks again for sharing your thoughts. That might help the truth to surface about the nature of what happened here; although that would probably require people having time and interest to dig deeper. This might become an interesting case for humanities studies on FreeSoftware :slightly_smiling_face:.

I stopped using Hamster some time ago

There was a dip in usability due to the necessary gtk3 migration, which was also an opportunity to modify the design. @tstriker did an amazing job at it (again), and after the work we did on v3.0, in months they should be able to bring hamster on par with v1 (especially if @GeraldJansen stays on board to guide them), and even better than v1 as the overview was highly improved by @tstriker : https://github.com/projecthamster/hamster/issues/507#issuecomment-572327072

Yes, the new overview is definitely better. :) Easier to read, and more powerful to query.

So I'd recommend to wait, but definitely give it a try again then !

benjaoming commented 4 years ago

@elbenfreund there are still issues with write access on hamster-shell-extension. None of the members of the new team have access to merge to master.

I recommend that you grant full access to the github organization to @DirkHoffmann and thereby remove yourself from the equation. You don't want to develop the "legacy" (your wording) parts anyways, so it doesn't make sense that you govern them or cause further frustrations among the active developer community.

hedayat commented 4 years ago

I hope that this will settle nicely soon. And it is unfortunate that the situation has escalated this much. Everything was about the extension, and suddenly there is a debate with regards to the legacy part; which is completely separate...

I don't have any right to talk about the legacy part, but as a dead project revived by @ederag, I also think he should be its 'owner'. And I guess that he is the one that will keep developing there (either here or in his own fork).

benjaoming commented 4 years ago

Yup, I agree @hedayat - unfortunately, @ederag has stepped back and been removed as the maintainer. The reasoning seems to be that @elbenfreund wants to reserve unique permissions whilst @ederag wants to have full control of what seems rightfully to be @ederag 's project. Which is/was a clear conflict.

I would also hope that it would settle nicely -- but for now, the settlement isn't nice for anyone, as hamster now misses an active owner and maintainer :cry:

GeraldJansen commented 4 years ago

Perhaps I am too pessimistic, but in my opinion projecthamster has been in a state of compromised health for quite a while. I doubt it will survive a major amputation (i.e. fork) now. The community is just too small. I hope it is not too late for both @elbenfreund and @ederag to both calmly take a couple of steps back so that we can all move forward together from there.

DirkHoffmann commented 4 years ago

@elbenfreund there are still issues with write access on hamster-shell-extension. None of the members of the new team have access to merge to master.

This is a problem indeed. (Urgent.)

I recommend that you grant full access to the github organization to @DirkHoffmann and thereby remove yourself from the equation. You don't want to develop the "legacy" (your wording) parts anyways, so it doesn't make sense that you govern them or cause further frustrations among the active developer community.

I am not convinced that this is a solution either. I came here to propose giving permissions to merge contributions to hamster-shell-extension to its recent main contributors and find myself back in the situation to manage the whole repository and issues as well. That's fine; I can stand it.

As there are no "umbrella issues" for projecthamster, @elbenfreund has chosen to announce these changes here*, which led to quite some confusion, unfortunately. I think everybody, without exception, acknowledges @ederag's valuable contribution to the core hamster (this) project. And he would have been a logical and legitimate candidate to take over more responsibilities, if he didn't want to leave it.

I will certainly not be able to replace him or pick up anything from him. But I stand for the help offered in the area of the extension.

*) Maybe that was the source of all frustration and anger? Maybe, the "Immediate Actions" in the OP would have deserved two separate messages in each of the targeted repositories?

mwilck commented 4 years ago

@elbenfreund there are still issues with write access on hamster-shell-extension. None of the members of the new team have access to merge to master.

This is a problem indeed. (Urgent.)

It should be fixed, but is it really that urgent? Let's give @elbenfreund a few more days. It's been almost 2 years since the 0.10.0 release, days don't matter much on this time scale.

ederag commented 4 years ago

@GeraldJansen

I doubt it will survive a major amputation (i.e. fork) now.

Not gonna happen.

The "don't worry" link given in https://github.com/projecthamster/hamster/issues/574#issuecomment-593172629 was just there to reassure users (they could easily have been scared away): there's a backup, just in case. So they can continue using hamster without fear of seeing it die again.

@ameenross also probably interpreted that link the same way, which would explain the last of his comments.

So it's my fault, I should have been more explicit. Sorry for the misunderstanding.

A hard fork would have added confusion, conflicts, split the community, and harmed the project. I'd never do a hard fork in the current situation.

mwilck commented 4 years ago

@ederag,

A hard fork would have added confusion, conflicts, split the community, and harmed the project. I'd never do a hard fork in the current situation.

If it's not a hard fork, what kind of a fork is it? Do you intend to push the development you do there to this repo, in the form of PRs?

ederag commented 4 years ago

For my personal needs, hamster needs only a few UI fixes. They could be integrated into the main repo if there is desire to, of course. The main repo should be way ahead of mine in no time.

elbenfreund commented 4 years ago

@elbenfreund there are still issues with write access on hamster-shell-extension. None of the members of the new team have access to merge to master.

Can you give it another try please.

mwilck commented 4 years ago

@elbenfreund, almost - "The base branch requires all commits to be signed. Learn more about signing commits".

Not sure how to proceed, as not all commits on that branch are from me. I'll have to read up on commit signing.

elbenfreund commented 4 years ago

Not sure how to proceed, as not all commits on that branch are from me. I'll have to read up on commit signing.

Sure thing. If it is too much of a hassle, I can easily disable it for now. For future work I would very much encourage using signed commits, but it is nothing that should be standing in our way right now. Let me know if you need anything.

Given that we are hijacking this thread with operational topics anyway, does anyone mind if I close it?

GeraldJansen commented 4 years ago

I mind. The issues related to the core hamster project remain open as far as I am concerned. Please do move discussion about the gnome extension to an issue under that project.

elbenfreund commented 4 years ago

Please do move discussion about the gnome extension to an issue under that project.

Works for me.

I mind. The issues related to the core hamster project remain open as far as I am concerned.

That is perfectly fine. In order to constructively move forward, can you list your specific questions you feel need to be sorted?

Besides clearly hurting feelings (for which I appolgized repeatedly and am done doing so), here is the total sum of what I did so far with regards to the hamster repository:

  1. Enable a github feature that only allows merging PRs on to the master branch and prevents direct commits on master, it never prevented the previous maintainer to merging and PRs on master (at least to my knowledge about the feature in question).

Thats it. The rest is drama and FUD. If I can do help with any practical problems that need to be solved.

ederag commented 4 years ago

it never prevented the previous maintainer to merging and PRs on master (at least to my knowledge about the feature in question).

After hundreds of hours of work on this project, here is what I suddenly saw, instead of the usual green lights:


image


Repeating https://github.com/projecthamster/hamster/issues/574#issuecomment-593383184:

Yet you shut me out deliberately (reducing my rights to push at will), without any discussion beforehand (that's disrespectful).

Whether it was an overlook or not is irrelevant. You changed something on my repo, without any prior discussion.

So IMO you brutally seized ownership of this project.

ederag commented 4 years ago

Post crossed. Resent to help follow the discussion.

But we differ significantly on how we interpret the events.

Where do you see room for interpretation ?

It's not the same issue as https://github.com/projecthamster/hamster/issues/574#issuecomment-593833031, because in their case they were enough to pass the "At least 1 approving review is required" check. It was blocking after.

Making review mandatory is already reducing my rights.

Without prior discussion, given your abandon of the project , that's an illegitimate move.

elbenfreund commented 4 years ago

So IMO you brutally seized ownership of this project.

Thanks for highlighting your position. That sums up the situation quite nicely. Clearly we agree on what happen. But we differ significantly on how we interpret the events. Thats what I suggested countless times and tried to overcome. As far as I can tell you just keep going.

You have, and keep doing so, blown this entire thing out of proportion. Whether or not I "brutally seized ownership" is surely up for debate :)

ederag commented 4 years ago

But we differ significantly on how we interpret the events.

Where do you see room for interpretation ?

It's not the same issue as https://github.com/projecthamster/hamster/issues/574#issuecomment-593833031, because in their case they were enough to pass the "At least 1 approving review is required" check. It was blocking after.

Making review mandatory is already reducing my rights.

Without prior discussion, given your abandon of the project , that's an illegitimate move.

elbenfreund commented 4 years ago

You do realize, that you keep going in circles, right? The way I see it, there are the following options for you:

  1. Decide you want to work with us and work towards a solution within the hamster project by discussing actionable task
  2. Decide to go with your fork, then please do so but stop aggitating here (this is not my prefered option, but I think a dragged our blame game going in circles contributes nothing towards a solution).
  3. Keep reiterating how you feel hurt, insulted and "taken what is rightfully mine" for another couple of days

I may have missed some, in that case, please feel free to add :)

GeraldJansen commented 4 years ago

Thanks @elbenfreund for the clarification (assuming you haven't actually restricted merging by requiring a review by yourself). A lot of FUD could have indeed been easily prevented by you simply discussing the change with @ederag before preceding unilaterally. Certainly the tone of your opening post didn't help.

@ederag I agree that it is time to stop the blame game and come up with concrete positive suggestions. If you are interested in resuming, I would suggest the following actions for @elbenfreund:

  1. restore Ederag as a projecthamster member (he was there yesterday then disappeared again)
  2. undo the action "Enable a github feature that only allows merging PRs on to the master branch and prevents direct commits on master," at least until you two agree on it
  3. restore Ederag as primary developer (undo #574)
  4. add a nice announcement about the release of Hamster v3.0 on http://projecthamster.org
  5. change http://projecthamster.org near the top of https://github.com/projecthamster temporarily to
    https://github.com/projecthamster/hamster/wiki (for lack of anything better)
  6. grant some-one else in addition to yourself top-level ownership (projecthamster.org) so that the whole project is not blocked if one person disappears (for whatever reason).
elbenfreund commented 4 years ago

Thanks @elbenfreund for the clarification (assuming you haven't actually restricted merging by requiring a review by yourself).

To the best of my knowledge I did not restrict review to myself.

A lot of FUD could have indeed been easily prevented by you simply discussing the change with > @ederag before preceding unilaterally.

I wholeheartedly agree, but honestly believe I said so and apologized enough.

Certainly the tone of your opening post didn't help.

I am absolutely open to the possibility, but do not see where I contributed to that impression in the opening post. A particular reference (which again, I asked for several times before) would be most helpful for me to understand my supposed misbehavior.

@ederag I agree that it is time to stop the blame game and come up with concrete positive suggestions. If you are interested in resuming, I would suggest the following actions for @elbenfreund:

restore Ederag as a projecthamster member (he was there yesterday then disappeared again)

No problem for in general. After all I removed him per his request.

undo the action "Enable a github feature that only allows merging PRs on to the master branch and prevents direct commits on master," at least until you two agree on it

:+1:

restore Ederag as primary developer (undo #574)

:+1:

add a nice announcement about the release of Hamster v3.0 on http://projecthamster.org

I may be wrong, but the website is deliberatly based on a repository. This may need some tweaks, but I am happy to establish a more colaborative workflow!

change http://projecthamster.org near the top of https://github.com/projecthamster temporarily to
https://github.com/projecthamster/hamster/wiki (for lack of anything better)

I'm not too keen on this one, but think this can and should be discussed. I rather improve collaboration on the project page than refer to a wiki.

grant some-one else in addition to yourself top-level ownership (projecthamster.org) so that the whole project is not blocked if one person disappears (for whatever reason).

To be honest, while I am not against this, it will be a mid/longterm development that will require building mututal trust.

GeraldJansen commented 4 years ago

To the best of my knowledge I did not restrict review to myself.

I'm not an expert on github, but I suspect a review needs to be done by someone, with write permissions(?), other than the person submitting the PR. At any rate you have agreed to remove the restriction, so great.

Concerning the website, I agree that improving http://projecthamster.org would be a better option going forward, but in its current state it does not represent the hamster project very well.

mwilck commented 4 years ago
2. undo the action "Enable a github feature that only allows merging PRs on to the master branch and prevents direct commits on master," at least until you two agree on it

I disagree. The way it was done was suboptimal, but the action itself was right and shouldn't be reverted. Direct commits to "master" should be forbidden, and review by at least one person should be required for PRs. This rule should apply to everyone, including the main contributor.

ederag commented 4 years ago

I'd like to post a final message, please go elsewhere for your technical discussions.

matthijskooijman commented 4 years ago

@ederag posted:

I'd like to post a final message, please go elsewhere for your technical discussions.

IMHO, the discussions currently are about what is needed to move the project forward on a level of policies and cooperation, not so much about the technical aspects, so they seem appropriate in this thread. If you're still interested, I believe you are welcome to participate in these discussions and move forward.

@mwilck said:

  1. undo the action "Enable a github feature that only allows merging PRs on to the master branch and prevents direct commits on master," at least until you two agree on it

I disagree. The way it was done was suboptimal, but the action itself was right and shouldn't be reverted. Direct commits to "master" should be forbidden, and review by at least one person should be required for PRs. This rule should apply to everyone, including the main contributor.

FWIW, I also believe that a development process through pull requests is generally a good idea, though it does not necessarily have to be enforced (but enforcing a cooperatively established policy is probably a good idea for clarity). Looking at the commit history and my recent experience, all but the most trivial changes have already been merged through pull requests, though I believe often @ederag submitted and merged the PR (but this still allowed for a public review process, even if not in the form of formal github reviews).

Taking this one step further is to require a certain number of reviews from others than the PR submitter, which I think is what @elbenfreund has now enabled, which prevents @ederag from merging his own PRs. While requiring review from others is probably a good idea in general, I believe it only works when there are sufficient people that can offer these reviews. In the past, I think this has not been the case and I'm not so sure if this will change in the near future.

So, if github allows this, it might be good to configure the master branch to not allow direct pushes (only merge through PRs, which is good practice IMHO), but also not enforce any reviews on a PR before merging (which is probably going to hinder development rather than really help). This would still allow anyone with write access to get things into master without having to wait for others, but does make sure that all development stays in the open. How does that sound?

I may be wrong, but the website is deliberatly based on a repository. This may need some tweaks, but I am happy to establish a more colaborative workflow!

Let's move discussion about this to the website repository then. To facilitate, I opened https://github.com/projecthamster/hamster-website/issues/6 for that.

grant some-one else in addition to yourself top-level ownership (projecthamster.org) so that the whole project is not blocked if one person disappears (for whatever reason).

To be honest, while I am not against this, it will be a mid/longterm development that will require building mututal trust.

This seems totally reasonable to me, I would probably take the same stance in your position.

Finally, let me clarify my own position a bit as well. I use hamster on a daily basis and would really like to contribute a lot to it, but the reality of all the projects and other commits I already have will not allow me. So, I will contribute fixes, small improvements and reviews where it fits my time, and I am still planning to build and upload a Debian package for hamster, but I cannot dedicate significant time to actually develop it. I'm also more than willing to offer my opinion and advice on how to organize the project, but since I will not be doing the actual work, please just take it as such: opinions and advice.

mwilck commented 4 years ago

So, if github allows this, it might be good to configure the master branch to not allow direct pushes (only merge through PRs, which is good practice IMHO), but also not enforce any reviews on a PR before merging (which is probably going to hinder development rather than really help)

I still like the idea of enforcing at least a single review. But it's not a religious matter to me. Instead of enforcing it, we could just make it a voluntary etiquette that PRs should be left open for a week or so in order to give people some time to have a look and possibly add review tags.

elbenfreund commented 4 years ago

FTR: I have (to the best of my knowledge) all branch restrictions on (master). Leaving only prevention of force pushes and deletes in place. I hope that helps calming things down further and is a sign of me following through with my commitments here.

I do have an (strong) opinion about the validity of those (now disabled) restrictions, but absolutely agree that those need to be discussed and not unilaterally enabled! While I didn't not think of my actions as such, I understand that doing so feels very top to bottom. Moving on... :)

GeraldJansen commented 4 years ago

@elbenfreund Thanks for this conciliatory step back.

@mwilck I agree about the voluntary wait period before merging one's own PRs and believe it has been widely practiced by @ederag (with possible recent exceptions to speed up the release of v3.0). Unfortunately, the reality is that there is often no feedback whatsoever, let alone any review.

@matthijskooijman I didn't mean to volunteer you for intensive development work :wink:. I just feel the future of the overall project would be more secure and robust if control were in the hands of a small team and not just a single person. That might help to attract more contributors and users. Concern about the trustworthiness of the team members is certainly an issue, as is their availability and willingness. I chose to mention you as a possible candidate simply by having a look at your continuous ongoing contributions to numerous open source projects over the years.

@ederag After your last cryptic comment, your intentions are still unclear. There is a lot of support for you remaining here with the project. Please take as much time as you need to reflect before making your decision.

GeraldJansen commented 4 years ago

Well it seems that @ederag has no intentions of returning. With that, I too have lost interest in this project. Best of luck to all and sorry for the disturbance. Goodbye.