Tue May 10 01:25:45 EST 2011 - Talk with Thomas Waldmann about moin1 vs moin2 and development process
1 (00:31:41) The topic for #moin-dev is: MoinMoin Developer Channel - User or third-party issues should go to #moin. Note that you are publicly logged here. Use http://paste.pocoo.org/.
2 (00:33:19) BradDean: Greetings folks - I'm part of the new group that has been put together to convert Mailman's wiki from Confluence to MoinMoin. John Sullivan (FSF) was talking with Thomas Waldmann here the other day - I had a couple of quick questions for you Thomas (if you happen to be around).
3 (00:35:02) ThomasWaldmann: hi brad
4 (00:35:21) BradDean: Hi Thomas
5 (00:35:43) BradDean: John sent us a brief extract of a conversation he had with you the other day relating to the best way to import data into moin
6 (00:36:05) BradDean: I'm quite familiar with moin1, and not at all familiar with moin2 (yet!)
7 (00:36:34) dreimark: welcome BradDean
8 (00:36:38) BradDean: I'm wondering how stable the moin DOM -> markup -> back-port-to-moin1 process is likely to be
9 (00:37:13) ThomasWaldmann: (some basics are there http://moinmo.in/MoinMoin2.0 )
10 (00:38:09) BradDean: yep - started reading there the other day. :)
11 (00:38:47) ThomasWaldmann: well, everything in moin2 is still in development, but the dom converters basically work. we don't have a moinwiki19_out converter yet, though, but some other <wikimarkup>_out converters.
12 (00:39:19) BradDean: For this conversion we need to rebuild (assuming we can get it out of Confluence) revision history (times, changes, authors)
13 (00:40:19) ThomasWaldmann: yes
14 (00:40:26) m4k3r left the room (quit: Ping timeout: 260 seconds).
15 (00:40:27) BradDean: It wasn't immediately clear to me (from what I've read so far) whether the converters were just at the content level or if the same API's would support this sort of deep-structure import
16 (00:40:45) ThomasWaldmann: converters are for content
17 (00:40:46) m4k3r [~maker@host149-80-dynamic.23-79-r.retail.telecomitalia.it] entered the room.
18 (00:40:55) BradDean: right ok
19 (00:41:32) ThomasWaldmann: they just convert revision content from markup to dom, some dom transformations, dom to html (for example)
20 (00:41:48) BradDean: And moin2 will support moin1 storage (but only read-only). So we could theoretically just convert directly to the existing format (allowing us to deploy direct to a moin1 instance) and then have that content imported into moin2 when it is stable
21 (00:42:44) ThomasWaldmann: you first need a fs19 with write support if you want to write backend files for moin 1.9
22 (00:43:29) ThomasWaldmann: that stuff could be done later though. in case we manage to get moin2 into a usable state for you before you get there, you maybe can save some work by not needing to code that.
23 (00:45:03) ThomasWaldmann: btw, in general for such wiki data conversion scenarios, there are always 2 different ways of dealing with it
24 (00:45:56) ThomasWaldmann: mostly taken is the quick and dirty hackish way. just hack some code that does convert the most used 90% of the markup in whatever dirty way that works for that.
25 (00:46:59) BradDean: I'm thinking that the advantage to using moin2 moin-DOM and converters is the guarantee of well-formed markup, but with the requirement to convert back to moin1 compatible data for the production deployment. We'll discuss this at our end to see what works for us best. It would be nice to think that we'd avoid the 'this is a once off conversion hack' common to most converters, on the other hand that may not be a realistic hope .:)
26 (00:47:05) ThomasWaldmann: the problem with that is that such code mostly ends up being unmaintained, because original author only needed it once (of course) and code is too ugly, so noone else wants to touch it anyway. :)
27 (00:47:51) ThomasWaldmann: the dom converter / storage backend moin2 way would be a bit cleaner and also useful for other stuff, but maybe more work also.
28 (00:49:28) ThomasWaldmann: btw, a moinwiki_out converter exists
29 (00:49:38) BradDean: rightio - I imagine we'll start by having a shot at that approach and see if we can get it going.
30 (00:49:54) BradDean: Ah yes - I think I saw a comment about that from your conversation with Jphn
31 (00:50:23) dreimark: http://hg.moinmo.in/moin/2.0/file/62452154e3a0/MoinMoin/converter
32 (00:50:27) ThomasWaldmann: but, it likely only deals with the markup we want to keep for the future. some parts of moin 1.9 are likely not included (like free CamelCase links).
33 (00:50:52) ThomasWaldmann: BradDean: maybe a wiki page or etherpad would be useful for plan refinement
34 (00:51:28) ThomasWaldmann: if you like, create some page on moinmo.in for that
35 (00:52:22) BradDean: We've set up on gitorious which has a built-in wiki (so seems like a good place to document/plan) : https://gitorious.org/confluence2moinmoin/pages/Home
36 (00:52:22) BradDean: That's only new so there's nothing much there (and nothing in git just yet)
37 (00:52:51) ThomasWaldmann: hmm, not supporting free CamelCase links is no issue, because [[CamelCase]] of course also works for 1.9. but there might be some other things.
38 (00:53:40) ThomasWaldmann: BradDean: you could start putting all those conversation logs there and clean it up
39 (00:53:41) BradDean: Once we get going perhaps we can link into that page from moinmo.in (though the ultimate aim is a script that we can contribute to the moin source tree if you guys want it)
40 (00:54:29) ThomasWaldmann: well, if you work on moin-2.0 code base, you should definitely fork the repo on bitbucket
41 (00:55:25) BradDean: rightio - something to consider in the (hopefully not too distant) future
42 (00:56:28) BradDean: Thanks for your input - time for me to head off but I'm sure I'll be back with more questions at a later date.
43 (00:56:51) ThomasWaldmann: sure, just hang out here with us :)
44 (00:57:54) RogerHaase [~roger@71-35-33-160.phnx.qwest.net] entered the room.
45 (00:58:51) ThomasWaldmann: BradDean: hmm.
46 (00:59:30) BradDean: ThomasWaldmann: hmm?
47 (00:59:30) ThomasWaldmann: to simplify work flow, I guess it would be better if you use a moin wiki (not gitourious) and also mercurial for the repo (not git)
48 (00:59:43) ThomasWaldmann: otherwise you'll have some more conversion problems :D
49 (01:00:38) ThomasWaldmann: also, if you work on moinmo.in, there is some chance that someone else with same or similar problem might notice your activities and join you
50 (01:02:14) ThomasWaldmann: (i created the bitbucket repo mirror mostly to simplify collaboration, so other devs can easy fork it there and use bb to publish their changes)
51 (01:02:45) ThomasWaldmann: there is some special support there (and in hgbb) so one can easily see incoming changesets, activities, etc.
52 (01:05:51) BradDean: See how we go! I suspect getting some stuff onto moinmo.in would be a good idea for the reason you mentioned (though the actual content of the wiki is only going to be about the process so it doesn't really matter what type of wiki that is). I've not needed to use mercurial yet and we have a git repo up and running - depending on what the other guys in the gorup think we might stick with gitorious for the moment and just provide a set of files for the moin repo when it's ready to go.
53 (01:06:15) BradDean: I want to think about the conversion process rather than a new SCM just at the moment. :)
54 (01:06:32) ThomasWaldmann: "just pr" was the last i got
55 (01:07:35) ThomasWaldmann: well, you'ld have to deal with hg anyway to regularly update from the main repo
56 (01:07:44) BradDean: ah - sorry - : ... moment and just provide a set of files for the moin repo when it's ready to go.
57 (01:07:50) Marchael2 left the room (quit: Ping timeout: 240 seconds).
58 (01:08:34) ThomasWaldmann: and as you might know "here is this huge monolithic patch" kind of changesets are not that popular
59 (01:09:17) BradDean: Sure - though the patch is likely to be a single script in this instance (plus some tests and docs), rather than changes to existing files
60 (01:09:24) ThomasWaldmann: and are hard to review also
61 (01:09:50) ThomasWaldmann: no, it is likely not a single python file
62 (01:10:55) BradDean: The first priority here is to get the Mailman wiki across, and if we can help MoinMoin with a confluence import script as well that's be a good thing
63 (01:10:58) ThomasWaldmann: you likely would need some kind of "confluence backend", modify fs19 to be r/w, maybe add a moinwiki19_out, ...
64 (01:11:48) BradDean: anyway - just hit 01:10 here in Australia - think I need to sleep on it.
65 (01:11:56) ***ThomasWaldmann just talks about the moin2 dom way. the hackish way might be different.
66 (01:11:59) ThomasWaldmann: ok, gn :)