Open Week -- Adopting a Package and being an upstream contact -- Jorge Castro and Sense Hofstede -- Tue, May 4
(02:01:07 PM) akgraner: qense and jcastro are up next the session will begin in about two minutes... (02:01:34 PM) akgraner: They will be going over - Adopting a Package and being an upstream contact (02:02:14 PM) akgraner: so stretch, grab something to drink and we'll get started in just a min or two :-) (02:02:42 PM) qense: oh my god, they're shooting at the dam! (02:02:59 PM) akgraner: welcome qense! (02:03:14 PM) akgraner: you've been introduced the floor is all yours! (02:03:39 PM) qense: a bit an unorthodox introduction (02:04:04 PM) akgraner: :-) (02:04:22 PM) qense: apologises, I'm a bit from my apropos, it just looked like someone starting shooting in the crowd at the NAtional Monument in Amsterdam, live on television (02:04:27 PM) qense: Seems alrgith now, lets start (02:04:34 PM) qense: Hello everyone, I'm Sense Hofstede -- https://launchpad.net/~qense -- and this session will be all about 'adopting a package and being an upstream contact', or Adopt-a-Package and Adopt-an-Upstream. (02:04:57 PM) qense: Unfortunately Jorge Castro (jcastro) is too busy to attend this session so I'll be doing this alone. (02:05:20 PM) qense: Lets first explain to you what the project actually is. (02:05:32 PM) qense: There are different ways of contributing to a distribution. For example, you could cherry-pick the tasks you'd like to work on, or you could choose to focus on a specific subset of the available tasks. (02:05:49 PM) qense: Everyone has a different approach that works best for her or him. However, you do work more efficiently and effectively when you focus on a clearly bounded area. (02:06:04 PM) qense: This is what Adopt-an-Upstream and Adopt-a-Package are: you focus on a project/application you like and make sure it rocks in Ubuntu! (02:06:31 PM) qense: Smaller applications can be adopted by a single person, but if the project's large or when it gets a lot of bug reports it quickly becomes too much to do on your own. In that case you should consider teaming up with a group of like-minded people and adopt as a group. (02:06:51 PM) qense: Now, it is quite some work to focus on all facets of a project's existence in Ubuntu -- I'd say you're no longer focusing then -- so you split the work up in different tasks. (02:07:21 PM) qense: When you're sure you want to adopt something and have decided what that something would be then it's time to start thinking which part of the work you want to adopt. (02:08:17 PM) qense: Because adoption of an upstream encompasses the following points: (02:08:23 PM) qense: Communication (02:08:30 PM) qense: both communicating Ubuntu schedules and announcements of importance to the upstream project to the upstream project, and communicating the project's schedules and announcement to the developers in Ubuntu that should know about it. (02:08:41 PM) qense: Bug triaging or Adopt-a-Package (02:08:56 PM) qense: That is: you work on triaging -- processing -- the bugs reported against the adopted project. More on this later. (02:09:03 PM) qense: Packaging (02:09:23 PM) qense: Making sure the latest version of the package is available in Ubuntu, either by merging or syncing it from Debian, or by packaging it yourself. (02:09:30 PM) qense: Forwarding patches upstream (02:09:38 PM) qense: For some bugs there are fixes available that Ubuntu maintains as patches. It's the best for everyone if those patches are also sent upstream so they can be included in the code. (02:09:47 PM) qense: You've been able to hear more about that in the previous session. (02:09:58 PM) qense: and finally: Representing the project in Ubuntu and Ubuntu upstream (02:10:11 PM) qense: This means being the contact person of that project in Ubuntu and the Ubuntu contact person upstream. (02:10:40 PM) qense: That sure are many things to do! (02:11:20 PM) qense: Lets talk a bit more about how we could do that, (02:11:30 PM) qense: It can happen that someone else is already working on one or more of the tasks I mentioned. (02:12:04 PM) qense: If someone or a group of people have already adopted a project then you should try to cooperate with them. (02:12:35 PM) qense: Some people have formed a team for adopting a project. (02:12:46 PM) qense: An example of this is the MozillaTeam: https://wiki.ubuntu.com/MozillaTeam (02:12:53 PM) qense: Although that team was created before Adopt-an-Upstream was started it is still a very good example for people that actually want to adopt a package. (02:13:09 PM) qense: Any questions so far? (02:14:56 PM) qense: OK, lets take a closer look at connecting with the upstream project. (02:15:03 PM) qense: Because that's the most important thing of it all and that's what Adopt-an-UPSTREAM is actually about. (02:15:21 PM) qense: First of all, please keep in mind that the upstreams are very important to Ubuntu -- without them we'd barely have anything in the repositories and nothing to run what we would have -- so please try treat them respectfully. (02:15:32 PM) qense: Although I'm sure most of you will. :) (02:15:41 PM) qense: There are a few actions you can take to make sure you don't miss anything you need to know. (02:16:10 PM) qense: First of all, if you're often on IRC, it is strongly advised to join the project's channel as well; this makes it easier for the upstream developers to contact you when they need to ask you something and allows you to quickly ask them your questions. (02:16:32 PM) qense: It's also a good idea to subscribe to the project's mailing list, or -- when there are multiple -- to the list that you'll most likely find the discussions on you want to follow. (02:16:48 PM) qense: Some projects also have mailing lists that are only used for sending release announcements, often with the release notes. (02:16:56 PM) qense: That is a valuable source of information and something you should pass on to the affected Ubuntu developers if it is interesting for Ubuntu. (02:17:41 PM) ClassBot: drubin asked: Do you have to be an upstream dev to be apart of this? Also is there a formal process to be included on bugs related to that package? (02:18:56 PM) qense: drubin: You don't have to be an upstream developer in order to contribute. Experience from upstream is valuable, but it's certainly not required. It is helpful, though, if you have some experience with the specific area you're adopting. (02:19:24 PM) qense: drubin: If you want to be subscribed to all bugs of a certain package you can go to the bug overview page of that package and subscribe there. (02:20:18 PM) qense: Say, e.g., you want to get mail for all bugs reported against Nautilus on Launchpad you go to <https://bugs.launchpad.net/ubuntu/+source/nautilus>. You see a link at the left "Subscribe to bug mail". Press that and you'll get mail fora ll bug reports. (02:20:43 PM) qense: Be careful though, some packages get a lot of mail and you don't want your inbox overflowing with bug mail. (02:20:54 PM) qense: For upstream bug trackers it differs per tracker. (02:21:16 PM) qense: Lets continue. (02:21:18 PM) qense: If the upstream project chooses to make a radical change you should warn Ubuntu on time. (02:21:40 PM) qense: Example given: during the Ubuntu Developer Summit a collaborative text editor called 'Gobby' is used. A release or two ago, before the UDS for Ubuntu 10.04 Lucid Lynx, a new version was released which changed the protocol. (02:21:56 PM) qense: In order to make sure that everyone, even those that don't use the latest release of Ubuntu, can participate Ubuntu decided to stick to the old protocol. (02:22:07 PM) qense: The new release of Gobby was packaged separately and the previous Gobby release was left in the repositories so it could be used during the UDS. (02:22:54 PM) qense: This is something upstream adopters could help with. (02:23:13 PM) qense: On the other hand, of course, when large changes are made in Ubuntu -- like the Application Indicator that were added to Ubuntu Lucid -- it is the task of the adopter to notify upstream and cooperate with them in adding support for it to the project. (02:23:28 PM) qense: This could be done by helping an upstream developers by pointing her or him to the right documentation, wiki pages, mailing lists and IRC channels, but also by helping an Ubuntu contributor with writing a patch and making sure that patch gets sent upstream. (02:23:59 PM) qense: You're really the bridge between two communities. (02:24:08 PM) qense: What's also an important task of making sure no data valuable to the upstream project remains locked away in Ubuntu is forwarding bugs upstream. (02:24:13 PM) qense: This brings us to our next stop: Adopt-a-Package. (02:24:35 PM) qense: But first, if you have a question, please ask in #ubuntu-classroom-chat and prefix it with QUESTION:. (02:25:45 PM) huntlogger is now known as apachelogger (02:25:52 PM) qense: I heard someone in the -chat channel asking whether he could still help when the package was already being looked after by someone else. That's no problem, you're help is always appreciated. Just contact the people working on it. (02:26:19 PM) qense: drub asked: QUESTION: What is the best process to go through when you find a issue between ubuntu and upstream project? (02:26:27 PM) qense: drubin (02:26:45 PM) qense: It depends on the issue. What kind of issue do you mean, drubin? (02:27:37 PM) qense: <drubin> qense: lets take a compatiblity issue. I know for simply new versions you would file a merge request (02:28:39 PM) qense: It's hard to really give an answer to this unspecific question, but a general answer would be: communication. (02:29:07 PM) qense: Always communicate, talk with upstream, talk with Ubuntu-people and try to find solutions. (02:29:09 PM) qense: Keep talking. (02:29:22 PM) qense: Now, lets get on with Adopt-a-Package. (02:30:04 PM) qense: This is more separate from Adopt-an-Upstream, but it could perfectly be a part of an Adoption. (02:30:17 PM) qense: General information about Adopt-an-Upstream page can be found at https://wiki.ubuntu.com/Upstream/Adopt (02:30:21 PM) qense: However, Adopt-a-Package has a wiki page of its own, at https://wiki.ubuntu.com/BugSquad/AdoptPackage (02:30:28 PM) qense: As you can see on that page there are already quite a few packages adopted by bug triagers that aren't adopted 'in general'. (02:30:42 PM) qense: Because Adopt-a-Package is about looking after bugs. (02:31:29 PM) qense: The wiki pages are a good place to look for ideas when you want to adopt something and it is something you should look at so you won't do duplicate work. (02:31:54 PM) qense: When dealing with projects that have many bugs reported against them on Launchpad it's often wise to divide the tasks and let one go through the newly reported bugs, whereas the other is responsible for forwarding bugs upstream. (02:33:26 PM) qense: To give people an idea how they could organise their 'adoption team' I've created a wiki page that gives a suggestion for a team structure. (02:33:45 PM) qense: You can find it at <https://wiki.ubuntu.com/BugSquad/AdoptionTeam>. (02:34:29 PM) qense: As you can see the bugs are divided themselves in different tasks because the larger packages have so many bug reports that you shouldn't only divide the different tasks like packaging and bug triaging, but also the bug triaging itself. (02:34:38 PM) qense: It's undoable to triage all the bugs by yourselves. (02:35:37 PM) qense: OK, now I would like to know whom of you have already adopted a package or an upstream, who wants to adopt a package or an upstream or if you have any questions. (02:35:47 PM) qense: Please tell! (02:36:31 PM) qense: vocx says it's too much work. (02:36:44 PM) qense: Well, it sure is a lot of work if you do everything on your own. (02:36:59 PM) qense: That's why you should form a group and work together! (02:37:26 PM) qense: <vocx> Can I just baby-sit it until it's 16? (02:37:52 PM) qense: vocx: Of course you don't have to do all the work at once. Even if you do just a little bit we're already very thankful. (02:37:56 PM) qense: Every single contribution is welcome. (02:38:04 PM) qense: <charlie-tca> I have adopted a couple of packages (02:38:10 PM) qense: <charlie-tca> I also work with xfce, abiword, and gnumeric upstreams (02:38:27 PM) qense: Good to hear you're working with the upstreams, that's very important. (02:38:50 PM) qense: That is a part of Adopt-an-Upstream: making sure Ubuntu goes well with upstreams. (02:39:17 PM) qense: Part of this could be writing documentation or wiki pages containing information for upstreams about Ubuntu or for Ubuntu about upstreams. (02:39:36 PM) qense: A good example of such a thing is the Banshee Workspace: <https://wiki.ubuntu.com/Upstream/Banshee> (02:39:39 PM) qense: Please take a look at it. (02:39:50 PM) qense: At the wiki-page you can see a lot of links. (02:40:31 PM) qense: When you're familiar with a project you often know where you can find what you need. But if you're new then such an overview page can help you a lot with finding what you need. (02:40:52 PM) qense: vocx asked: "What if upstream doesn't respond? I mean, come on, upstream! I made two patches using gtksourceview and gtksourceview2 and you are still using TexTView, what gives? Wake up." (02:41:12 PM) qense: You can only do so much. (02:41:41 PM) qense: You cannot force projects to accept your work, but you can make it as easy as possible for them to accept your work. (02:41:58 PM) qense: This means: following their style guidelines, their freezes and their patch-submitting process. (02:42:22 PM) qense: Things like the Banshee workspace I mentioned earlier can help a lot with this because they link to the vital information you need in order to do this. (02:42:37 PM) ClassBot: sebsebseb asked: What do you think about Ubuntu basically forking Gnome 2, because of all these non upstream edits, that are being introduced? Me menu, and so on. (02:44:37 PM) qense: sebsebseb: I, personally, feel that it is not necessary bad to do this. Projects are entities of their own and they have their own ways and methods for changing things. If you're an outsider with great ideas -- Canonical wants to reform the Linux desktop but it does not consist of die-hard GNOME community members -- it is hard to get listened to. This, of course, is not necessarily a bad thing. However, if you want to still change the desktop (02:44:37 PM) qense: you then better change it yourself. (02:44:59 PM) qense: The fact that it diverges from upstream is not necessarily bad because you can later, if upstream likes it, submit the work upstream. (02:45:32 PM) qense: If your work is better than the work of upstream it might drive them to improve. (02:45:40 PM) qense: If your work is worse then you'll change back soon enough. (02:45:51 PM) ClassBot: bruce89 asked: must translations be forked? (02:46:26 PM) qense: bruce89: Preferably not. You want to get advantage of the wonderful translation work that's done upstream and you want them to profit from their work. (02:48:02 PM) qense: A note to those of you interested in working on the bugs of a certain application: (02:49:10 PM) qense: If you have no prior experience with triaging (do you all know what triaging means?) please don't rush in right away and adopt OpenOffice. Instead consider asking for a mentor -- <https://wiki.ubuntu.com/BugSquad/Mentors> -- and if you want to adopt something, start with a small package. (02:50:32 PM) qense: sebsebseb: However, translations are mostly dealt with by the translation teams themselves and their workflow for working with upstream differs per translation team. If you are interested in helping out with translating, please consider joining the translators of your langauge. (02:52:07 PM) qense: I have run out of words. If you have a question, please ask and I'll be glad to help out. After this session you could also try on IRC in #ubuntu-bugs or in #ubuntu-devel. Or, if you really feel like, you can always mail me at qense AT ubuntu DOT com (02:52:20 PM) ClassBot: bruce89 asked: in the case Ubuntu were to basically fork GNOME 2.xx, who would benefit more: GNOME, Ubuntu or the users? (02:52:35 PM) qense: bruce89: I hope the user, because that's who it's all about in the end, isn't it? (02:54:47 PM) qense: Now we have some time left I do want to focus your attention on our most important upstream: Debian. (02:54:58 PM) qense: It might not always be the most visible one, but we owe Debian a lot. (02:55:19 PM) qense: A lot of our packages are taken from Debian and we wouldn't be able to offer such a great distribution without the great work of the Debian developers. (02:55:53 PM) qense: If you want to do something back for them you could focus on forwarding patches or bugs to Debian or help Debian out with packaging. (02:56:22 PM) qense: Because: if you help Debian you help Ubuntu. (03:00:12 PM) akgraner: Thanks qense for a great session!