 So, and here's what I've got as a welcome to Jenkins documentation office hours. It's the 6th of June 2021. And let's look at a proposed agenda for today. So what I had was, and today is a holiday in the US so we may not have anyone but you and me attending. So I had Jenkins 2.3 10 change log preview, and then inclusive naming improvements is probably worth some time, and contributor summit. Further time for more time so. Are there other topics you'd like to discuss the rush. Okay, I did. Okay, so that's that's enough. Alright, if there are more will certainly add them. Okay, so, so I we learned from our last weeks, our last review of the automated change log that changes to the PR discarded until the release is published so what we need to do is when there's a change we need to make we update the pull request with that correction, and then rely on the tooling to pull in the updated pull request. If changes are needed after release, or, or can't be represented in the pull request that happens after the after release. And in a separate pull request. Now, I'm not sure how we handle this but one of my thoughts was, should we. If that's needed. Should we create us, should we create a prototype pull request. Is awaiting the automated arrival. And this is just me trying to understand how we, how we, how we do it. And so let's let's try some experiment. Any question there dear Raj, or maybe we just talk it through and find fine tune it to see what what works for us. Yes, so can you. I'm sorry to me from start like what exactly is the problem and how your solution might solve it. Sure. Yeah, so let's look at, let's go to the changelog. Let's just start the review of the changelog. So if we go to Jenkins.io. And here we look at the pull request and now we look at the automated changelog pull request. So let's speculate that there's something here that needs to be changed. That we can't fix. Okay, so this is, this is a good reminder to me. I need to use correct formatting the automation fix the formatting that I had put in last week and the fix that it made is correct it indented underneath the top level thing by two spaces before putting the dash. I made a mistake on my part. This is another mistake that I made that I fixed a line break and it's determined that it's going to put that line break in so fixing it was a waste of time. And now here's one we've got which is bump JNR POSIX so okay so this one has a type to do, and it goes through JNR POSIX bump from 317 to 318. We don't want type to do and so I think we need to go edit this pull request. Now the problem here is, you don't have permission to edit pull request text if I remember right do you. Could you, could you, did I should you open your, this one on your side. And let's see if, because I suspect you have to be allowed to merge before you can edit the text of a pull request. Okay. So I'll paste this URL. Oh, yeah, I'll paste this URL into the chat for our session here. And where is chat. Come on chat. I'm going to open that and try to edit the text when I click it, I've got this edit here. I suspect that's not available to you. Okay, I can only see copiling and code. Okay, so, so what that says then is the change log automation has a has a problem here for contributors that are not also contributed that are not also granted permission to merge pull request to the Jenkins core. And so that's that's a problem we'll need to discuss with Tim. Okay, so permissions issue. Dirac, Meg, and Kristen cannot modify pull request descriptions on Jenkins Jenkins slash Jenkins repository. Right. That's, you just not allowed it must be a Jenkins core maintainer. So what that's done is if in this use model the, the only people who can fix these. So you could you could offer a correction here and say hey, this needs the following fixes, but not, you wouldn't be able to give a fix to fix it right in place so I'm going to go ahead and attempt the fix here because now I want us I want us to also learn one more item which is that we've got another problem, which is that depend about pull requests. Don't follow the standard template. There's one example. So what I think we want to do is we want to get a copy of the standard template and paste it into this thing and then use that to formulate the right words in it. So now that means we've got to go full here. So what I need to find is something that uses the standard template here this is a good choice. I'm going to go place this standard template inside here. Okay, now we're going to make our best guesses as to which thing should be what. So this one was merged. Now we want to. Okay, so we long comment. Here we go propose change log entries. Okay, so this is. That's the proposed show. That's the proposed change log entry. Okay bump J and our politics from okay. Okay, and then the proposed upgrade guidelines not applicable. And then the submitter checklist right now what we don't have here is any link yet. To the to the change log for the merged pull request right so this was J and our politics. And they did so they don't have. Okay now this would be much better if there were a J and our politics change log or release notes. They're such a thing releases. Nope. Okay. Sorry, go ahead. So we're searching for J and our politics release notes or 3.1.8 version right. Correct. Yeah, that's what I was looking for. Do you know where to find them. We're going back on this page. On this page back. Yes, yes. So there's the tag for it. Unfortunately there's no, no, there are no release notes to tell us about it. So we can compare. And I guess this gives us. Well, maybe this is the best we can offer. Yeah, this is the comparison between. Defensive copy. Yeah, this is, this is, this is. Okay. And there, there is the text. So, but I'm, I certainly would not want to put this kind of a link into the user documentation. It's just, so, so maybe what the answer here is for defensive copy improvements for, for various, for code improvements. What if we said something like that, and no upgrade guidelines applicable. And we call it done then, and then the rest, we just leave it as is. What do you think would you think that would be reasonable as a post change that. Yes. So previously that we commented all the entries related to general politics. Oh, that's a very good question. You have asked an excellent question. Let's go look at that. Yes. Very good. Okay, so let's. So that's content underscore data change logs weekly. Okay, so here's this one. It was not. It was skipped previously. It was only commented. So maybe this is the most recent updates have all been skip change log. So I think you've got the right idea. Let's mark this one as skip change log. What do you think? Yes. Yes. It's market. Okay, so I'm going to, I'm going to put update that comment so that we've got it. And then I'm going to label it skip change log. All right. And I'm going to put here at it. I agreed that this should be skipped in the change log because the last several patch releases. Have also been skipped in the change log agreeable. So we, we put in our comments and we marked it as skip change log. So the next time that change automated change log is processed, it will be skipped. Now you wouldn't be able to do this, but, but I could. So we, we did it this way for now. All right, so Mark and dirage skipped. Mark labeled as skip change log requires a maintainer, maintainer permissions. Okay, good. So we've, we've learned something there already. And yes, we put. Now if I refresh this page, it should show it to me. Yes, there it is. Okay, good. So I have one. So we edited the PR to be to align it with the standard template that we follow. And as you said, depends upon does not follow that. So we did that because next time the automated change log is done. So it will be able to better, you know, write the specific entry with the help of our edits. So that was the reason, right. At least that was my attempt, but I'm not sure that that will even that will fix everything because type is listed as to do here and it's not clear to me that the changes we made will fix this one. Category developer, that's, that's correct. That's okay. Although this is a developer item that's very high in the list and developer items by the rules should be very bottom of the list. So the location is wrong. Let's note that as well. Location of the developer PR is too early in the change log belongs at the end. Okay, so so that's a problem that the script would need to fix. And, and us fixing it now is a waste of time because the script will undo any change we make to move this later. Okay, so we've fixed this one the no proposed change log that part is fixed. I don't know how to fix this one. Yes, that means, what does that mean that probably means the script does not have a mapping from the label dependencies to. Okay, let me make a note of that label dependencies does not have a mapping to a specific type. Should it. Okay, got it. Fair enough so far. Yes. So what is the frequency at which this automatic change law does it work. So like I used to write it every Tuesday morning. So what about this change automatic change law. So this, this will be run. I think if we were to look we would see that it either runs on every merge of a pull request to the Jenkins.io repository, or to the side to the Jenkins core repository, or it runs on some frequency and checks for changes. So, I think, I think it would, if we did. So last week when we made our changes, it reverted our changes through them away. And, and I had to redo the changes after the release was delivered. Did that did that answer your question. Yes, yes. So it's very frequent like every time of the arguments margin, it's on its work. Yeah, as far as I know and so I'm expecting that it will, that it will lock us, it will throw away our changes if we make any changes directly in the PR. Oh, right. Just listening we would need to work on the, not on the PR we would need to work directly on the change law that it generates. Well, so we would, we would need to work on. Actually, I think in order for our changes to persist we have to work on the pull requests until the deliver until the release is delivered. And then, then the automation stops modifying. Go ahead. Oh, so what he said, if you work on PR it throws away the changes that we do. If we work on the change log, it throws away the changes. So if we work on this thing. If I for instance, let's, let's do it. Let's do what I think is needed here. What we're really going to do is we want this to be converted to skip. Right. And so let's do that. It will, but then I think tomorrow will be thrown away, skipped in the change in the revision. This update this change log entry should be skipped because other patch revisions of JNR POSIX were also skipped. So here we are saying, hey, this is our review we're going to suggest that this should be deleted. But the suggestion for the deletion won't actually be honored here. The only way it will be deleted is if it's processed again and the skip change log is is honored. Oh, makes sense. So, so now let's continue though because there's more for us to review. Okay, so this one says, alright, there's a request for enhancement. And it's registered dependency class loader in the default plugin strategy as. So here it is. It says Jenkins 23784 load classes from plugins in parallel. Let's look at that one and see if we can. Usually we wouldn't start with the bug ID. So let's see if we can find that whole request and understand if it's that that formatting is something we can fix or not. Okay, here it is so proposed change log entries includes the jang the bug ID and I think we want to edit that and take out the bug ID like that load classes from plugins in parallel for faster start. Okay, so that should get rid of this text. And there will still be a hyperlink to it for because of that issue link. Yes. All right, now. Okay, this next one. The 5697 graphs can now scale correctly to retina screens. So retina I believe is a is an Apple trademark thing. And I'm not sure I want to just limit it to retina retina display. Here we go. Brand name used by Apple for its series of IPS higher pixel density. Okay. Yes, so is it it is a trademark. Okay, so I'm not sure we want the word retina there. If we can avoid it. I would rather prefer high DPI or high dots per inch or high resolution. What do you think would that be okay. High DPI ending. Okay. All right, so Wow, graph in a PR. Yeah, isn't that and I like that I love it when people put pictures in because it helps me see things. Oh, now I understand what you're saying. Exactly. So it's just it's it's much, much better when that kind of thing is done. Okay, so, but I think what we saw graphs now scale correctly to high resolution screens, or on. Is that okay as just as phrasing. I think yes. Oh, full stop. Yes, thank you. Good catch. Absolutely. Okay, so we phrase that now it's an RFE. Okay, and then the next is a bug. And here all we're missing is the full stop at the end. Anything else you see that we need to fix on that one. Okay, so now. Let's go to that one. Okay, edit. Then there's this bug agent to controller security kill switch. And the checkbox labeled enable agent to controller access control in the form would always start out as disabled. Then cause a configuration change. Oh yes. Okay. I think in the past we've used regression in. Yeah, we put the full stop at the end after the regression in. Right. Yes, I wouldn't ask you the same thing. Yeah, so. Okay, so now let's, let's go find that one and we'll make that minor change. Okay. All right, so the checkbox labeled enable agent to controller here we put the full stop there and take it from there. Okay, so the checkbox labeled enable agent to controller access control in the form configure global security would always start out as disabled submitting the form without checking it would then cause a configuration change. Okay, so the checkbox labeled enable agent to submitting the form then cause. Okay, good. So we've fixed we've modified that. Okay, I think we've touched and then there are these. Okay, so the checkbox labeled enable agent to submitting the form then cause. Okay, good. So we've fixed we've modified that. Okay, I think we've touched and then there are these others that are comments. Add no annotations yeah use try with resources fix a typo in a JS file. Okay that one. I'm a little surprised it didn't get any comment in. Oh okay this is just removing dead code the users wouldn't care good. Alright, okay. These are library updates. And this one is. Now I don't know if we need that one to have a comment but I don't think so so here this one. The other one is. We had a regression that was never released. That came because inadvertently Jenkins got new got copies of some jar files inside of it that shouldn't have been there. Okay. Alright, so I think, I think we're ready. We need to submit this review so. So, go ahead. Are you able to hear me. I am. Yes, go ahead. Hello. Yes, go ahead. So, I did the help of the Docker I was able to get the change change log like the manual that we used to do before so in that change for this entry the last one that we just edited so it says the it's a major bug and now here it says it's a bug. Oh, interesting okay so so in the. This one right here. This one the this the check box labeled enable agent yes this one. So here the type was major bug in the manual change look, but here it's just bug. Oh, oh okay so what's dear okay so that that is a mistake then in wonder what the difference is that causes this one to be incur to not be correctly flagged as a major bug very good catch. Okay, so why even have a label is bug right. It is bug but I don't remember if there is a label for major bug I think the reason you're seeing it as major bug is because it's a regression fix. And I believe the tool biases towards if it's a regression fix it must be a major bug. Is there a major bug. Oh, there is and Daniel did not choose it so so that that's a difference between the tool that you've that the tool that we usually run and the automation and I think the automation has the preferred result. But let's let's make a note of that for discussion. Sure. So, the tool that run to generate the change log would list this as a major bug. We think that is because it is labeled bug and regression fix Daniel did not label it major bug. So we assume it is better to list it as a bug it is more accurate than as a major bug. No change in the suggestion. Does that make sense. Yes, it makes sense. Okay. Anything else we need to note here. No, it looks good now. Okay, so I am going to commit this suggestion just to just to remind us that remove skipped change log entry. No, no, let's not do it because really we we want the machinery to do it. And so if I do it, and it happens to get through that's a bad thing. Yes, so let's let's leave it out. All right. Okay. So we've got this set that we're ready to with our updates I think we're ready to approve it. And I may have already done the approve. Come on. No, it's, yeah, so it's already been approved good. All right. Excellent. Thank you. So, so we've got questions to Tim around depend about pull requests and where the developer PR appeared. Yes. Maybe, maybe the answer should be should dependencies default to skip change log. No, no, because really, then we take it away and we have to have a way to then tag something including change like I don't want that. Okay, so. All right. Anything else on our review of the change log. Yes, last question is, so let's say next week, before this meeting, a half an hour before this meeting starts, I want to work on the PR. I want to work on the change log. So I'll be following the same steps right going through the PRs that first of all going through the change log that the bot has generated. And then look at the PRs and if there's any problem in a PR in terms of any grammatical mistake or anything so I would go to the PR and then add a comment for now. And then someone like you or anyone else would update the PR suggested by me before looking at if my solution is right or not. And then that will be done for that entry because then the bot will be able to write it right the change log correctly. Are those the steps. Yes, that would be that would be a great way to do it then in the meeting. And then we copy those, those comments into the text, and then we may want to see if we can negotiate with with Tim or someone else to allow comments to be part of the, the automated change like processing. Because if we could do that then your comments could be used to fix fix specific problems in like the ones in this one. Right. Right. So I would not need to tag. Right. Yeah, you wouldn't need to tag them we would just discuss them in the meeting. Sure. Okay, good. Very good. All right. Thank you very much. Thanks for the same thanks for the review process I think we're ready. Yes, thank you. Okay, so now oh actually I wanted to look at it and see how it looks just in case there's any surprise. Because sometimes I'm embarrassed to realize, wow, if I just looked at that once I would have known that there were terrible disastrous things that needed to be needed our attention. Okay, so that was not what. Okay, so let's look at the change. Oh, we need 2.310. Okay, let's try that again. 2.310. Here's the one that we fixed by skipping the change log. Here's the one that we fixed by modifying the pull request. And here's the one that we changed for okay good so. This one I made a change in it, and that arrow renders correctly. I think I and we, we don't see the hard stops the full stops on those lines but we added those. So the layout no no disastrous surprises in this layout as far as I can tell. Yes. Great. So D Raj, in terms of your idea how do we get the knowledge how do we get the information from you into into the pull request description. I think you've got the right idea you just add a comment here for now because that you can do. If that comment if that comment then I can go no not here sorry you add a comment into the specific pull request and say hey I think the change log should be this paste that text and then we can go in and copy that from there and paste it up here as needed during the meeting. Sure. Definitely. Excellent. Thanks for being part of this experience and automation. Thank you very much. My pleasure. Okay, so we've got Java 11 in default Docker images this continues changes are continuing in inbound agents. The SAGE agents, and what else. Oh and the Alpine images. So Alpine images Alpine Java distribution being discussed adopt open JDK, and the likely result will be that we'll use the Alpine JDK in Alpine. See the, there's a pull request pending on it so that the Alpine operating system is a unique thing and adopt adopt slash adopt Timmer and doesn't actually support it does not building a muscle based JDK for Alpine. JDK 8 or 11. Right, there we go. So we're, we're behind schedule on our changes we'd wanted to get those done by end of August, and didn't didn't make it that far but we're making progress. Any questions on Jenkins and in Java 11 and default Docker images. Nothing as of now. Okay, then the inclusive naming improvements this one's got some some new information. Test automated test failures in many plugins, because they, the tests often assume master as a label on the built in node. Basil Crow, and Daniel Beck proposing pull requests to fix them. And they've done a really great job basil in particular has done an awesome job with this. And in terms of the upgrade guide, that's going to need likely needs careful phrasing and detailed instructions. So you and I will need to work on that. There's, oh, that's right. That's right. There's also proposed to delay 2.303.2 release another two weeks. Yes, I saw messages on IR she bought this. Yes. And I like that because it gets it after DevOps world then. Great. Okay. So it's written down in the, our Jenkins community that portal that Jenkins, this one contributed something to be on October 2. Right and DevOps starts at September 29. It's like a week long summit. It's not quite so let's let's describe that so DevOps world is September 28 through 30th. Then there'll be a quiet period where those of us who are part of DevOps will get some sleep. And then we'll do the contributor summit just Saturday October 2. Oh, oh, okay. So this is during, I believe it's USC's coast hours. And what we realized is that after three days of conferences during USC's coast hours to immediately start something during India standard time hours early morning or midday will just destroy us we won't be able to stay awake. And so what we've done is given ourselves some time to sleep. Good for you. No make sense. Yes. Yeah, and now still, still we need need topic proposals. Discussions, etc. And so don't be shy about offering proposals there in that community Jenkins.io thread. Yeah, this looks good. We're getting good feedback on it very good. Anything else we need to discuss today dear Ash. Yes, so maybe in future sometime we can also, what do you think about working on the automated this change log automations script. So we can improve the ordering of the developer tags and the to do types, something like that. I think Tim would love it. So we take a look at it now we've got four minutes left. Let's take a look at it now and see, see if we could do something with it ourselves. Okay now I have to go find the change log automation script and I think that will be mentioned in the automatic change log that you have opened I think. Oh is it. Yes, third tab. Good. Alright, so let's go find that here. In the description you can see this created by. Oh created by okay got it. Here we go. Alright. Okay, so what we have here is some Ruby code. So. Oh this will be such fun. I don't do read Ruby very often at all. Great. So, so let's make it big enough that my eyes can read it. Okay, so it says for each line. Look for the show. Oh message issue. If it's got a pull request. If the commit string, if the curl call is the successful. Comment string, parse the commit string. Extract the labels from the pull request JSON. Okay so we've got an array of labels. We've got the commits as an extractive is JSON. All right now. Okay so it says, if by if we don't match anything else we're going to make our entry type of type be to do. If the labels have. So if we wanted to do. If we wanted to do dependencies we could put an entry here a line here and say, if entry type is, if labels includes dependencies we could make it an RFE or a bug or whatever. Oh look and here's the answer to our earlier question. Specifically, this thing says, if it's a regression fix we're just going to call it a bug, not always call it a major bug and I think if we were to look at the history of this thing, we would get, yes here we go. Oleg changed it, do not consider regressions as a major bug by default. So, so we see that he intentionally switched it this way. Oh, good, cool, that's very good. Okay so we've, we've learned something by our review already. Yes. If we wanted to do a major bug then the person has to label it as major bug, right, there's no any other way. That is correct. If you want to call it a major bug, you must explicitly say it's a major bug. Now it says fetch the categories by labels. And if we don't have a category say it's to do. Yeah, what I don't see is, is how, how it does the ordering. But I apologize, we've reached the point where I have to end for today. Right, so just one question. Yes. Quick question, so I tried to run this script by myself but I was having a problem of GitHub authentication something. I'm not sure what was the reason behind that. Like do I need to know some credentials for specific to get Jenkins repository in order to run this script. I would, I would bet that you do because I suspect some of these, some of these queries like this one for instance, would require that you be authenticated or possibly that you be authenticated and be a member of the correct group. Oh, so you may, you may have to in order to successfully use it, you may have to be part of a privileged group. Okay, because the team says to me if I can do some changes and improve this script I can. So I tried to do it that day but I was not able to run it due to the same thing. Well, and it's worth in that pull request asking hey, is there is there some permission needed because I would assume that there's a thing here. Oh yes, here it is. Right, exactly. And you provided the answer to this right you gave it a so curl if we look at curl underscore off. I'll bet it's used. Yeah. So the, the argument to minus you of curl which I believe is username colon, authentic access token. Yes. Right, but when you did that, it did not it still did not give you the answers you were hoping for. Yes, exactly. So it was a replacing it with nobody slash something something. Oh, interesting. It's hard to put it somewhere there. Nobody's something like that. Okay, no way to say curl underscore off. GitHub. See, I would have expected if you define GitHub underscore off to be dirage Jota colon, and then a personal access token generated for this purpose, it should authenticate you correctly as you. Now I haven't tried it though, but that I think it's worth trying because I think this must be passed in in the case where it's called from the, from the job that's running it. Okay. So what I'll do is requested by you, I'll just put a comment on that specific PR to ask if I need any specific tokens. Right. Absolutely or if you need specific permissions, because it may be difficult to do that, the answer is as a, as a pull request submitter, you don't have enough, enough permissions, whereas Tim as a core maintainer does. So, so that I think it's a good question to ask. Okay, I'll do that. And if I have any problem, then we can also discuss it in the next meeting. Great topic for next meeting. Thanks to you, Raj. Yes. Thanks a lot. All right. Bye. Thank you.