Rust-GPU / rust-gpu

🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧
https://rust-gpu.github.io
Apache License 2.0
855 stars 24 forks source link

forks that has diverged from the main repo #6

Open ivanceras opened 2 months ago

ivanceras commented 2 months ago

There are a lot of forks from the original repo that has diverged from the original. Most notable ones are from LykenSol and Firestar99.

It seems that they are still actively putting more improvements on the project. Feels like we need to apply those commits to this repo as well before moving further.

Firestar99 commented 2 months ago

Just to clear this up: LykenSol is the company of the main dev behind rust-gpu, eddyb. The fork was created before they had access to the "rust-gpu" github group, so all changes over there should now transition over (eventually). And my repo is mostly a bunch of new intrinsics, some of which should already be included in the first release.

TLDR: this is the new main repo

LegNeato commented 2 months ago

Yeah, we were waiting on merging stuff until Embark was done discussing the repo transfer internally after the blog post went public (https://rust-gpu.github.io/blog/transition-announcement/).

JackWolfard commented 1 month ago

@LegNeato @Firestar99 is there a forum / space to discuss this project?

Firestar99 commented 1 month ago

see https://github.com/Rust-GPU/rust-gpu/discussions/5

fu5ha commented 1 month ago

Hi, speaking in official capacity for Embark, unfortunately the reality is there's just not going to be the ability for us to transfer the original repo to the new organization and that is not going to change.

Speaking for myself as well, it isn't productive to wait for this to change and the best way forward is to make sure the community actually coalesces around a single place and isn't stuck in limbo any longer.

I will update have updated the README from our original repository to point to this one and make it clear that this is now the official home for the project. I would also symbolically archive our repo if not for the fact that it is nice for it to still exist as a place for us to make changes and then PR upstream or etc. and that would not be possible with an archived repo.

LegNeato commented 1 month ago

Thanks for the clarity! I don't want to sound ungrateful, but it appears where we landed on the "transfer to the community" consists of transferring the crates.io access and putting a note in an unarchived repo. While it is not nothing, it is not really something either...if we simply renamed the project as the community debated doing, Embark would have transferred close to nothing of value.

On the continuum of transfer to abandon, this isn't a transfer and is much closer to an abandon. The community is left to pick up the pieces and deal with the fallout, both immediately and every day going forward. Even SEO will be pointing to the Embark repo due to inbound links and the repo not being archived for a long time.

I very much appreciate your direct work and support on rust-gpu @fu5ha , and I know you didn't have to comment here. But I can't help but feel like we are being used to "openwash" the fact that Embark is doing the bare minimum to abandon the project.

I've offered to have my lawyers look at it, to indemnify Embark, to pay a token amount for copyright and repo transfer, to land it somewhere like the Linux Foundation, etc and nothing was taken up. Embark has no requirement to do any of this or do more than it has already done of course! But that doesn't make the abandonment more palatable or the community tradeoffs with the current plan any less bad.

fu5ha commented 1 month ago

"Embark would have transferred close to nothing of value" is a bit of an incredible statement. The value of the project has very little to do with the number of stars or forks on a repo, nor in the issues and PRs (though it is unfortunate to have to manually move those pieces). It is in:

  1. The code itself
  2. The community of contributors and users of that code

Embark has invested for several years a very large amount of developer time and money into the 1. the code itself and 2. developing and supporting to the best of our ability the community that developed around it. Licensing the project open source and building it in the open from the beginning was and is a statement of goodwill and assurance that it cannot simply be swiped away and thrown into the ether in specifically a situation such as the one that now exists: Embark has decided that the best path forward for itself is to focus efforts on other more core pieces of what we do. At that point we could have simply moved dev time off and left it. But instead we wanted to ensure that we did as much as we could to foster rust-gpu as a project to continue to grow and evolve with the rest of the community it serves in addition to us.

To that end we've done our darndest to work with the community to move forward without us at the head anymore, and are actively encouraging this new development. That is not "open washing" in any form. The only thing that has not been transferred is the repo itself, which is, in my humble opinion, more or less inconsequential in the grand scheme of things. It is unfortunate that the popularity (and SEO that comes with it) are not transferred, but to pretend that these are somehow the "more important" pieces of value to be transferred is just not true.

Trying to affect change on the transfer of the repo itself by continued statements like this that seek to pressure Embark the public entity by facing unearned community backlash is therefore frankly quite insulting towards the efforts that have been continuously made since the beginning of this project until now.

That all said this is the last I'm going to comment on this specific matter as continuing in this way is doing no good and only serves to fracture the community and our relationship with it more.

I really want there to be a good relationship between myself personally and Embark as an entity and the community of rust-gpu. It makes me sad to see the relationship is strained right now over this. It would be much better for all involved in my opinion to just move forward in the best way we can instead of maligning anything except the most ideal path.

LegNeato commented 1 month ago

"Embark would have transferred close to nothing of value" is a bit of an incredible statement. The value of the project has very little to do with the number of stars or forks on a repo, nor in the issues and PRs (though it is unfortunate to have to manually move those pieces).

You did not read my comment in good faith. Of course the project and code has value and we are thankful that Embark started it, paid for it, and open sourced it. We would not want to continue working on it otherwise! But the value of the transfer during the handoff to the community was essentially nothing. The project was already open source. The "transfer" is basically the same as if we forked a dead project (minus the crates.io bits, but people still need to update all their git urls so what would have been one more update to Cargo.toml to a different name?).

To that end we've done our darndest to work with the community to move forward without us at the head anymore, and are actively encouraging this new development. That is not "open washing" in any form. The only thing that has not been transferred is the repo itself, which is, in my humble opinion, more or less inconsequential in the grand scheme of things. It is unfortunate that the popularity (and SEO that comes with it) are not transferred, but to pretend that these are somehow the "more important" pieces of value to be transferred is just not true.

In open source the repo is the most important thing for continuity! It is where all PRs are, all current and past issues, all current and past discussions, all existing forks point to, all inbound links point to, etc. It would have been better to transfer the repo and not crates.io rather than vice versa.

I'm sure there was a ton of work done internally to get to this point and outcome, but from the outside we don't see that. We see that Embark ended @eddyb 's contract abruptly (which is fine!) but then didn't give any community members access to the repo, leaving the project stagnant and unable to even close issues while Embark figured out what to do. We have never been given reason why the repo couldn't be transferred other than "legal said no". Again, not that we are owed anything, but from the community's standpoint on the outside there was minimal effort. We are not Embark employees. We do not see what goes on internally, we just see the outcomes externally.

Trying to affect change on the transfer of the repo itself by continued statements like this that seek to pressure Embark the public entity by facing unearned community backlash is therefore frankly quite insulting towards the efforts that have been continuously made since the beginning of this project until now.

We posted to the community the facts, I'm sorry that you see that as insulting. If there is anything not factual, please let us know and we'll change it and issue an apology! I'm also sorry that Embark's actions that harm the community caused community backlash...I'm not sure what was expected? If Embark wanted a different outcome, perhaps it should have done different actions.

That all said this is the last I'm going to comment on this specific matter as continuing in this way is doing no good and only serves to fracture the community and our relationship with it more.

Fair enough.

I really want there to be a good relationship between myself personally and Embark as an entity and the community of rust-gpu. It makes me sad to see the relationship is strained right now over this.

Agreed! That's why it is so sad that Embark has caused this issue by not clicking the transfer button. We don't want to be here either! We just want to jam on code! Embark has completely fumbled the transfer and squandered goodwill. Hope is not lost though, there is still time to do the right thing and save the outcome...everyone makes mistakes!

It would be much better for all involved in my opinion to just move forward in the best way we can instead of maligning anything except the most ideal path.

Moving on is is better for you because you don't have to deal with the negative consequences. To "move on" the community has to put in a bunch of work to change repos and literally every single day going forward we'll have to deal with things like lack of SEO, etc. It is much better for the community for Embark to do a proper handoff and transfer the repo. The community is having a bad outcome because of Embark's opaque internal actions, and being told to just be thankful and be quiet is quite frankly insulting.

JackWolfard commented 1 month ago

I disagree with much of your response @LegNeato. As an outsider just observing what's happening in the public, my opinion is Embark transferring the crates.io name was sufficient. I would recommend dropping any further discussion, as you risk pushing helpful people like @fu5ha further away. What is done is done, and we should move on.

(minus the crates.io bits, but people still need to update all their git urls so what would have been one more update to Cargo.toml to a different name?)

You underestimate the importance of having the same crates.io. There is name recognition there, and we should be grateful to have it.

The community is having a bad outcome because of Embark's opaque internal actions, and being told to just be thankful and be quiet is quite frankly insulting.

What is the bad outcome? I have not seen much backlash besides from yourself.

LegNeato commented 1 month ago

I would recommend dropping any further discussion, as you risk pushing helpful people like @fu5ha further away. What is done is done, and we should move on.

We have been very consistent since day one: a transfer to the community must include the repo. Otherwise it isn't a transfer! Embark made the decision not to do an actual transfer and do something else instead. That's cool, it is their prerogative and they have different concerns than the community. But the community doesn't have to be happy about it, and Embark doesn't get the goodwill of an actual transfer.

You underestimate the importance of having the same crates.io. There is name recognition there, and we should be grateful to have it.

This is not true, we do not underestimate it...it just isn't worth that much compared to the repo. Again, we'd happily trade the crates.io crate access for the repo instead. Additionally, there hasn't been a release of rust-gpu in a long time, so most people (AFAIK) are using git master or their own fork anyway and they will have to change the crate url due to the repo not transferring. Finally, we even debated changing the project name as rust-gpu is a bit general and could instead be something like rust-spirv...and in which case the crate names would change anyway and render crates.io access even less useful. We ultimately decided to keep the project name the same, but perhaps it needs to be revisited for a clean break.

The community is having a bad outcome because of Embark's opaque internal actions, and being told to just be thankful and be quiet is quite frankly insulting.

What is the bad outcome? I have not seen much backlash besides from yourself.

We are effectively forking with the current plan, which is very different than a project transfer. There is a reason why forking is usually a last resort. But this is even worse than a normal fork because the old repo and new repo are still named the same thing and the old repo isn't archived (which was part of the original plan!) so it isn't a clean break.

The community has to be split between the old and new repo, do a bunch of work to update URLs and port outstanding work, completely lose valuable things like stars and a canonical Github redirect....why? Because someone internal to Embark said not to press the transfer button on Github for reasons we are not privy to. Maybe that makes sense for Embark, but it doesn't make sense for the community.

The project was already open source. The only thing that has actually happened in the "transfer" to the community has been crates.io access. That's it. I am sure people tried hard internally to get more, but from our perspective looking only from the outside that is far from a transfer to the community and we have to live with preventable downsides.