Why did KiCAD switch to GitLab?

I have not used KiCAD in a little while, as I have not had to do any PCB design. I fired it up a week or two ago and went to update my libraries and discovered that KiCAD has moved everything to GitLab. While I do not have an opinion on the GitHub/GitLab debate, I wanted to see their reasoning, but all I can find is that they wanted to move off of Launchpad. Why did they decide to move to GitLab when they already had a GitHub organization set up?

EDIT: For anyone with the same question, to save time scrolling the thread, I have compiled the reasons that the development team responded with in the 11th post on this thread.

1 Like

As far as I know GitHub also has such hooks like GitLab. But generally developers like GitLab more than GitHub.

If you ask me, I stand on a non-development issue side, rather a political issue. GitHub bought by Microsoft and now it is acting politically. I don’t know the latest status but last time I remember they had prevented access from some of the countries without any warning. Some of them even couldn’t clone the repo or export the issue list somewhere else. This isn’t correct from where I look.

If you have a problem with certain illegal repos you can close them anytime. But preventing access from a whole country is just a political maneuver.

The sourcecode was never on github. It was on launchpad. This was a massively limiting factor for the development as all contributions still needed to be handled via patches send by mail.

Gitlab (but also github, bitbucket, …) allow for a nicer workflow here via their merge (or pull) requests.

Gitlab and github have a very similar feature set (gitlab is slightly more powerful with regards to project management features as it has better ways to group issues). And gitlab can also be installed on your own server which means it is a lot easier to get away from their cloud solution should there ever be a problem with it.

3 Likes

GitLab is very developer friendly and continually takes feedback and improves. GitHub refuses to pull their head of their butts when it comes to improving anything other than visual effects.
GitLab has a whole array of “organization” oriented features that makes managing kicad’s dozens of repos a breeze. Even having a neatly organized index page for the org is a game changer compared to the disaster that are GitHub org pages.

Eh, this has nothing to do with politics and everything to do with US law that all companies must comply with, even Europeans one if they don’t want their European banks closing their accounts. (Because US banks will threaten to freeze European bank transactions). There’s really no legal basis for a company to refuse to comply with sanction law which is pretty cut and dry, they can only play dumb until the US DoJ gives them an angry comply or go to jail letter.

2 Likes

I did not realize that GitLab has more project management features. That would make sense. My main surprise was due to the fact that they already had a GitHub org.

We considered both and picked GitLab in the end. The GitHub org was not used for any code-related things, so there was not going to be any less migration needed to move the code to GitHub vs. GitLab.

2 Likes

@craftyjon What was the end reasoning? Was it the project management stuff like the other’s theorized or was it something else?

In addition to @craftyjon and @marekr’s comments, we also considered that GitLab is FOSS to its core. Where possible, we like to support and promote FOSS solutions. Toward that end, we use Zulip for team coordination, Weblate for hosted translations and, of course, GitLab.

GitHub is nice for many things but at the end of the day, they are a tool built on open source that isn’t open. So when you host your code there, you are trusting that supporting open source in a way that we require remains profitable for a closed source company.

5 Likes

In addition to what Seth said, yes GitLab had more features that were interesting to us for project management, issue management, etc.

2 Likes

Thanks everyone for your response. Your explanations make sense, I have never used GitLab, so I was wondering what advantages it had that led to KiCAD moving to it. The bit about being fully FOSS was interesting. I did not realize that it was fully FOSS.

I am adding a summary of the reasons here, and editing my original post to indicate that I got an answer.

In brief

  • GitLab has better project management features
  • GitLab has better issue grouping
  • GitLab is eaiser to self-host, which could prove useful for KiCAD in the future.
  • GitLab is 100% FOSS, while GitHub is not fully FOSS
  • The organization GitHub account was only used for libraries, so it would not be complicated to move them to GitLab as well.

@Rene_Poschl I realized I referred to your discussion of project management as a “theory”. My apologies. I was scrolling through the replies really fast and not paying attention to usernames and the time, so I missed that you are a developer.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.