https://about.gitlab.com/ works for me, and my browser also matches the minimum browser requirements.
Thanks. I donât want to clutter this thread while diagnosing this. If this is a reproducible problem, it would be most helpful if you create a new bug to report it (this forum wonât let me link to it but the URL is https://gitlab.com/gitlab-org/gitlab/-/issues/new?issuable_template=Bug
).
Alternatively, if you want me to do that for you, please hit me up at tfigueiro
at gitlab.com
.
I am pretty sure that GitLab is GDPR-compliant (since they have to comply with the GDPR on gitlab.com).
However, many self-hosted services are not GDPR-compliant, and GDPR-compliance is an important thing to check. So if Gitea is selected, itâs important to check for GDPR-compliance.
Then again, I am not sure if Blenderâs website are currently GDPR-compliant either (the blender.org website doesnât mention the right to lodge a complaint, for example), but thatâs a different question.
Note that Gitea might also join the Feediverse at some point: https://social.gitea.io/@gitea/107576791626052697
This opens very interesting possibilities and could, depending on how itâs implemented, be quite convinient for developers.
Gitea also has a nice Android app, not that it matters for the core development but this is a nice to have.
A free/paid, open-source Android native client for Git repository management tool Gitea
Another self-hosted solution I tried was https://gitbucket.github.io/ It might be a decent one to take a look at as well since it has a nice plugin system http://gitbucket-plugins.github.io/
I donât really have a preference (yet).
The main thing I like about phabricator (edit: was âgitlabâ but I meant phab) are the code review features. It would be nice if those sort of features would be in the new system.
I do have a strong preference to not use the âultimate edition for open source projectsâ from gitlab. While I like the gitlab people and theyâve created a very nice system and their offer is very generous, and made with the right intentions, I still think itâs a dangerous route.
Companies are not constant things. If facebook or apple decides to buy gitlab (I donât know if itâs currently possible, but anything can happen in tech-company land) youâre suddenly beholden to a less attractive party.
Also I think back to the whole linux-bitkeeper history and that was not nice at all, even though there were lots of nice people around.
So while I sincerely compliment gitlab with both their system and their good work in hosting open source projects I think blender is just too big for that. If youâre a small project that can easily switch to something else these sort of constructs are fantastic. If you are a juggernaut like blender not so much⌠(imho of course).
Just under 2 years ago, I looked into similar issues for the code hosting infrastructure for work. I ended up going with Gitlab for our setup.
Pros:
-
Unless something new has popped up in the last few months, practically, Gitlab is the only option that has a similar level of functionality (especially on the issue tracking / workboard front)
-
âGitHubâ style issue management sucks, and doesnât fit Blenderâs development workflow or organisation. Practically, GitHub style issues are presented as a flat list, accompanied by an unordered sea of tags, and are nominally âsearchableâ using a very basic/anaemic search box that doesnât inspire confidence in being able to find what you actually need or want. (From the looks of things, Gitea is one of those lightweight GitHub clones)
-
Redmine has a much more robust issue tracking system, along with decent search filters. The main downside is that, at least with the instance I worked with, it was really a âprevious generationâ tool (aka, clunky early 2010âs web-forms, and mostly only Issue Tracking + Wikiâs. Not sure about if it can even do code review / repository browsing, as we were using Gerrit for code review with various plugins). IIRC, Nathan / jesterking ran a test instance of Redmine for Blender about a decade ago, and IIRC it had performance issues with our bug tracker database from back then even, so I hate to think how itâd fare with the 2022 Blender Bug Tracker.
-
-
KDE seems to be another one of the big FOSS projects using a self-hosted instance of GitLab these days
-
âOpen Sourceâ programme for access to full features tier makes the necessary features for project management available without having to commit to significant recurring subscription costs (their prices are âper user, per monthâ).
Cons:
-
Licensing tiers / stuff like that are fickle, and change often. IIRC, some of those things need to be ârenewed / reviewed annuallyâ, so care is needed. Relying on the good favour of a 3rd party company (with all the various investment round + sharemarket listing stuff theyâve got going on) does present a level of risk that should be considered carefully.
-
Spam for self-hosted instances can end up being an issue / ongoing battle
- For example, a local admin I spoke with had to basically turn off the ability to create new accounts. As an indication of the scale of the problem, for much of last year, a bunch of us were getting hit with multiple spam login/password-reset/lockout emails related to that instance, separate to the one we were using).
- But, to be fair, this type of issue is also a problem that Blenderâs Phabricator + Mediawiki instances have encountered, so itâs nothing new there.
-
The number of ways Iâve seen people screw up signing up to accept an invite to join an private project/group/repo is eye opening
-
The biggest downside is that Gitlab doesnât really have Phabricatorâs concept of allowing multiple âProjects/Teamsâ for a Repo.
- For our setup, I ended up working around that by creating multiple nested âgroupsâ, assigning folks to those, and creating âworkboard onlyâ projects to help get on top of it, but it was still a mess getting non-technical folks to navigate all that. (In particular, getting them to locate the workboards + wiki pages to get their bearings to the rest of the resources was a pain)
-
There are a bunch of clunky things in the UI, but these are generally small annoyances more than real deal breakers:
-
The UI for editing Title + Description for an issue is quite hidden / obscure, when compared to most other tools (i.e. a tiny âpencilâ icon). Iâve seen lots of folks give up, and just write new comments everytime they want to do that instead.
-
(With the current versions) You need to reload a page before trying to edit a code-review comment, otherwise it loads an empty / zero-height box that you canât resize.
-
Other little annoyances + sudden regressions like the comment-editing one pop up with every other update, and are fixed with yet another later update. (Apparently, you do also need to keep up with the release schedule, as skipping multiple releases and then trying to upgrade is apparently problematic - Disclaimer: I havenât had to deal with this side of things myself, so that point might just be outdated heresayâŚ)
-
-
An earlier poster noted the ability to define multiple workboards per repository. In my experience, Iâd like to caution that that feature has been a bit half baked: Yes, you can define and use them. But, there are some glitches sometimes when you use them, e.g.
- If you switch away from the main one, navigating to the workboards via the navlinks tree puts you back on the last one you used, and not a default one.
- Also, the way that the Open/Closed issue columns works means that you do often end up seeing issues from other workboards showing up on unrelated ones, which can be a bit unsettling / confusing
Hopefully that offers some useful insights from someone whoâs familiar with both Blenderâs Phabricator and current Gitlab
One last thing I forgot earlier:
What are the main obstacles to continuing to use Phabricator, despite it being deprecated now?
I understand that web-facing tech does need a lot more churn + active maintenance to keep on top of dependency updates to apply security patches, etc., but what specifically means that the ending of official support pose a serious issue for Blenderâs continuing usage of it?
global search (too much UI based and keyb unfriendly) doesnt provide with the issue specific filters like labels, or other such stuff available in issue search etc
epics
i did not have access to those, so, dont have an intuition at how they work, thatâs why i did not mention that
scoped labels
i know about it, but scoped labels get lost in plathora of other labels, and arent shown upfront. in the issue list. the status thing is wanted to be a first class citizen (means shown at special places in the user interfaces and other such specificities), not a generic label
not sure what âmentioned upfrontâ means
âmentioned upfront in the issue listâ means in the list where you search for issues (had given example of one whichâs shown there âclosed (moved)â)
deprecations
no, i was not talking about deprecations. i have tried filling the issues on gitlab project - several issues, each on different matters, and my experience was extreeeeemely poor.
Hereâs a list of things that kind of suck with Phabricator (and that a replacement should do better):
-
The workflow feels very outdated. Why use a seperate tool to create and upload patches? Imo the pull / merge request approach using git branches is more standard and has better tooling / ide support.
-
There is no CI integration in Phabricator. It would be good to see if a patch (pull request) passes checks / compiles before reviewing it. Or allow certain patches to automatically apply once they pass CI.
-
The code is not centerstage: itâs kinda difficult to just read / browse the repositories online. Phabricator instead focusses on patches on the frontpage.
-
There is no code editor on Phabricator. You cannot quickly fix a typo or write documents without first having to check out the source and preparing a patch.
-
The developer facing documentation is not on Phabricator but on a seperate MediaWiki instance.
What are those features that Gitea and Gitlab Community Edition are missing and that would have to be coded by BF?
There are some questions which I assume others have looked into relating to the health of the project we would switch to.
- Is gitlab profitable? As far as I can tell not-yet, making it more of a risky choiceâŚ
I can only assume the company behind Phabricator wasnât profitable (enough), although there could be other reasons. - There are other alternatives, some have been mentioned here - is it the case that these projects are significantly smaller/alpha-quality/less-healthy/missing-features.
At a glance - Kallithea, Gitbucket are in the same ballpark as Gitea.
Iâm wary of selecting a project based on some nice-to-have features when the overall health of the project may be in question. While we canât know for sure how things go in the future - some questions that come to mind:
- If in
n
years time gitlab needs to be profitable, how might this impact us? (apologies if it already is, the only information I could find online pointed to it not yet being profitable) - What is the motivation for maintaining gitea? (is this developed by enthusiastic volunteers? are there businesses behind this? ⌠etc).
These questions probably donât have simple answers, even so, Iâm more concerned about the health of the project we move to than individual features.
This is actually something which I think is an advantage. Pull requests only work if the person doing the pull request has his git repository shared online. Which would mean that either developer.blender.org needs to host git repositories for everybody, or people need to publish their repositories themselves with all the hassle that brings.
I do dislike that arc diff squashes all commits into one, though.
I think GitLab would be the least risky choice in terms of health of the project, because there are many other closed and open source projects relying on it and there is real funding behind it. If GitLab the company goes under I think itâs likely to continue in some other way.
The alternatives seem to be mostly driven by volunteers and there are few public instances, seemingly none used by a big open source project. Gitea development for example still happens on GitHub, which is understandable but shows the maturity of the project. I think such projects are much more likely to become unmaintained, though I hope they donât.
In terms of features I think itâs mixed, I think GitLab is clearly better for us as-is, but also would be harder to improve to suit our needs.
If I understand the situation gitea is in, then it is not driven by volunteers but they have 3-4 full-time developers working on it.
These are paid via a fund like we do with Blender.
Most of the funding seems to come from small to medium sized companies. Last time I looked the majority of sponsors seems to be located in China.
There is a publicly viewable internal vote every year were they decide who should get funds to work full-time on the project. There seems to be more willing developers than there is funding so IIRC, they also have a bounty system where people can chip in for funding developers outside of the core team to finish a task.
hosted on github and not self-hosted
There is a ticket about this on their github page.
The gist of it is that they have been able to self-host with all the features they need for a long time. They have even done so will all their repositories besides the main âgiteaâ repo. (They have around 10 other repositories besides the main one.)
The two major reasons for this seems to be two fold:
-
The cost of self hosting the main repo would be quite large. They could do it, but why spend money and admin power on that instead of hiring more core developers? Most of their clients donât care if the development happens on a self-hosted instance. They only care if the product itself is good enough.
-
Self hosting will make the project more isolated as it wonât then be part of the github developer ecosystem. Perhaps not a big downside. But it would mean potentially less community engagement both in the issue tracker and pull request wise.
To me, even if gitea doesnât have the same kind of funding that gitlab has, I think it is a safer bet because it is fully open source. (And there seems to be less âvendor lock inâ than with gitlab because it goes all in on supporting 3rd party CI systems etc)
I have had experiences in the past of going with half open solutions. Those where bought up by Oracle and the licensing got restrictive as heck while the free tiers were swiftly eliminated and prices jacked up. Migration was very painful and costly.
I donât want to see blender getting into such an uncomfortable situation.
From Gitea - Open Collective I understood the funding was small, but if there are 3-4 fulltime developers (presumably from other sources) thatâs more reassuring.
Unfortunately this would mean the Gitea funding could be affected significantly by increased western sanctions, which seem rather likely looking into the future. In general the Chinese economy is hard to predict. OTOH if a big player like Blender switches to Gitea that may help diversify their funding.
I think itâs very hard to predict the longer term health of the choices we have, so doesnât seem like something we can give much weight in our decision making. Worst case is we have to do another transition in a few years, but since the platforms would use the more common github-like workflow, that might be less painful than porting from Phabricator. There are plenty of other things that may go wrong that could lead to that scenario.
Note that I could be remembering wrong, so if it is important, we should double check so that it is correct.
This is what I remember from when I did some initial research last year, just to be clear.
I think that 2. also applies to Blender.
There is an argument to be made for moving to GitHub.com, as
- from all of these options, it is the most likely to stay operational
- it already has significant buy in from the wider open source and FOSS community
- it would not require Blender to host user forks or allow any contributor to branch - either of which would be necessary to allow for the Pull Request based workflow that Github, Gitlab and Gitea are build around
IMO this should be seriously discussed and not discarded for ideological reasons. Even if GitHub is deemed too proprietary, I think it would be worth it to evaluate what openness in this context here means and to what extent it can be achieved / what parts of it are worthwhile pursuing.
Does it matter what software runs on the blender.org servers?
Unless @Ton radically changed his views on this recently, i donât see github being an option.