pulsar-edit / pulsar

A Community-led Hyper-Hackable Text Editor
https://pulsar-edit.dev
Other
3.32k stars 139 forks source link

Give Up Github! #266

Closed giveUpPlz closed 1 year ago

giveUpPlz commented 1 year ago

Have you checked for existing feature requests?

Summary

Git was designed [specifically to replace a proprietary tool (BitKeeper), and to make FOSS development distributed — using FOSS tools and without a centralized site. GitHub has warped Git — creating add-on features that turn a distributed, egalitarian, and FOSS system into a centralized, proprietary site. And, all those add-on features are controlled by a single, for-profit company. By staying on GitHub, established FOSS communities bring newcomers to this proprietary platform — expanding GitHub's reach. and limiting the imaginations of the next generation of FOSS developers.

What benefits does this feature provide?

Copilot is a for-profit product — developed and marketed by Microsoft and their GitHub subsidiary — that uses Artificial Intelligence (AI) techniques to automatically generate code interactively for developers. The AI model was trained according to GitHub's own statements exclusively with projects that were hosted on GitHub, including many licensed under copyleft licenses. Most of those projects are not in the “public domain”, they are licensed under FOSS licenses. These licenses have requirements including proper author attribution and, in the case of https://copyleft.org/, they sometimes require that works based on and/or that incorporate the software be licensed under the same copyleft license as the prior work. Microsoft and GitHub have been ignoring these license requirements for more than a year. Their only defense of these actions was a tweet by their former CEO, in which he falsely claims that unsettled law on this topic is actually settled. In addition to the legal issues, the ethical implications of GitHub's choice to use copylefted code in the service of creating proprietary software are grave.

In 2020, the community discovered that GitHub has a for-profit software services contract with the USA Immigration and Customs Enforcement (ICE). Activists, including some GitHub employees, have been calling on GitHub for two years to cancel that contract. GitHub's primary reply has been that their parent company, Microsoft, has sold Microsoft Word for years to ICE without any public complaints. They claim that this somehow justifies even more business with an agency whose policies are problematic. Regardless of your views on ICE and its behavior, GitHub's ongoing dismissive and disingenuous responses to the activists who raised this important issue show that GitHub puts its profits above concerns from the community.

While GitHub pretends to be pro-FOSS (like SourceForge before them), their entire hosting site is, itself, proprietary and/or trade-secret software. We appreciate that GitHub allows some of its employees to sometimes contribute FOSS to upstream projects, but our community has been burned so many times before by companies that claim to support FOSS, while actively convincing the community to rely on their proprietary software. We won't let GitHub burn us in this same way!

GitHub differs from most of its peers in the FOSS project hosting industry, as GitHub does not even offer any self-hosting FOSS option. Their entire codebase is secret. For example, while we have our complaints about GitLab's business model of parallel “Community” and “Enterprise” editions, at least GitLab's Community Edition provides basic functionality for self-hosting and is 100% FOSS. Meanwhile, there are non-profit FOSS hosting sites such as CodeBerg, who develop their platform publicly as FOSS.

GitHub has long sought to discredit copyleft generally. Their various CEOs have often spoken loudly and negatively about copyleft, including their founder (and former CEO) devoting his OSCON keynote on attacking copyleft and the GPL. This trickled down from the top. We've personally observed various GitHub employees over the years arguing in many venues to convince projects to avoid copyleft; we've even seen a GitHub employee do this in a GitHub bug ticket directly.

GitHub is wholly owned by Microsoft, a company whose executives have historically repeatedly attacked copyleft licensing.

Any alternatives?

Codeberg NotABug

Or Self Host:

Gitea Gogs

Other examples:

No response

LandarXT commented 1 year ago

On the other hand, GitHub provides the most visibility possible for the project, has the preexisting infrastructure and most of all, we know it won't disappear overnight (Microsoft is worth more than a trillion now, right?)

Digitalone1 commented 1 year ago

GitHub works so we just stay here. But I'd like to see this project on GitLab. Who knows, maybe one day we leave this platform for something better...

mauricioszabo commented 1 year ago

All of our CIs currently only support GitHub - both Cirrus and GitHub Actions.

Moving away from Cirrus basically means we have to move to a CI that have hard limits on how many builds we can do, which means our current approach of "every branch have a binary that we can download and check if things work as expected" will not be possible anymore. As much as I hate GitHub for multiple reasons I agree that, for now, Pulsar will stay here on GitHub for discoverability and to make it easier for new people to contribute.

sertonix commented 1 year ago

In the long term it would be very nice to move away from github. Since pulsar has a lot of parts it would may be better to move one repo at a time with the most important repos at the end.

confused-Techie commented 1 year ago

Gonna echo other people here, currently a lot that we do relies on GitHub.

In short that last point is a big one. We need contributors, there was enough discussion that if asking people to join on Discord would already be asking to much, because what if they don't have a Discord account? And we have already seen contributors that won't interreact on Discord and only GitHub because that's what accounts they have. If we were to suddenly migrate to another Git platform, not only do I feel we would lose our active contributors, we would lose the visibility we currently have, we would then have to rewrite all of our testing, rethink all of our tooling, and would have to preform major rewrites of the entire backend.

This may one day be possible, or at the very least maintain our repos in two locations to have a backup and let contributors that only live on an alternative platform have a chance to contribute. But for the short term this is an unreasonable, and potentially harmful to the livelihood of Pulsar as a whole.

I'll go ahead and close this issue, but appreciate you contributing with this questions, even if it's not something that can be realistically done at this time.

sertonix commented 1 year ago

I agree that this won't change now but I still would consider this an unsolved issue (so I would reopen it). Alternatively a discussion could be created. And I would like if it is pinned so that this idea (and the very well written text) is not lost.

Daeraxa commented 1 year ago

This should indeed be a discussion and not an issue (this would not enhance the actual Pulsar "product" so this is the wrong place for it). I disagree with pinning it, it is not up for discussion in the short term so pinning it would go against the position being taken (as explained above by @confused-Techie).

Digitalone1 commented 1 year ago

I agree that this won't change now but I still would consider this an unsolved issue (so I would reopen it). Alternatively a discussion could be created. And I would like if it is pinned so that this idea (and the very well written text) is not lost.

I suggest you to open a new one after one year, more or less. Now there's not much to discuss.

confused-Techie commented 1 year ago

@Sertonix While I get what you mean, the way I see it is this.

If we were to pin and leave open every issue of something people want to see that doesn't provide any needed benefit to the project, or is unrealistic in it's expectations, then our pinned issues would just be things like "Give Up Github", "Move to Tauri", "Stop using Electron", "Rewrite in Rust", "The logo is ugly and should be changed". To me it makes it look like the project has no direction. We are getting more and more request for huge changes, that I feel we need to be a little strict on what we should entertain seriously.

Like I mentioned when closing it, this isn't something that can happen anytime soon. While still possible in the future.

I'd agree with what others have said, we could make this into a proper long-form discussion, or bring up again once the above statements are no longer true.

But if you feel strongly about it, or my take is unwarranted we could create a poll for the issue. Just from other responses and chat in the mod-channels on Discord didn't feel I was off base with the rest of the team on this one. But I do apologize if initially it came off as dismissive or rude, just wanting to try and get our focus on proper improvements is all