 Hello and welcome everyone. Thanks for joining us today. We're excited to have you on in this webcast We will be going over our latest release 11.4 where we have several new features to help improve efficiency My name is Agnes and I work on the marketing program team here at good luck. I'm joining you from Jakarta, Indonesia today Also joining us this afternoon is Alisha from marketing James from product and Muhammad from support We are going to give people just a couple more minutes to get logged on While we are waiting, I'm going to launch a poll. You can take part in if you like The graphic on the next slide may be useful as you think through your answer for your first poll question Thank you to everyone who participated in the poll. Before we get started I'm going to cover a couple of housekeeping items. First, feel free to ask questions throughout the presentation You can use the Q&A function at the bottom of your screen for that We'll give you the time for questions at the end But you can go ahead and send in your questions as you think of them and we'll make sure to get to them during the Q&A session If you're experiencing any technical difficulties, you can add function to get in touch with me the moderate health Now I'm going to turn it over to Alisha to talk about the poll results. Good morning It's really good to meet you all actually. Good afternoon. Sorry. Yeah I'm actually based in the UK based from Cornwall We're all remote here at GitLab and as you can tell from where all the other people are based that are on this presentation So it's really interesting to see the results. I can see a cross-section of Choices that you've all made we've got You know quite a few people using it for the create and package areas of the product But as well as that we've got people using GitLab's manage plan verify and release as well And we've also got somebody I think it's maybe one or two people who don't use GitLab at all So hopefully you'll be able to get quite a lot out of this presentation. The person who's not currently using GitLab But maybe after the event we can send you a link to a generic demo of GitLab as well So let's see what's happening in 11.4. So we release every month on the 22nd This is our 88th monthly consecutive monthly release and it's quite an exciting release and I'm very excited as we're always talking about improving efficiently across the whole life cycle of software and One of our values at GitLab is also efficiency and we take that to heart and try and put that into all the areas of GitLab as a product People are trying to work on planning and managing their products through to verifying and releasing but I can see if the people that've completed this Poll and as well as that as I mentioned people working on it just using source control Which is fine, but we also have all the other features available within GitLab Right on to the next slide there with me Okay, so I'm going to give you an overview of all the things that we've released in 11.4 Let's have a quick look. It's really about how we help improve efficiency across the life cycle And capabilities and features that we release What we want to do is be able to make people deliver more effectively and efficiently and not spend so much time working on What you're actually doing so we try and do as much as the work for you as we can We're going to be talking about code reviews how we've made code reviews easier with merge request reviews and suggested approvers and we're also going to be looking at feature flags and For relevance sake, let's pause and take a poll to see how many of you are currently using the feature flags within GitLab Agnes will pull up a poll for you now Okay, so it looks like 75% of you are not currently using these so this is something that James will cover in the demo part of this presentation a bit later on in the in this presentation Moving down the list. We've also had a pretty cool update where we've moved to see I am all into core Which is our free edition of GitLab and lastly, we're going to be looking at a couple of other pieces around the file tree and tables Okay, let's go on to the next page Bear with me All right suggested reviewer was a feature that we've that we've now built on we started off with just code owners in our last release And then in this release we're starting to roll in the idea of who should be selected or involved in reviewing a merge request With this we're now able to Suggest and you'll be able to see in the demo later as to who would be involved in reviewing the specific change The idea here is to make it easier for you to know who should be reviewing code But also who should be involved in making those changes and who should be approving those changes before they go live We will look at those in the demo with James Another thing that we noticed was that any time people are doing updates or commenting on a merge request We'd end up with a series of comments and subsequent notifications to each of the users So you'd end up getting hit with lots of notifications as people were making comments with eleven point four We've been to we've introduced batch comments, which means that we'll be bringing comments into one consolidated review So as you're making comments You can set them up and effectively stage in your comments so that it comes out as one notification back to the team Rather than lots of different notifications So get lab yammals so In the spirit of trying to help everyone be more effective and efficient It is one of get labs values after all as I mentioned earlier We've been hearing from a lot of people in the get lab community about the power and the usefulness of having Include files and making them available for everyone up until now. They were only available in our charged for get lab starter Edition so responding to everyone's feedback. We've never moved the yammal include files into the free core Community edition making it an open source capability and when we move features back into core, they will always stay there It's not something that we will take away in the future Anyway, so this is going to make it easier to manage how you go about planning your CI pipelines and So that you can have multiple include files rather than having all of the details in your yammal repeat So you can have a single include file to manage everything faster and again improving efficiency Feature flags exciting a new feature and an alpha feature coming up into this release is the Capability to have feature flags built into get lab with feature flags What you can do is turn on or turn off specifically features in your application and you can manage all of that from within get lab We'll demo that in just a few minutes But what it will do is help you go faster in your releases feature flags is something that we're looking to continue to iterate on as we move forward File tree browsers now One of the frequent problems or challenges with a complex merge request is that there's a lot of different files included in it Being able to understand where they're at the directory and what files you're actually changing What we've done is an update to improve the merge requests so that you can navigate the file tree and Understand which of the files are changing and the status of those Again, this makes it a lot more efficient and makes it easier to update and manage your merge requests Onto the markdown table button One of the last big improvements and it's one that's quite exciting because managing tables was quite difficult in the past And this is a contribution from one of our community. We've got 2000 Call members who actually help provide Changes to get lab and what they've done is add the ability to add a markdown table right from within the editor to make it Easy to build out these tables and it's great to see this added here It's going to make a lot of people's lives more efficient and more effective as before it used to involve a lot of cutting and pasting And now it's just provide automatically from within get lab So I hope I've gone through most of the highlights. It was just a summary but what James is going to do now for us is go through all these highlights and Start with a demo and I'll hand it over to you James Thanks, Elsa I'm really excited to show you a couple of the new features that ultra mentioned that we introduced in your lab 11.4 And I think the best way to do that is with a demo so you can really see them in action All right, so I hope you can see my entire screen the first improvement that I Like to show you is around the The merge request reviews, so this is a merge request that I've been working on I'm trying to add a new feature to our API to emulate a force push from the command line with git It's still very incomplete, but I'll show you what the the changes view looks like So here we are I'm looking at some of the the code that I've changed and one of the classic problems of code review Is that I'll notice something up here. So maybe maybe this line doesn't really make sense To me when I'm reading it like this this maybe shouldn't be a bull I think we use some other pattern instead So I'll leave a comment down there But then I'll read a couple of lines or files further down and all of a sudden that change is explained By the later change and so I've just left an irrelevant comment Which is confusing noise in the merge request and just it's a waste of my time and a waste of other people's time And so one of the things we've introduced is this merge request review feature So now when I click on this and start leaving a comment This should be an integer for example, I can start a review This is in addition to the Option we already had before which was to leave a comment immediately But I'm going to start a review and we can see that my comment is pending and it hasn't been submitted yet Down here. I can maybe highlight that I think this test case description Isn't obvious So maybe I should choose a better better test case description there Scroll down see if I can spot any other changes. Oh, this is a bit of a warning sign I've got an unimplemented feature here. So this needs to be removed And so as you can see, I've got this little submit button down here. It's telling me I've got three comments now And as I go and add more comments This is running on a fork so Remove The number continues to grow and I can quickly jump back and maybe my first comment is less relevant now I Now I'm convinced after reading this that it should be a bull and I can edit this maybe change my comment Or I can delete it. This is a really nice way for me to just Go through leave a bunch of comments then review my comments and then submit them in one go and when I'm done I can click submit The other the other challenge associated with merge requests is navigating stiff I'm sure you're confused looking at me scroll through this file. What I'm looking at there's a lot of different There's at least four or five different files that have changed and it's just this wall of green and red text And so what we've introduced is a file browser to help us get a better sense of Which files have changed how much and switch between them so I can now just click on any file and jump around the merge request and immediately end up in the file But I'm looking for I can also search it so if I'm specifically interested in the JSON file I can filter for that or maybe I only want to look at tests and I can see how here's the test that I'm editing And so this makes it much easier to navigate even Relatively small merge requests, but particularly large from a request where maybe 50 to 100 files have changed this feature really improves the Efficiency in doing a review and leaving feedback and understanding what's going on So these are two of the biggest changes that we've made to merge requests In get lab 11.4. They both really improve the efficiency of the review process for the code reviewer, but they also review They've also improved Just the navigation of the merge request for the author or anyone else who's coming to look at the merge request Okay, the next feature I'd like to show you is feature flags and so the idea of feature flags is Essentially so that you can toggle different features in your application without deploying a new version of it So this is useful if you've got Maybe a feature that you only want to Toggle on for maybe like 30 minutes or 10 minutes when you first release it because you're unsure of the impact It's going to have a production scale and so you can do that remotely from a Feature flag of toggling tool So that that's that's much easier than it would be otherwise So to demonstrate what this looks like I've got a little demo app. I've got a hello world app I'll just reload the page so you can see it's it's serving and I'll show you the source code quickly. So get lab uses the unleash library for feature flags And you can see I've included the golang library for unleash here That's some configuration which I'll show you in the get lab interface in a second But what I'd like to highlight is that I've got this special feature here. So When we're generating the page there's this get name function And in it there's this special ifgate which says if unleashes an able if the unleash feature flag Greeting is enabled. We're going to use this name query parameter. So this is just I'm just getting the query parameter name and it's their value Otherwise, we're going to use world. And so this is the original functionality and this is a new functionality And so you can see I'll reload it. We don't have a query parameter. So it says how long world if I go Name equals James nothing happens. So the reason is that the feature flag is set to false And so the feature flag management interface is in the operations area get lab of our projects or go to feature flags And you can see I've got an inactive feeding feature flag for the greeting feature which shows you a personalized greeting I click edit and Activate it you can see that the feature flag was updated And if I go back to my demo application Change that to John while I'm at it. Let's try a different name Now you can see immediately the features been activated in real time. I haven't done anything. I haven't recompiled my application I haven't redeployed it. It's just running and the behavior has changed Change that and Then if I turn it off We can see that it's it'll go back to normal as well Slide delay, I think There we are. Hello world. So I mentioned there's some configuration involved in setting this up. So you'll need to use the The unleash library as I mentioned It's available in quite a few different languages And also when you're using it, you'll need to make use of the API URL instance ID and application name which is available Yeah, and also there are links to the documentation to get you up and running and That's feature flags I'll open it up to questions now Thanks James for the super informative demo. I haven't seen any Questions yet. So if you have any questions, feel free to submit that while we're waiting Maybe we can kind of go through some questions that We've seen come up so far So maybe the first one James. Can you share a little bit on What language are supported in the feet by the feature flags? Absolutely, so The unleash library supports quite a few there are four official clients one for Java node Go and Ruby and there's also community contributed Unleashed libraries as well the net and also for Python Now you can read about this in the GitLab documentation as well as there's links directly to the unleash documentation Awesome. Thank you so much For sharing that I guess if there's no other questions, maybe we'll close up with one last question that we have seen come up as well Really around where suggestors reviewers features go going, but if you can share a little bit on that one Sure, so the suggested approvers feature is Really just the next step in where we've been going with codon is so as Elton mentioned and we released codon is In the previous release of 11.3 where you could define Based on a file path pattern who was the responsible developer for a specific area of the code base and then in 11.4 We we've been trying to look at how we apply that and make that more relevant we made the first step to introduce it into the Merge request approval process by suggesting those In the the next release we will automatically assign those so if you've got a codon as file You won't have to click a button to add the suggested approvers. Those approvers will just be added and then Beyond that we want to take it to another place where we can require approvers Approval from codon is and this is going to give you an extra layer of structure and enforcement for Yes, projects that really require that extra rigour and we know that some particularly our larger customers that Have compliance processes and policies internally Adding that additional way of structure to make sure the right people approve the merge request and see the merge request Every single time without fail is really important to them and that's that's where we're headed over the next couple of releases Great sounds exciting. So I guess if we don't have any questions Maybe James you can proceed with sharing a little bit about the upcoming release Sure, I'm very excited about 11.5 I've been working on writing the release notes and testing it and the last week or so and some of the particularly exciting improvements Parallel CI jobs and we've been making some improvement to the merge request widgets and the way discussions presented Also, as I mentioned, we're adding automatic assignment of codoners as approvers in merge requests That's really exciting And there's a there's a whole lot more coming as well. So that's that's just a little taste of what's in the next release So stay tuned that comes out on the 22nd of November You can read more in the release post when that goes up or join us next month for our 11.5 release radar Okay, so let me just close up then By saying that we'd love to hear your thoughts on today's demo We would really appreciate your responses to our webinar survey. I'll drop the link to the survey in the chat We would also like to invite you to sign up for a free trial of get lab ultimate We hope you're excited to see what your team can do with it. I'll chat that link as well And finally, if you have any other questions, please don't hesitate to reach us via our sales contact page about get lab comm slash sales That's all for today. Thank you so much for joining us