[00:51:42] So five bugs to file, I think: [00:51:50] * minor edit checkbox on create [00:52:01] * watch this page not respecting watchlist prefs on create [00:52:09] and in general, BTW [00:52:10] * "save page" button doesn't actually save page [00:52:27] * no edit summary previews [00:52:33] (There is a pref for "watch everything I edit", possibly involving minor edits, I forget) [00:53:04] Yeah. [00:53:17] * weird location of "create" tab (in Monobook?) [00:54:25] Right [00:54:43] Is there some sort of prize for filing the most VE bugs? [00:54:47] haha [00:54:53] Brooke: Yes, but I won it years ago. ;-) [00:55:01] Tssss. [00:55:16] Brooke: Also, the "save page" button /does/ save the page on second click. [00:55:20] Brooke: We send you an invoice to pay for the salaries of three new developers? :) [00:55:27] * marktraceur kids [00:55:29] James_F: Right. But it's a bit weird. [00:55:44] Given how "Save page" has been implemented for the past decade. [00:55:54] No idea how you solve that problem, though. [00:56:14] Brooke: Tough. :-) [00:56:14] marktraceur: Hah. [00:56:47] James_F: Tough --> tough luck; or tough --> difficult bug to solve? [00:59:05] Brooke: The former; VE is going to change a lot of editing behaviours and paradigms, let's not get het up about each one. [01:00:11] I may file it anyway. It can be marked wontfix as appropriate. Outside of MediaWiki/VE behavior, it's generically kind of misleading. [01:00:27] I guess Microsoft Word does something similar, kind of. [01:00:36] You get a "what's the file name going to be" pop-up. [01:01:03] This is a bit different, though. Usually save means... save. [01:01:57] We could make the caption "Save page ..." I suppose? Although that convention is generally applied to menu items, not buttons [01:02:21] Yeah, that might work. [01:02:25] I like that. [01:08:21] Brooke: "Git review" is your friend. :-) [01:08:58] I'm not sure what that means. [01:09:26] RoanKattouw: Links use underscores? [01:09:44] And it's "#foo", not "# foo"? [01:11:59] Yeah that's the way Parsoid normalizes things right now [01:12:04] However [01:12:19] I spent about a week on preserving existing whitespace [01:12:40] Such that if you have == Foo == or * Foo or whatever, then change "Foo" to "Bar", it'll preserve the existing spacing [01:13:00] (at least in most cases; you can probably find ways to break it by performing transactions that are convoluted enough) [01:13:26] but the goal was for simple typo fixes not to trigger whitespace reformatting, and for a null change to round-trip cleanly [01:13:55] * Brooke nods. [01:16:45] TrevorParscal: I can haz moar review? [01:22:14] TrevorParscal: nm, James +2ed one rev and I +2ed another [07:21:44] Nikerabbit: is this correct? core/tests/phpunit/includes/libs/GenericArrayObjectTest.php: try { $list->offsetUnset( 'sdfsedtgsrdysftu' ); } catch ( \Exception $exception ){} [07:29:23] Nemo_bis: correct in which sense? [07:32:58] Nikerabbit: in the sense that it doesn't harm [07:33:10] aka cause https://bugzilla.wikimedia.org/show_bug.cgi?id=41491 [07:39:33] hi andre__ [07:39:45] Nemo_bis: i have no idea [07:40:13] Nikerabbit: ok :) [07:41:06] Nikerabbit: because you know, I was in a very https://xkcd.com/979/ -like mood after searching more info on that error [07:42:07] wow xkcd broken [07:42:17] Uncaught TypeError: Cannot call method 'attachAutoCompletion' of undefined [07:43:39] :/ [07:43:49] Nikerabbit: what do you have today, everything goes wrong [07:45:24] not everything [07:47:07] oh, nice to know [09:31:50] New patchset: Hashar; "tweak config files based on Jenkins Job Builder output" [integration/jenkins] (zuul) - https://gerrit.wikimedia.org/r/33539 [15:35:31] New patchset: Hashar; "Zuul jobs as generated by Jenkins Job Builder" [integration/jenkins] (zuul) - https://gerrit.wikimedia.org/r/33580 [19:04:19] hi ^demon you did the work to mirror the gerrit project on github, yes? [19:04:31] <^demon> Yes. [19:05:04] ^demon: absolutely no hurry, but at some point could we get the /qa/browsertests project also mirrored on github? [19:05:45] I meant to mention that earlier, but it's not a high priority. I'm about to check in a new test today, and it crossed my mind [19:06:42] <^demon> https://github.com/wikimedia/qa-browsertests [19:06:43] <^demon> Done. [19:06:53] ^demon: that was fast, thanks! [19:06:56] <^demon> You're welcome. [19:07:33] * chrismcmahon goes back to finishing this test [19:07:35] ^demon: wow, I'm impressed at that turnaround time [19:08:17] <^demon> It's pretty straightforward to do. Just have to create the repo on the github end and then add mediawiki-replication to READ permissions for the repo. [19:08:25] <^demon> (on our end) [20:22:38] ok, 10 min till the hangout/YouTube tech chat [20:30:11] sumanah: is the youtube set up? [20:30:44] zeljkof: I don't think it is yet, no [20:31:39] sumanah: it will get posted here, right? [20:31:46] Yes, it will [20:31:58] sumanah: ok, waiting :) [20:32:05] I don't see Rob or Chip here ... oh there he is [20:33:11] youtube stream url is still TBA on the wiki page [20:33:19] so...for now, ping me for an invite. when cndiv joins, ping him [20:35:13] cndiv, hi, can we have a youtube link please? [20:35:22] Thehelpfulone: Working on it. :-) [20:35:35] OK, I have a riddle while we wait [20:35:42] what's the connection between the words "abjurer" and "nowhere"? [20:36:01] Hello. [20:36:14] (hi Dereckson) [20:36:28] restarting hangout...standby [20:37:09] Oh I've found out the connection, but it's because I did geocaching all the last week-end. [20:37:09] sumanah, that sounds like more of a joke than a riddle, hmmm [20:37:21] Thehelpfulone: nope, there is a logical relation between the two words [20:37:54] (as a reminder - today's tech talk will include saper talking about Git and Gerrit and workflow - https://www.mediawiki.org/wiki/Meetings/2012-11-15 has some details about what else people might want to talk about) [20:39:08] Hello all, I will be your host today for the Tech Talk. If you'd like to watch, please visit the stream URL at http://youtu.be/lu-YHnJ0SK0. If you would like to partisipate, please message me here. Thanks! [20:39:13] This is Chip, btw. [20:39:17] Thanks Chip [20:39:30] ^ That was Sumanah, btw. [20:40:15] ok, the answer: you can rot13 "nowhere" to "abjurer" and vice versa [20:40:27] neat! [20:40:29] saper: could you private message cndiv your Google account? [20:40:45] (rot13 is the algo used in geocaching to crypt the hints) [20:40:50] cndiv: youtube says: "This live event will begin in a few moments. Please wait." [20:41:02] robla: nevermind998@gmail.com [20:41:11] it's a throwaway thing ;) [20:41:18] cndiv: ^ [20:41:20] cndiv: ^^ [20:42:00] According to Wikipedia, "nowhere/abjurer" is the longest one possible in English [20:42:02] It's alive. [20:42:02] "there is also the 7-letter pair Chechen and purpura." [20:42:24] youtube working [20:43:11] hey saper, did you see the invite? [20:43:41] youtube works for me too :) [20:43:44] try this link if not https://plus.google.com/hangouts/_/ca45a7a33786fec9307e31c674756775aece5b49# [20:43:50] that will make you JOIN the hangout, not the stream link [20:44:15] let me encode that for you in double-rot13 [20:44:28] ah cool:) [20:44:34] GitBlit! [20:44:58] i just joined - who's speaking right now? [20:45:04] MatmaRex: Rob Lanphier [20:45:11] thanks, sumanah [20:45:18] What do people specifically want to learn today from Marcin (saper)? [20:45:41] anyone know what happened to saper? Rob is stalling as best he can :-) [20:46:00] while we're waiting: gerrit atom feeds! http://schmerrit.wmflabs.org/gerrit/changes/mediawiki/core.atom [20:46:14] http://schmerrit.wmflabs.org/gerrit/changes/{repository}.atom [20:46:46] is anyone interested in me mentioning a few highlights of Gerrit search https://gerrit.wikimedia.org/r/Documentation/user-search.html that make life easier? [20:46:48] youtube just fine over mi-fi. yay [20:47:18] cndiv: I'm here [20:50:31] It is weird to hear the voiceover while looking at circuit boards [20:50:38] as though we are hearing a voice from the machine [20:51:14] saper: can you share screen? from the machine we are looking right now, if possible :) [20:52:18] Marcin is sharing a Google Doc with the hangout [20:52:26] with slides [20:52:43] https://bugzilla.wikimedia.org/show_bug.cgi?id=36437 has links to a bunch of tips and tricks links and I would welcome consolidation :) [20:52:46] gerrit questions: (how) can a team review and merge and +2 changes to a feature branch? [20:52:57] sumanah: is it visible only for hangout users? or youtube too? [20:53:11] zeljkof: Marcin is going to be screensharing [20:53:24] sumanah: great [20:53:43] https://docs.google.com/document/d/1M601zfm40O7R69Q1Em7OAxvoay-BVKc_rxb9V95A_Po/edit [20:55:54] first: Patch based email workflow [20:55:54] Proposed change does not exit in the upstream git repository until approved and applied. [20:56:17] developer pulls from master, uses git send-patch & git am (that is, git amend) to merge. [20:56:38] gerrit question: so the cauliflower process makes me `commit --amend` to come up with a new patch. But locally I have a sequence of commits advancing that feature. How do I collapse these back into a new patch NNN for gerrit review -R? `git squash --interactive pick merge swirl` ? :) [20:56:43] Marcin brings this up to discuss the possibility of using this for merging patches somewhat more automatically from Bugzilla [20:57:22] sumanah: Maybe submitting patches automatically in Gerrit from Bugzilla? [20:58:09] Yeah [20:59:37] "Gerrit�s one commit at the time: [20:59:38] Gerrit does not really like multiple dependent commits to be reviewed. [20:59:38] While dependencies are supported, it�s easiest to master your change [20:59:38] as a single �prefect� commit that matures with time as review progresses." [20:59:47] did saper mean "prefect" or "perfect"? :) [21:00:01] Ford Prefect! [21:01:28] Fnord Perfect! [21:04:19] if you do multiple commits on your local clone and then "git review" once you will get multiple patch sets in gerrit which are all dependent on the one before it. so some advice to always "reset" in between commits to avoid having those dependencies (unless it really makes sense to have them depending on the content) [21:04:59] how to combine "willow tree" style & �Cauliflower� / Gerrit�s one commit at the time: that's what saper is thinking about [21:05:51] saper: s page asks: gerrit questions: (how) can a team review and merge and +2 changes to a feature branch? [21:06:00] saper: spagewmf asks: gerrit question: so the cauliflower process makes me `commit --amend` to come up with a new patch. But locally I have a sequence of commits advancing that feature. How do I collapse these back into a new patch NNN for gerrit review -R? `git squash --interactive pick merge swirl` ? :) [21:06:15] mutante: http://www.mediawiki.org/wiki/Talk:Git/Workflow#Helpful_script.2C_switch_between_branches_with_intermediate_rebase_18062 may be helpful [21:06:56] spagewmf: if i may answer - you can copy the commit-id line to any commit, and gerrit will treat it as another patchset for the given changeset. [21:07:25] mutante that's my problem. It is stupid to do local development by repeated `commit --amend`, so how do I combine my local dev. back into something that I can `git review -R` ? [21:07:32] spagewmf: so you could do it with `git rebase -i` [21:08:05] spagewmf: (if you're not afraid of command-line monsters :) ) [21:08:46] MatmaRex: spagewmf is a pro vi user, he'll rock that rebase :) [21:10:01] marktraceur: :) i don't know most people here :) [21:11:20] "right" and "left"? I hadn't heard of this [21:11:23] in git logging [21:12:23] Marcin has a "yesmen" branch? [21:12:43] also "oldmaster" makes it look like he has a Rembrandt work-in-progress :) [21:13:00] MatmaRex: And I'm very happy to introduce you, so you don't need to :) [21:13:23] Can people watching the YouTube stream actually see the action in Marcin's terminal? [21:13:52] sumanah: i can, mostly [21:15:07] the git-rev-parse man page is the one Marcin is showing [21:16:04] git --log --oneline --topo-order master^ ^review/master was that command [21:16:36] git --log --oneline --topo-order master^^1 ^review/master and then git --log --oneline --topo-order master^^2 ^review/master [21:16:46] to "go left" and "go right" [21:18:09] sumanah: I can see the terminal just fine [21:19:33] good, good [21:20:07] saper: more questions above, including from mutante [21:20:27] robla: how many people are using what? [21:21:00] sumanah: eclipse [21:21:01] http://www.mediawiki.org/wiki/File:Gerrit-review-in-Eclipse.png [21:21:07] http://www.mediawiki.org/wiki/File:Gerrit-review-in-Eclipse-2.png [21:21:08] So a team *could* review and approve merges into a feature branch, and I *could* use git rebase -i to collapse local edits before amending a gerrit change, but I still don't know how. Maybe someone can create a mw:Git/Gerrit/Advanced page. [21:21:17] Git/Tutorial and Git/Workflow taught me all I know ;) [21:22:07] some setup tips: http://www.mediawiki.org/wiki/Git/Workflow#How_to_comment_on.2C_review.2C_and_merge_code_in_Eclipse [21:22:25] * sumanah tells saper to stop muttering :) [21:22:33] sumanah: I can hear saper just fine [21:23:02] ssh quebec@t.saper.info [21:23:05] quebec [21:23:08] screen -x [21:23:18] l33t [21:24:43] git reset [21:24:57] a friend of mine aliased "git regret --hard" to "git reset --hard" [21:25:38] git reset demystified: http://git-scm.com/2011/07/11/reset.html <- good read [21:27:22] ori-l: I think your vagrant set-up should include libmemcached6 and php5-memcached [21:27:40] ori-l: and the localsettings.php should be configured with memcached [21:28:10] preilly: shhh, saper is presenting and the channel is being used for a tech talk :) i'll ping you afterwards. [21:30:14] sadly I have to go to a 1:30pm meeting. Good stuff, thanks saper [21:30:36] :) [21:30:40] Thank you for your presentation saper. [21:30:45] thanks saper! [21:31:05] thanks saper :) [21:31:11] Yes, thanks saper :) [21:31:11] Now's a good time to ask [21:31:16] what would people like in the next tech talk? [21:31:21] we have an opening for a topic [21:31:24] or topics [21:31:28] unfortunately this can go for hours and hours ;( [21:32:14] I think Eclipse thing can be interesting? ori-l ? [21:32:31] saper: yeah, it's pretty flexible [21:32:39] For example, next week, we will probably have a bunch of applicants for our Outreach Program for Women watching, so I was thinking that it would be nice to show the newbies how to fix a bug [21:32:45] They could follow along via screensharing as a developer fixes a bug, including investigation, git commit, and closing the Bugzilla ticket [21:33:04] sumanah: that would be interesting to see [21:33:09] marktraceur was interested in something related to this, I believe [21:33:17] per the discussion in https://www.mediawiki.org/wiki/Meetings/2012-11-15 [21:33:25] sumanah: that would be great [21:33:49] maybe we could show bringing the patch from bugzilla to gerrit as well? [21:33:54] "next week" unfortunately WMF cannot host it [21:34:00] as the office will be closed [21:34:04] sumanah: It's true! I've been trying to get a video about fixing a bug in Twisted, but it's slow going because they just got 'round to reviewing my change this week. Maybe if there were someone waiting to review the change for a video, that would be easier. [21:34:11] but if someone else wants to host it and run the recording stuff ...... [21:34:30] marktraceur: we can make something up on a test gerrit instance, maybe? [21:34:43] As Real As Possible would be nice [21:34:50] saper: It's possible, but I'd almost certainly like it to be a....yeah, what sumanah said. [21:34:51] take one of the Easy bugs [21:35:00] https://www.mediawiki.org/wiki/Annoying_Little_Bug [21:35:11] example: [21:35:11] We used to use Subversion and our code path included words like "trunk" and "phase3" and "svn". Now we use Git and ought to make sure the MediaWiki codebase no longer refers to those old paths. See Carl F�rstenberg's comment for the list of files to change. It's ok to just start by changing one or two. [21:35:12] * marktraceur channels Reading Rainbow [21:35:19] https://bugzilla.wikimedia.org/show_bug.cgi?id=38714 [21:35:37] "Don't take my word for it, go to https://bugzilla.wikimedia.org and follow the history of this bug. I really fixed it! It's true!" [21:35:57] in fact, even I could probably take a crack at that, if someone experienced were willing to review my code, live, on camera [21:35:57] sumanah, marktraceur shall a screencast be recorded about fixing/reviewing the bug or it's better to do it live? [21:36:14] we can practice it ahead of time and then do it for real live [21:36:33] that's one good thing about https://bugzilla.wikimedia.org/show_bug.cgi?id=38714 is that there are many instances of the issue so we can do real practice and then do it for real, live [21:36:34] saper: I'd prefer recording, since there's no great free software for screencasting AFAIK. [21:36:40] But it doesn't have to be me [21:36:55] robla: do you know whether these YouTube videos then get posted to Commons? [21:37:13] sumanah: Erik has posted some videos to Commons, but maybe not the tech chat ones [21:37:35] marktraceur: so sth like camstudio? [21:37:54] https://live.gnome.org/GnomeMarketing/Gnome3In30Seconds/HOWTO has a HOWTO from last year [21:38:02] on FLOSS tools for screencasting [21:38:15] saper: Operating system Microsoft Windows [21:38:55] marktraceur: yeah I know :) there is vnc2swf for the rest of us :) [21:40:40] I usually use recordmydesktop for screen-recording, but *broadcasting* (which is what I understand to be screencasting) seems less possible [21:41:03] ok, so, it sounds like no one is stepping forward to host a broadcast next week. So the next one will be in 2 weeks on 29 November [21:41:06] I'll make the page [21:42:43] made [21:42:46] https://www.mediawiki.org/wiki/Meetings/2012-11-29 [21:44:01] Looks like I missed the tech chat [21:44:22] yes [21:45:28] Krenair: probably nothing new to you :) [21:45:54] Next live tech chat, in 2 weeks: watch as developers fix a bug, commit it, and get it merged, live! mediawiki.org/wiki/Meetings/2012-11-29 [21:52:14] sumanah: The When row shows the next meeting on the 15th. [21:52:30] weird, lemme fix [21:53:56] fixed [21:53:58] thanks diogenese [21:54:10] :) [21:54:47] btw diogenese do you have developer access yet? [21:55:00] I'm about to fulfill a bunch of requests so now is a good time to request it, if you do not [21:56:03] sumanah: No, I'm just listening in to learn you things are done. [21:56:15] s/you/how/ [21:56:35] Feel free to request it -- it'll make it easier to follow along in Git and Gerrit, and to comment on changesets. And it's free. :) [21:56:40] https://www.mediawiki.org/wiki/Developer_access [21:57:20] and there are some upcoming events you can attend face-to-face if you want, diogenese https://www.mediawiki.org/wiki/MediaWiki_developer_meetings [21:58:15] sumanah: This was another first for me. Chatting while viewing live :) Great fun. [21:58:33] Cool :) [22:04:04] qgil: you will probably want to follow https://identi.ca/mediawikimeet and/or https://twitter.com/MediaWikiMeet [22:04:33] sumanah: Looks like we have two OPW people (at least) in the request queue! Exciting stuff. [22:04:42] great! [22:05:00] sumanah: And the developer access thing is good for Labs, too, right? I want minnie to be able to test on Labs, eventually. [22:05:16] yes [22:05:36] sumanah, following in Twiter now (I try to impose a limit to 200 following to myself) :) [22:05:46] :) [22:06:00] It's pretty low-traffic AND HIGH VALUE right now I think, quim [22:06:44] marktraceur: you may find it useful to direct newbies who contact you to check out https://www.youtube.com/watch?v=2-6o0opiXmE (the overview Erik just did) and/or https://www.mediawiki.org/wiki/Manual:MediaWiki_architecture [22:07:01] marktraceur: I've also been sometimes suggesting that the newbies read the latest Signpost and the latest Engineering monthly report [22:07:09] Dereckson: ^ tip for you as well [22:07:10] Not a bad idea [22:07:16] (suggestions, merely suggestions) [22:08:24] sumanah: I think for now it might be OK for them to just splash around a bit, but those seem like good preparations for diving in [22:08:41] There are many paths. [22:08:42] nod [22:11:02] sumanah, I wonder why there is no regular mediawiki Twitter account, and about the usefulness of wikimediatech [22:11:42] is there no MediaWiki Twitter account? Hmmm, I thought there was [22:16:57] (done for identi.ca mediawikimeet) [22:31:49] sumanah: I did what you suggested and applied for dev access. [22:32:16] Great! lemme process that. [22:33:12] done. [22:33:24] :) [22:33:26] diogenese: You may find http://openhatch.org/missions/git helpful to play with. [22:34:46] sumanah: Thanks ;) [22:34:51] You're welcome! [22:35:15] And https://www.mediawiki.org/wiki/Annoying_Little_Bug and https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker may be of interest to you (or not). [22:35:26] saper: You're pretty good with git? [22:37:04] saper: I have a funny question about it....I want to use the tests introduced in https://gerrit.wikimedia.org/r/33662 to help me improve its dependency, https://gerrit.wikimedia.org/r/31118 [22:37:18] saper: But if I go back to the dependency, there are obviously no tests :) [22:37:34] let me check [22:37:41] saper: Any idea how to accomplish something like this? Oh, thanks. [22:38:15] diogenese: about your nick: is that the language that Diogenes speaks? :) [22:38:57] sumanah: His is long forgotten. :) [22:39:23] marktraceur: 33662 depends on 31118; but you mean it should the reverse? [22:39:36] marktraceur: /be the reverse?/ [22:39:49] saper: No, clearly not. The tests for the feature need to have the feature, so the dependency is correct. [22:40:21] saper: But after adding the tests, they gave me information on a bug, so I'd like to fix the bug....any way to avoid multiple rebases, commits, checkouts, rinse, repeats? [22:40:34] ah [22:40:54] so 33662 needs another patchset, yes? [22:40:57] saper: Rebasing once is unavoidable, but I'd like to run the tests during development [22:41:13] saper: No, 31118 does, because the initial implementation is flawed somehow [22:41:23] (or so I suspect) [22:41:42] marktraceur: question: is 33662 just testing 31118? [22:41:49] saper: Yup! [22:41:56] if so, I would make it one change [22:42:13] would that suit you? [22:43:07] saper: Seems like too big a patchset [22:43:18] But if that's the only way, it might work [22:43:58] * marktraceur is asking a teammate [22:44:05] I wonder why it's there https://gerrit.wikimedia.org/r/#/c/33662/1/js/lib/mediawiki.SelectiveSerializer.js [22:44:17] if there is a new feature I would commit test+feature together [22:44:18] saper: Huh? [22:44:22] Oh, K [22:44:37] this could probably the part of the 31118 anyway? [22:44:44] Yeah, I'll do that [22:44:48] Just squash the two [22:45:12] yes - it's the only file that's common and this will save reviewer's time :) [22:45:30] *nod* [22:47:21] so I would git reset [22:47:42] 4a538da63eb2bd08e7c041a9639a4932204d60b8 and "git cherry-pick -n [22:48:21] git cherry-pick -n 506515a1a4d110f79da605d913126489ac062a4f ae2bb56c62895a69bceb495830b9d83316b8e025 [22:48:39] and push it for refs/changes/31118 [22:51:31] saper: Or git rebase -i master on the test branch, then git review with the right commit-ID :) [22:51:42] no [22:51:52] rebasing to current master or the old one? [22:52:02] saper: Current one, has to be done anyway [22:52:09] I have some allergy to the git-rebase command, it does too much for me to trust it :) [22:52:30] Sometimes I rebase in a separate patchset [22:52:42] if it really cannot be avoided [22:52:52] as long as the change merges with the old parent, find [22:52:57] s,find,fine,