*** jinty has quit IRC | 00:09 | |
*** jinty has joined #schooltool | 00:10 | |
*** jinty has quit IRC | 01:03 | |
*** Bhaskar has joined #schooltool | 06:43 | |
Bhaskar | hi povbot | 06:54 |
---|---|---|
Bhaskar | hello srichter | 06:56 |
Bhaskar | joerg,hello | 07:32 |
*** vidasp has joined #schooltool | 10:56 | |
Bhaskar | vidasp,hello | 10:57 |
Bhaskar | vidasp,do u know schooltool? | 10:57 |
*** Aiste has joined #schooltool | 11:12 | |
Bhaskar | Aiste, do u know about schooltool | 11:13 |
*** didymo has joined #schooltool | 11:36 | |
*** Bhaskar has quit IRC | 12:04 | |
*** Bhaskar has joined #schooltool | 12:06 | |
*** Bhaskar has joined #schooltool | 12:11 | |
*** ddaa has joined #schooltool | 12:33 | |
ddaa | Heya | 12:33 |
ddaa | New bzr import of the old svn dump | 12:34 |
ddaa | http://people.ubuntu.com/~david/schooltool/st.bzr-4.tgz | 12:34 |
ddaa | the corresponding svn2bzr should now reuse file ids correctly when importing svn copies across branches | 12:34 |
ddaa | svn2bzr code at the usual locations | 12:34 |
Bhaskar | ddaa: schooltool localization how?? | 12:34 |
ddaa | ??? | 12:35 |
ddaa | WTF? | 12:35 |
Bhaskar | do u know schooltool | 12:35 |
ddaa | no | 12:35 |
ddaa | I was asked to convert the svn repo to bzr | 12:35 |
ddaa | but I'm not a schooltool developer | 12:35 |
Bhaskar | no | 12:35 |
Bhaskar | ya | 12:36 |
Bhaskar | ?? | 12:37 |
Bhaskar | r u student | 12:39 |
*** Bhaskar has quit IRC | 12:42 | |
*** jfroche has joined #schooltool | 12:50 | |
*** ignas has joined #schooltool | 13:33 | |
*** mgedmin has joined #schooltool | 13:36 | |
*** mgedmin has quit IRC | 13:37 | |
*** alga has joined #SchoolTool | 13:59 | |
ddaa | ignas: ping | 14:18 |
ignas | ddaa: pong | 14:18 |
ignas | saw the changes | 14:18 |
ddaa | saw the st.bzr-4.tgz ? | 14:18 |
ignas | no, i bzr pulled and generated a repo myself | 14:19 |
ddaa | I could not find the lyceum branch you were referring to, so I could not test the merge myself | 14:19 |
ddaa | did it go better? | 14:19 |
ignas | i am still getting conflicts, but files are full sized now | 14:19 |
ddaa | ignas: when did you last test it? | 14:19 |
ignas | hmm, christmas eve | 14:20 |
ddaa | I just fixed the file-id problem yesterday, and uploaded the code today. | 14:20 |
ignas | oh | 14:20 |
ignas | ok | 14:20 |
ignas | where is the tgz then ? | 14:20 |
ignas | :) | 14:20 |
ddaa | http://people.ubuntu.com/~david/schooltool/st.bzr-4.tgz | 14:20 |
ddaa | code is at the usual location | 14:20 |
ignas | ok :) | 14:22 |
ddaa | btw, I'm doing this work on vacation, so it's payable in beer ;) | 14:22 |
ignas | hmm :) going to PyCon or Euro Python ? | 14:22 |
ddaa | mh... europython was fun last year, but I have no plan to go yet | 14:23 |
ddaa | oh, next year in Vilnius | 14:24 |
ignas | this year it's going to be even more fun :D the beer is cheaper in here ;) | 14:24 |
ddaa | I like the place | 14:24 |
ddaa | went once for a week on a sprint with Steve | 14:24 |
ddaa | had a great night at the club just next to the hotel | 14:25 |
*** joerg_ has joined #schooltool | 14:25 | |
ddaa | I think I'll try to go to europython | 14:26 |
ignas | meet you then :) | 14:29 |
ddaa | registrations are not open yet, though | 14:29 |
*** joerg has quit IRC | 14:36 | |
ignas | hmm, how comes bzr log on a file is more cpu intensive than bzr annotate ? | 14:44 |
ddaa | because bzr log on a file is buggy | 14:45 |
ignas | oh :) | 14:45 |
ddaa | I saw some commit messages that suggests it will be improved in the next release | 14:45 |
ignas | can i trust it's output ? | 14:45 |
ddaa | IME it does not give very meaningful output anyway | 14:45 |
ignas | hmm, seems like it's sane to me ... | 14:45 |
ddaa | mh... ha right it's not a problem in your case because there are no merges | 14:46 |
ddaa | so yes, it's trustworthy in this case | 14:46 |
ignas | i see | 14:46 |
ddaa | it's buggy as in "does not use more recent APIs that can make log on file very quick" | 14:47 |
ignas | one problem with the repo I can see is that the history only spans from the "Switching the trunk: branches/srichter-refactor/schooltool -> trunk/schooltool." | 14:47 |
ignas | everything up to then seems lost ... | 14:47 |
* ddaa checks | 14:47 | |
ignas | http://source.schooltool.org/trac/changeset/4984 in svn | 14:49 |
ddaa | mh | 14:50 |
ddaa | I see | 14:50 |
ddaa | okay, that's a difficult problem | 14:52 |
ddaa | r4984 | mg | 2005-09-15 17:08:33 +0200 (Thu, 15 Sep 2005) | 3 lines | 14:52 |
ddaa | Changed paths: | 14:52 |
ddaa | D /branches/srichter-refactor/schooltool | 14:52 |
ddaa | A /trunk/schooltool (from /branches/srichter-refactor/schooltool:4983) | 14:52 |
ddaa | Switching the trunk: branches/srichter-refactor/schooltool -> trunk/schooltool. | 14:52 |
ignas | hmm, why ? i mean can't svn2bzr just perform a branch rename ? | 14:52 |
ddaa | so, at this point, the branch root is /branches/srichter-refactor | 14:53 |
ddaa | it can perform a branch rename | 14:53 |
ddaa | but here it's actually splitting a branch... making a branch of part of an existing branch | 14:53 |
ddaa | so... it's possible to handle this case by branching | 14:53 |
ignas | hmm | 14:54 |
ddaa | but then it needs to introduce a change on the split-away branch where anything that was in srichter-refactor but not in srichter-refactor/schooltool appears deleted | 14:55 |
ddaa | another option is to make branches/srichter-refactor not be treated a branch, so all its dir contents are treated as branches | 14:55 |
ddaa | but then its direct file content (not in a subdir) will be lost | 14:56 |
ignas | hmm | 14:56 |
ddaa | there can be way, but now we are starting to go into project-specific heuristics | 14:56 |
ignas | now i have looked at this one too: http://source.schooltool.org/trac/changeset/4610 | 14:58 |
ignas | iirc DVCS'es do not handle such things easily ... | 14:58 |
*** jinty has joined #schooltool | 14:59 | |
ddaa | mh | 14:59 |
ddaa | weird, I though I had an assert in the code to catch this sort of case | 15:02 |
ignas | it would make a lot of sense to implement this switch in a schooltool specific way to keep at least a part of the premerge history | 15:02 |
ddaa | ignas: if srichter-refactor is a branch container, it's easy | 15:03 |
ignas | http://source.schooltool.org/trac/changeset/4608 and click on next changeset to see what was done ... | 15:03 |
ddaa | yeah, I saw that | 15:04 |
ddaa | looks like it's okay to make it a branch container | 15:07 |
ddaa | svn log -v -r 1:6293 file://$PWD/st.repo/branches/srichter-refactor | grep '/branches/srichter-refactor' | grep -v '^ . /branches/srichter-refactor/\(schooltool\|schoolbell\)' | 15:08 |
ddaa | A /branches/srichter-refactor | 15:08 |
ddaa | A /trunk/schooltool (from /branches/srichter-refactor/schooltool:4983) | 15:08 |
ddaa | so... easy one | 15:08 |
ignas | hmm | 15:09 |
ignas | hope this will work out | 15:09 |
ddaa | it's a correct thing to say | 15:10 |
ignas | i know code from srichter-refactor/schoolbell was moved to srichter-refactor/schooltool ... | 15:10 |
ddaa | how do you want this situation to be represented in bzr? | 15:11 |
ddaa | a problem we have now is that moving or copying a file across branches loses the ancestry of the file | 15:12 |
ddaa | we could fix this by making bzr see those cases are merges | 15:12 |
ddaa | but then other files in the merged may have their annotation clobbered | 15:13 |
ddaa | because bzr cannot represent (yet) things like "merge only this file from this branch" | 15:13 |
ddaa | so a partial merge is recorded as "merge whole trees, and revert the other changes" | 15:14 |
ddaa | so... I see two choices | 15:14 |
*** mgedmin has joined #schooltool | 15:15 | |
ddaa | 1. either make srichter refactor a branch container (which looks correct), or represent the move of trunk out of it as a branch+renames+"remove schoolbell from this branch" | 15:16 |
ddaa | 2. either lose annotation for files copied or moved across branches, or add merges in the bzr history. | 15:17 |
ignas | hmm, the first one will at least keep more of the schooltool branch history | 15:17 |
ignas | i don't know how the second one will work out | 15:17 |
ddaa | well... in 1. we can also represent "copy of a branch into an existing branch" as a "merge + renames" | 15:18 |
ignas | hmm, i am still trying to find the revision that does the copy ... | 15:19 |
ddaa | which one? | 15:19 |
ddaa | I have a few notes here that can help | 15:19 |
ignas | initially refactor had schooltool and schoolbell in it, and then is some rev - there was only schooltool left ... | 15:20 |
ddaa | r4948 | 15:21 |
ddaa | that remove schoolbell | 15:21 |
ddaa | D /branches/srichter-refactor/schoolbell | 15:21 |
ignas | hmm, and files out from it got moved some time earlier ? | 15:22 |
ddaa | svn ls -R -r 4947 file://$PWD/st.repo/branches/srichter-refactor/schoolbell@4947 | less | 15:23 |
ddaa | shows there was still quite a lot of content in this branch at this time | 15:23 |
ddaa | hard to say how much was moved away | 15:24 |
ignas | hmm, i just thought if it was just 1 large move (nor many merges+removes) or a lot of single file copies ... | 15:25 |
ddaa | svn log -v -r 1:6293 file://$PWD/st.repo/branches/srichter-refactor | grep '/branches/srichter-refactor' | grep 'schooltool' | grep 'schoolbell' | less | 15:25 |
ddaa | that will give some idea, it's one screenful | 15:25 |
ignas | 8 revisions | 15:27 |
ddaa | looks like the bulk of the copying happened in r4810 | 15:27 |
ddaa | but it was mostly copying | 15:27 |
ddaa | not renaming | 15:28 |
ddaa | so if we use a single branch, we'll lose the history of the files anyway because bzr cannot represent copies. | 15:29 |
ddaa | Unless we go really out of our way to say "in this svn revision, a copy renames the source over the destination and recreates the source with a new id" | 15:29 |
ignas | hmm, the source get's deleted anyway | 15:29 |
ddaa | but not in this very revision | 15:30 |
ignas | i mean - we don't care about what happens to it ... | 15:31 |
ddaa | sure | 15:31 |
ddaa | I guess we can get good results by making srichter-refactor a non-branch, and causing copy-across-branches be recorded as merge | 15:32 |
ignas | might just work | 15:32 |
ddaa | just depends on how much you guys were copying single files across branches instead of doing "svn merge" | 15:33 |
ddaa | Do you see what would be the problem? | 15:33 |
ignas | hmm, looking at the svn2bzr.log i can see a lot of copies | 15:34 |
ignas | i think a lot of merges are treated as copies by svn (not sure about that though ...) | 15:34 |
ddaa | yes | 15:35 |
ddaa | at least, for all files that are new in the branche merged from | 15:35 |
ddaa | (I actually tested it) | 15:35 |
ddaa | which is what caused the conflict with the .po files you had the last time | 15:36 |
ignas | i see | 15:36 |
ddaa | mh | 15:37 |
ddaa | tricky dickey | 15:37 |
ignas | if it was easy i would have migrated to bzr 6 months ago :) | 15:39 |
ddaa | my job if solving tricky bzr migration problems | 15:39 |
ddaa | Call me Migration Item | 15:40 |
ddaa | http://www.fatalexception.org/action_item.html | 15:40 |
ignas | :) | 15:42 |
ddaa | I'm starting to be annoyed by svn2bzr... its rename detection is way too simplistic, and it got no tests, so I can confidently do the major surgery it needs... | 15:42 |
ignas | :/ | 15:44 |
ddaa | got an idea | 15:44 |
ddaa | the problem with the merge detection | 15:44 |
ddaa | is that in r4810 we see files copied from two places | 15:45 |
ddaa | actually several... from r4808 and r4809 | 15:45 |
ddaa | from self branch, and from the schoolbell branch | 15:45 |
ddaa | all the stuff that comes from schoolbell comes from 4809 | 15:46 |
ddaa | the problem is how do we find the right bzr revision to use as merge parent? | 15:46 |
ddaa | with svn habit of not updating its inventories on commit, it's tricky to map svn-path+svn-revision to bzr-branch+bzr-revision | 15:48 |
mgedmin | many of these copies are actually moves | 15:49 |
mgedmin | svn treats moves as svn cp + svn rm | 15:49 |
mgedmin | the other ones are all branching | 15:49 |
ddaa | but it looks like we can do r4810 just fine if we just filter the copyfrom paths that come from self branch. Then all the other copies come from the schoolbell branch 4809, and we can easily find the bzr revision for this. | 15:49 |
ddaa | mgedmin: ack, it's actually mostly renames involving 'R' actions | 15:50 |
ddaa | and deep (directory) deletes | 15:50 |
ddaa | and svn2bzr rename handling sucks too much to deal correctly with those | 15:50 |
ddaa | and it's also change-based instead of changeset-based, so it does not have the big picture | 15:50 |
* ddaa goes to hack something | 15:53 | |
ddaa | I think I'll also try to hack the bzr-cvsps MinimalTree in there, I'm tired of waiting hours for the import to run. | 15:55 |
*** jinty has quit IRC | 18:04 | |
*** alga has quit IRC | 18:10 | |
*** Aiste has quit IRC | 19:34 | |
*** Aiste has joined #schooltool | 19:37 | |
*** ignas has quit IRC | 19:42 | |
*** ignas has joined #schooltool | 21:00 | |
*** mgedmin has quit IRC | 21:20 | |
*** jinty has joined #schooltool | 21:50 | |
*** jfroche has quit IRC | 22:18 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!