[00:10:40] 03david * r24292 10/branches/liquidthreads/ (7 files in 4 dirs): Talkpage headers are now feature-complete. [00:15:13] concurrent cleanup of a remote content-hashed file archive turns out to be quite a headache [00:16:26] "There was, um, an error. And we lost all images and media. All of it. No backups. Dog ate them." [00:16:29] you could lock all the index gaps and then delete the files in a batch, but that could give a lot of lock contention and it would probably lead to deadlocks [00:17:29] you could lock each content hash one at a time and delete the file while it is locked, but in the current remote model using PHP, that would be very slow [00:18:35] the options appear to be: 1) lock everything and cross fingers that the contention is not too bad or 2) make the second method not slow [00:19:03] how come brion is away? lazy bastard ;) [00:19:09] heh [00:21:06] the current method is to use a global lock, serialising all file archive operations [00:21:27] so locking all the rows in question couldn't be worse than that [00:21:37] except the deadlock problem [00:23:39] there's a variant of (2) which would be quite cool: use a daemon which does both file and DB operations [00:24:03] the daemon would be on a single host [00:24:18] so cleanup would be globally serialized, but you could also merge duplicate requests [00:24:35] by far the hardest way to do it though [00:25:32] We know you like a challenge, Tim. [00:30:10] no, I think the way to do it is to have the storage host contact the DB server [00:37:51] good night^^ [00:44:47] 03robchurch * r24293 10/trunk/phase3/skins/common/images/spinner.gif: Remove green blob from the centre (was supposed to be part of the "scaled-down flower" concept, but just looks odd at this size) [00:53:47] im trying to setup a test site, and its under mysite.com/mw/mirror. The problem is i think i can't get the scriptpath right [00:54:05] is "$wgScriptPath = "/mw/mirror";" correct? [01:00:59] 03robchurch * r24294 10/trunk/phase3/ (RELEASE-NOTES docs/hooks.txt includes/User.php): Introduce 'UserGetRights' hook; see docs/hooks.txt for more information [01:01:15] 03robchurch * r24295 10/trunk/extensions/AutomaticGroups/ (AutomaticGroups.php README): Support setting rights as well [01:08:34] 03robchurch * r24296 10/trunk/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php: Estonian localisation (c/o et:Kasutaja:M2s17) [01:25:30] 03robchurch * r24297 10/trunk/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php: Trim whitespace [01:26:55] 03robchurch * r24298 10/trunk/extensions/SyntaxHighlight_GeSHi/ (SyntaxHighlight_GeSHi.class.php SyntaxHighlight_GeSHi.php): Honour 'LoadAllMessages' hook; make sure messages show up in Special:Allmessages, etc. [01:58:35] *Lyma off [02:34:03] 03david * r24299 10/branches/liquidthreads/extensions/LqtModel.php: trivial typo [02:41:10] hmm [02:41:37] 03david * r24300 10/branches/liquidthreads/extensions/LqtExtension.php: link from headers back to talk pages [02:55:35] is it dangerous to have 2 wiki's use the same DB? (one testing, the other live) [02:55:40] well n/m [02:55:41] lol [02:56:25] <^demon> Leefmc: Eh, not really. [02:56:36] oh wow, k kool [02:56:42] <^demon> Are they using the same prefix for table names? [02:56:47] yup [02:56:55] its a mirror [02:57:05] <^demon> Well, the only issue would be editing articles on the test side...because those changes would go on the live side too. [02:57:11] yea [02:57:19] <^demon> But if you want to do it just so you can test software features and new extensions, you're ok. [02:57:26] k cool [02:57:49] its weird though, i think an extension, or SOMETHING, i added is causing timeout issues and index.php to load improperly [02:58:43] i've got a fresh wiki installed, with just the mirror DB being used, and it performs great. My other version however, well in firefox only (go figure) it makes me download index.php every 2-10 page loads [02:59:03] is there a way to change th default skin based on browsertype? [02:59:18] one for ns 1.0, one for ff 3, one for ie... [02:59:39] <^demon> sj: You might be able to do it via JS. [02:59:40] if you know php i'd imagine it would be easy [02:59:46] or JS, yea [03:00:25] I don't know how to call out to browsertype in php. else I assume I could put a switch around the right lines in localsettings ... [03:00:34] <^demon> Call their user agent. [03:00:42] <^demon> $_SERVER['USER_AGENT']; [03:01:59] ah [03:02:04] thx [03:03:21] <^demon> No worries. [03:05:33] can users change their passwords? [03:06:18] <^demon> Leefmc: Yes. [03:06:47] hmm sry bout that, lot on my mind. Come to think of it its right in Prefs [03:06:54] heh, ty for not slapping such a stupid question :) [03:24:49] No, users all have to use the password "foobaz", because a bug report filed six months ago indicated that they were otherwise difficult to crack. For that matter, sysop passwords are all "barbat". [03:28:22] 03(NEW) Prevent uploads with missing descriptions - 10http://bugzilla.wikimedia.org/show_bug.cgi?id=10650 15enhancement; normal; MediaWiki: Uploading; (dragons_flight) [03:30:40] How can I make sure I am seeing the very latest up-to-date information in the database? [03:30:58] <^demon> davidmccabe: Put ?action=purge at the end of a page. [03:33:22] Specifically, I want to move a page, and then, within the same PHP instance, be able to look up the page's title and see the new title. [03:33:27] in order to do a cascading move. [03:33:46] action=purge calls Title::invalidateCache(); I don't see anything happening there that doesn't already happen when a page is moved. [03:34:11] 03(NEW) Add a source field to the upload form - 10http://bugzilla.wikimedia.org/show_bug.cgi?id=10651 15enhancement; normal; MediaWiki: Uploading; (dragons_flight) [03:35:16] <^demon> If moving already calls invalidateCache(), then you are seeing the most up-to-date information. [03:35:56] Maybe there's some magic there I'm not spotting; I'll try it. [03:37:02] *davidmccabe shakes his head. [03:37:21] Sometimes life is just funny. I write this feature, it doesn't work at all for the reason alluded to above, [03:37:23] I leave it alone for a month. [03:37:28] Come back to fix it, and it works immediately. [03:39:17] <^demon> Glad it works. [03:39:23] thanks. [03:39:35] 03david * r24301 10/branches/liquidthreads/extensions/LqtExtension.php: Reasonable behavior if there are no threads in the archive. Also, turned subject-renaming back on to start debugging it, but now it just works without any changes. No idea why. [03:39:40] I guess somebody changed something in MW in the meantime that affects it. [03:39:47] oh, CIA is back. [03:42:54] 03david * r24302 10/branches/liquidthreads/ (10 files in 7 dirs): (log message trimmed) [03:42:56] Merged revisions 24276-24301 via svnmerge from [03:42:58] svn+ssh://david@svn.wikimedia.org/svnroot/mediawiki/trunk/phase3 [03:43:00] ........ [03:43:02] r24277 | avar | 2007-07-19 17:05:45 -0700 (Thu, 19 Jul 2007) | 2 lines [03:43:04] Report the lines win32 newlines are found at [03:43:18] ........ [03:43:49] davidmccabe: If you want to make sure you are seeing the absolute latest data, use the master. [03:44:15] robchurch: was using the master all along. [03:44:16] This is far easier said than done, especially if you then want to call functions where the database access is abstracted away. :( [03:44:21] anyways it seems to work now. no idea why it didn't before. [03:44:34] Oh, good. [03:44:35] robchurch: it's not like such functions come up very often. [03:55:05] 03aaron * r24303 10/trunk/extensions/FlaggedRevs/ (FlaggedRevs.php FlaggedRevsPage_body.php): *OOP stuff [04:00:12] YAY [04:00:23] *qsheets finally did it [04:00:26] ... [04:00:38] did what qsheets? [04:00:55] look [04:01:16] I linked wiki users to irc nicks [04:01:50] *davidmccabe doesn't get it. [04:02:20] one sec, and i'll post a picture [04:03:53] VoiceOfAll: You don't need to pass objects by reference any more. [04:04:43] (Or more accurately, you don't need to explicitly etc.) [04:06:12] robchurch: so if I pass $s, it is no longer a local clone? [04:06:26] Not if it's an object, no. [04:06:32] wouldn't that break some sloppy stuff [04:06:35] ? [04:06:41] I'm talking about your new code. [04:07:09] so are objects always pass-by-reference, then, or only when the receiving method marks them as such? [04:07:20] hmph [04:07:20] Previously, the latter; that is, before PHP 5. [04:07:29] PHP 5 corrected this insane behaviour. [04:07:33] yes, but I'm just wondering about old functions that edited them for process purposes, not to actually edit the original copy [04:08:12] robchurch: so what you're saying is ... :) in PHP 5, all objects are always pass-by-reference. [04:08:24] Well, that's a good question. With some luck, we found and fixed up all those bits of code to use clones where essential. [04:08:31] But I think we just got lucky there. ;) [04:08:36] right [04:08:38] :D [04:08:58] davidmccabe: look at http://mwtesting.gotdns.com/prefs.png and http://mwtesting.gotdns.com/chat.png [04:09:19] robchurch: OK, well I still have an ampersand fetish [04:09:32] mainly prefs [04:09:33] they look red and festive in my php editor [04:09:49] qsheets_: You are integrating IRC into MediaWiki. We should talk. [04:09:58] lol [04:10:07] Is that thing javascript or flash or what? [04:10:13] java [04:10:24] brb [04:10:35] ok [04:10:36] Yeah, but they'll probably get removed during code review. [04:10:41] The reason we should talk is that I am planning, after we finally get liquidthreads 1.0 out the door, to integrate Campfire-like chat. [04:11:33] robchurch: btw, I wonder if SVN viewvc will support paging [04:11:35] *qsheets is making patch files [04:11:42] I mean these commit logs can get kinda long [04:11:47] heh [04:12:07] shit, that "We should talk" thing's all ominous [04:12:08] Ok folks, try this UI on in your mind: [04:12:11] and... 2 done 1.6.10 and 1.10.0 [04:12:18] *robchurch hopes he never does anything to impress davidmccabe [04:12:27] lol [04:12:46] cool. [04:12:52] So, [04:13:02] The "you have a new message on your talk page" message. [04:13:19] Instead of linking to your talk page, it links to Special:Inbox, which shows all new threads on all talk pages that you are watching. [04:14:23] mmm [04:14:46] That might later conflict with the new notification thing we're hoping to implement soonish. [04:15:38] Where soonish is from one week to six millennia. ;) [04:15:46] tell me about it [04:15:56] I might be impressed. [04:17:07] I'm not sure I should risk it :P [04:17:37] I think the benefits are worth the potential costs. [04:17:53] http://www.mediawiki.org/wiki/User:Brion_VIBBER/Notification_notes [04:18:01] But are they worth the actual costs? [04:18:28] Now, if we had that, you could maybe fire a notification off saying, "yeah, some discussions you're watching have been changed" [04:19:02] Outright changing the new messages thing might not last, if you see what I mean [04:19:18] well maybe I could implement this. [04:21:03] *qsheets is wondering if he could make code easier [04:21:28] ohhh... deleting that line [04:22:13] *davidmccabe goes for a walk. [04:28:00] robchurch: should whole new function = +1 sub-version or +1 version [04:28:12] what? [04:29:07] like at first users couldn't have a preset irc nick in pjirc [04:29:13] ...and now they can [04:29:24] ...and? [04:29:56] so should the version go from 1.0 to 1.1 or to 2.0 [04:32:34] ... [04:32:47] version of what? [04:32:54] your product? whatever you want [04:32:59] probably 1.0.1 or 1.1.0 [04:34:06] alright [04:35:53] thx [04:47:29] 03aaron * r24304 10/trunk/extensions/FlaggedRevs/FlaggedRevs.php: *Use consistent CSS, viciously murder and erase some ampersands. Some cleanup. [04:51:32] 03aaron * r24305 10/trunk/extensions/FlaggedRevs/ (FlaggedRevsPage.i18n.php FlaggedRevsPage_body.php): *opps [05:05:38] qsheets: think of two letters that sound good. [05:06:06] I recommend NX for "nick exchange". [05:06:18] Pjirc NX 2. [05:09:53] why? [05:13:06] I am kidding. [05:26:51] I keep having troubles getting some