Gitlab 13.10 Released
about.gitlab.com
about.gitlab.com
For example does anyone else find Gitlabs diff lacking? It makes reviewing large patches painful, with the seemingly constant fetching of individual file diffs and inability to show large file diffs. The UI in general feels sluggish, especially when compared to something like Gerrit or GitHub.
I don't think I've seen that reported before and we have been working through some interesting to reproduce issues in recent milestones.
Would you mind opening an issue for this? Feel free to tag me (same name).
This is closer to how git is used in the linux mailing lists but gitlab completely breaks that workflow. Github has added some support for that. And yeah, performance sucks, even for trivial patches.
Documentation: https://docs.gitlab.com/ee/user/project/merge_requests/versi...
Documentation: https://docs.gitlab.com/ee/user/project/merge_requests/revie...
Thanks for that comment. As you can expect, we notice it too. This is something the team is actively monitoring and working to improve (example: https://gitlab.com/gitlab-org/gitlab/-/issues/321691 being worked on in the current milestone).
I am curious: have you tried the file-by-file mode? Some users have given us very positive feedback on this feature, others not so much. It might be something that fits some users' habits but not others. But thought it was worth mentioning. We're actually considering and researching turning this on automatically for MRs over a certain size (https://gitlab.com/gitlab-org/gitlab/-/issues/212849 your thoughts would be very appreciated there, thanks!). https://docs.gitlab.com/ee/user/project/merge_requests/revie...
Not that it solves the root of the problem (that's being addressed too) yet this feature allows for really large MRs to be reviewed without having to render all the changes at once.
One of the things we're currently working on is putting monitoring in pace for all the of the diff limits - https://gitlab.com/gitlab-org/gitlab/-/issues/31063. The goal here is that we can further fine tune some of the limits in place to continue to help with larger merge requests.
The group also spent some time investigating ways to improve the blocking time for large merge requests and you can see some of the discussion around that here: https://gitlab.com/gitlab-org/gitlab/-/issues/295237.
The last issue I'll drop here is https://gitlab.com/gitlab-org/gitlab/-/issues/241841.
You can also see all of the other issues related to performance that the Code Review group has been working on in GitLab here: https://gitlab.com/gitlab-org/gitlab/-/issues?scope=all&utf8...
Thanks again for the feedback - and know that this is something we are looking in to.
Bonus... you can enter for a chance to win a $75 Amazon gift card.
(And yes I filled out the survey).
Thid leeds to many hacks to get performance needed (jobs are merged in one big one for example). With many smaller jobs some pipelines run sometimes up to 50% slower than ssh + docker.
Also built-in caching is painfully slow. Our self hosted minio instance as custom cache is 10 times faster than Gitlab's local cache and this is absurd.
These are 2 main speed issues with me. As code reviewer large diff bad performance would be the 3rd issue. It lags even with my beefy workstation. Maybe adding JS functionality is needed for files in current viewport? I don't need syntax highlight and comments options on all 100 files at the same time but I want an option to scroll down and this functionality on currently viewed files
Impatiently wafting for this so I don't have to use sluggish browser any more:
https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issu...
I'm also interested to see what kind of impact it has on large MRs, but do know it's not the answer for what happens in GitLab.
We are switching to GitHub. Which saddens me because I much prefer GitLab's interface. But I have lost the battle, due to GitLab's terrible performance.
I feel gitlab's is now mainly aiming at large enough companies which actually use all of these features.
Versioning the yaml specs/apis is the correct move. I hope future CI systems take note.
I haven't had any older yamls break and I wouldn't say the yaml schema is worse off because of backwards compatibility. Not sure a version would change much atm.
Regarding user interface modularity you can already turn on and off many parts in the front end https://imgur.com/a/aIRkDmt
Eh.. I think the comments here are telling otherwise. I'll admit I haven't used Gitlab in over a year now. But I know the entire team I worked with really despised the switch to Gitlab internally. So much so we dragged our feet as the only team staying on Github while the rest of the company moved to Gitlab as long as we could.
It was a really unpleasant experience using Gitlab. The diffing in particular was truly awful by comparison. And in general everything was slower with Gitlab.
You should rethink this mindset of doing both at the same time and focus more on making what you have now better. It would likely benefit you greatly.
To me, more features and ease of usability can’t coexist. There must be compromises. I’ve heard the argument that it’s possible by hiding the advanced features, and I would agree in the short term. But internally, as teams grow and have to maintain multiple documentations noting depreciations, it creeps on the user’s end. It becomes harder to read documentation and there’s also the burden of trying to understand what it’s for because it was something that replaced a previous feature which I don’t have context for.
Please add features responsibly, and stop rewarding new features that seem helpful in a handful of use cases. But who am I kidding here
Any examples of features that we probably shouldn't have added and should consider removing?
We intent to replace the DIY DevOps toolchain with GitLab. Something that consists of many applications and interfaces. Just having it in a single application would already be a big quality of life improvement for the users. And so far the most common hurdle is being able to match the functionality of the point solutions.
I first started thinking hard about this when they recently cancelled their bronze tier subscription. Gitlab is clearly ducking out of a brawl with Github for the individual/consumer $5/month tier; that makes sense as there is no way Gitlab can win by taking on the incumbent on their own turf. Instead Gitlab seems to be shifting focus to targeting larger enterprise customers; those who are fine paying $20/mo or ideally $100/mo for a one-stop solution to the full SDLC. (The counterargument here would be that they _are_ still targeting the $5/mo customer, they are just trying to replace a $5/mo Github subscription plus a $10/mo CircleCI sub plus a $10/mo Jira sub etc. -- I'm not sure I see that end of the userbase being as amenable to bundling though).
The largest enterprise customers will keep asking for more boxes to be ticked, because it's usually easier to add features onto your existing solution than to stitch multiple solutions together, and because the more features/config options you have, the more complex configurations/requirements you can satisfy. However that means you get feature bloat, and pricing becomes more challenging; you need to charge more for "all the features" tier, but as you broaden the offering, fewer customers actually want to pay for everything. "What do we keep in the $100/mo tier?" is a challenging question to get right as the feature-set grows.
As you get into enterprise sales, you start to need more customization/unbundling. Before I moved back to Github I paid Gitlab $20/mo per engineer on my team and would never dream of jumping up to $100/mo, but would absolutely have paid more for a la carte access to certain features from the $100/mo ultimate tier. (For example I have no interest in their issue tracker, but I'd love to have been able to use their DevOps / Kubernetes tooling).
I believe this sort of a la carte pricing is less developer-friendly because you tend to need to talk to a sales person vs. just having the developer sign up, but then I don't believe that "developer first" is your sales strategy in enterprise; see Okta vs. Auth0 for a good example:
https://auth0.com/pricing/ https://www.okta.com/pricing/#customer-identity-products
Auth0 keeps it as simple as possible. Even within customer-identity (their competitor to Auth0) Okta has way more configuration for add-ons like MFA, SSO etc.
(I know @sytse / Gitlab folks post on here regularly so I'd love to hear their feedback on whether I'm completely off-base in how I'm thinking about this stuff!)
It isn't so much about the customer but about the product. Our ambition went from being a source code tool to a complete DevOps platform delivered as a single application.
I think a lot of the changes you see can be explained from that.
Zawinski's Law:
Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can.
Having to pay the same amount per license, for folks that just want to create/edit or even just view issues, as a full blown developer is simply not tractable. There's a lot of value in the platform and all else equal I'd probably pick GitLab if I had to choose between GitLab, GitHub, BitBucket, JetBrains Space, or Shudder Azure DevOps.
But the price. Damn, it's just impossible to make that argument to yourself, never mind your CTO.
https://gitlab.com/gitlab-org/gitlab/-/issues/213185
The more feedback they get the better.
edit: kudos to them they already offer tons of stuff for free.
I know it hurts, I know it's probably not what devs at Gitlab aspire to, but I believe it is much needed. Possibly, an entire rewrite of some core aspects are needed. I have a lot of trouble selling Gitlab to my team. Everyone just wants to move to Github to have a simple UX that works.
GitHub's UX is simple because it doesn't even come close to what GitLab provides, even in the free tier, and their iteration is much slower. If GitHub had GitLab's features it'd have a complex in some places UX as well.
If there's one feature I really miss in Gitlab than the limited issue trackers. Despite Jira is still the "go-to" solution in many companies, I feel that many try to avoid that monster of a software, especially since Atlassian no more offers a self-hosted variant. I'd love to see more things like GANTT charts included (there is only a Kanban board display for issues, not yet some Waterfall or agile/GANTT board).
There's a steep step-up from Premium (which we are at) to Ultimate to get guest accounts, but even with guest accounts, we'd need to separate access of service desk tickets from internal tickets.
Redmine has these features since a long time, and I think it's worth for Github to catch up...
https://about.gitlab.com/handbook/ceo/pricing/#buyer-based-t...
> Premium is for team (s) usage, with the purchasing decision led by one or more Directors
Doesn't this conflict with the stewardship promise that "The open source codebase will have all the features that are essential to running a large 'forge' with public and private repositories"?
Thanks again for the question.
Edit - I've created an MR to document this on our pricing model page: https://gitlab.com/gitlab-com/www-gitlab-com/-/merge_request...
EDIT: That is, the one under the help tab in a Gitlab instance on the top right.
Maybe you're working on a self-managed version that still needs to be updated?
My instance is definitely updated, I did it myself and verified the version number in the Admin section.
https://about.gitlab.com/handbook/marketing/blog/release-pos...
https://about.gitlab.com/releases/2021/03/22/gitlab-13-10-re...
"New predefined variables for job start time and pipeline created time"
13.9 didn’t appear and I had to go looking. 13.10 hasn’t either. Blog “news” posts, unfiltered and patch releases all show up in RSS... why aren’t the monthly releases being included anymore?
https://about.gitlab.com/atom.xml currently shows 13.10 as the second entry.
I was subscribed to https://www.gitlab.com/atom.xml - at least, that's what Feedly's UI shows, but that URL doesn't seem to resolve at all. In my Feedly, the newest article was "building a better Heroku".
When you search for GitLab in Feedly, you also see that feed, without the 13.10 post. The "GitLab" source at top of search results shows "about.gitlab.com", 6k followers, but no 13.10 post.
I've directly added your atom.xml link so my situation is resolved for now. Thanks!
https://gitlab.com/gitlab-com/www-gitlab-com/-/merge_request...
I casually read a few PRs and issues from a year ago where you discussed introducing ActionCable but it looks like a full blown report hasn't been written up on how it panned out, but I do see it being referenced in your HTML.
Concerns were mainly around memory usage, such as it growing to pretty huge sizes even with idle connections. I know there were lots of horror stories of major memory usage early on. The memory growth climbed very quickly with active connections, but I wonder now with Rails 6.1+ if those issues have been ironed out.
Are you no longer concerned because memory usage dropped significantly?
How's the overall latency?
I remember seeing some benchmarks where ActionCable was using like 1-2gb of memory for around a thousand active connections with 95% percentile latency in the multi-second range to broadcast a message. I do see AnyCable makes huge improvements here and I love the idea of it but also not too sure how backwards compatible it is with Hotwire / Turbo Streams.
I've always thought Rails was good / fast enough but the ActionCable stuff worries me a little because a single low end VPS could happily handle a very solid amount of traffic (tens of thousands of daily page views, etc.) but once you start factoring in websocket connections that changes everything. Suddenly pages that have completed the request / response cycle are still on the hook to keep a ws connection open even if they're not doing anything that causes a state change.
- Syntax highlighting (for Python at least) is wonky.
- Changing profile pictures can take hours or days to propagate. Seems like a silly request, but I like changing my profile pic quickly.
- Metarepos (git repos using lots of submodules) are a mess in git and gitlab doesn't make it easier. It's either monorepo or manyrepo with no support for us inbetweeners.
- Frontend perf is snappier than some competitors, but not snappy /enough/.
- The search UI is bad. The widgets get in my way 90% of the time. And its slow.