-
Heffalump
bfrk: I sent the build failure output for your unix-compat repo to the list - if you want to iterate on fixing it I should be around here off and on
-
bfrk
Thanks! I pushed a new commit that hopefully fixes all problems.
-
Heffalump
that builds, I still get warnings in System.PosixCompat.Files
-
bfrk
Please post them, will try to fix.
-
Heffalump
-
bfrk
Thanks, also fixed now. Next thing to try is build darcs with that as "submodule" and see if that builds okay.
-
Heffalump
was doing that in parallel, it did build. I'll do it again with your new push.
-
Heffalump
Then I'll run the tests
-
Heffalump
src\System\PosixCompat\Files.hsc:136:1: warning: [-Wunused-imports] The import of `hFileSize' from module `System.IO' is redundant |
-
Heffalump
136 | import System.IO (IOMode(..), openFile, hFileSize, hSetFileSize, hClose) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
Heffalump
still have that one warning
-
bfrk
Heffalump: warning fixed. These warnings are really helpful. Removing the now redundant imports and functions nicely documents the expected performance improvements.
-
bfrk
BTW, with git I am always using the "record" extension. Very "darcsy"...
-
Heffalump
:-)
-
Heffalump
I'm using git a bit more at the moment, I should probably look into things like that.
-
bfrk
(except it seems they couldn't be bothered to make the UI react to single key presses...)
-
Heffalump
I've kicked off the tests (--darcs1=no --darcs3=no --network=no). Will let you know when they finish (at least 10s of minutes...)
-
bfrk
Oops, 'git record' is not an extension, but a mere alias for 'add --patch'. This is what I have in ~/.gitconfig:
-
bfrk
[alias]
-
bfrk
meld = !git difftool -t meld --dir-diff
-
bfrk
record = add --patch
-
Heffalump
ah, that's even handier as I don't have to install anything
-
Heffalump
I might have known about --patch ( I guess it's -p)
-
Heffalump
but certainly don't know it instinctively
-
bfrk
I really hope running the tests on Windows will be faster when my index patches land.
-
bfrk
re git: yes, that's why I love the record alias
-
Heffalump
I think the Windows overhead is mostly all the process creation. UNIX-style shell scripts and Windows are a bad mix.
-
bfrk
Is process creation still that bad in Windows? I thought I read somewhere that they improved a lot on that a few years ago. But I may may remember wrongly.
-
Heffalump
not sure
-
bfrk
BTW, where did all the smiley's come from???
-
Heffalump
which smileys?
-
bfrk
In the warning message you posted above
-
Heffalump
your IRC client? I see text
-
Heffalump
-
bfrk
I am using thunderbird now for chats
-
Heffalump
I would guess that some juxtaposed punctuation got interpreted as a smiley by that and presented as a graphic
-
bfrk
Yep
-
Heffalump
I keep sending people beer icons at work when I use (a) and (b) in Skype for business
-
bfrk
LOL
-
Heffalump
even though it's all one client/app, it only translates them after I hit enter, not while I'm typing
-
bfrk
very friendly UI...
-
bfrk
re git: I should also add an alias 'amend = commit --amend'
-
bfrk
...and one for unrecord, too, need to figure out the magic options for that are
-
bfrk
We should all number items using cute icons. Makes for more relaxing conversation. Especially in business ;-)
-
bfrk
Perhaps the programmer was an anarchist and did it purpose
-
bfrk
re windows slowness: have you by chance also noted that darcs itself got slower on windows? I ask because I remember replacing Win32 specific code with unix-compat imports a while ago. And now that I looked closer at what that package does for windows I'd not be too surprised.
-
Heffalump
haven't noticed anything
-
bfrk
I guess that's because you don't have 'ALL ignore-times' in your defaults. Which is is what we do in the test suite. (Just a guess)
-
bfrk
A year ago I imported the linux kernel into darcs (not the history, only the state back then) just because I wanted to see if that is even possible. It is. But I had to use 'record -l' and still had to split it into several separate records because darcs uses too much memory.
-
bfrk
I am still occasionally using that repo as a power load for darcs. Recently I tried running a darcs whatsnew --ignore-times. I let that run for a few a minute or so before killing it...
-
bfrk
Takes just a few seconds when the index is used i.e. by default
-
bfrk
Heffalump: I have squashed all the commits into one in the unix-compat clone.
-
Heffalump
ok, I'll blow away my tree once this test run finishes
-
Heffalump
(it's at 'p'...)
-
bfrk
I have done some additional cleanup and pushed all my current patches to
hub.darcs.net/bf/darcs-work, including the ones that switch the default for the test suite to use the index (almost) everywhere. You may want to pull and restart the test run... or perhaps first test a new one and run that in parallel...
-
bfrk
* I meant: start a new test run and run that in parallel
-
bfrk
(there are some unrelated patches there, I can't be bothered to separating them out at the moment)
-
bfrk
As usual there is lots of cleanup mixed in, but I took care to record them in separate patches.
-
bfrk
BTW, you can git fetch && git reset --hard origin/master instead of "blowing away" your tree
-
bfrk
(I just figured that out with trial and error; will forget in about 5 minutes)
-
Heffalump
my first test run passed (i.e. darcs screened, your unix-compat repo). I'll do it again with your patches.
-
bfrk
Cool, thanks!
-
bfrk
If that succeeds, too, I will issue a pull request.
-
Heffalump
this time darcs doesn't build:
pastebin.com/tuWGVLYM
-
Heffalump
this is with the reset unix-compat and with your darcshub tree (pulled into screened)
-
bfrk
I've pushed a fix, please pull again.
-
Heffalump
-
Heffalump
CI-via-IRC :-)
-
bfrk
Okay, this one is a bit less trivial. And yes, we *do* need proper CI. More on that later.
-
bfrk
unix-compat thinks that System.Posix.Types from base has a 16 bit CIno and that it has to edfine its own version for windows. That must have been decades ago. Will fix.
-
bfrk
I have pushed another commit to my unix-compat clone. Hopefully fixes the problem.
-
Heffalump
src\System\PosixCompat\Files.hsc:138:1: error: Could not load module `System.PosixCompat.Types'
-
bfrk
Okay, yet another commit...
-
Heffalump
-
bfrk
Hmm, wait a sec. I think removing the module may not be a good idea as that could break other packages. Will make it re-export all of System.Posix.Types instead.
-
bfrk
Okay, have remove my last attempt and push a new commit. It keeps the module and merely throws away redefiniton of the FileID type.
-
Heffalump
one warning:
-
Heffalump
src\System\PosixCompat\Types.hs:25:1: warning: [-Wunused-imports]
-
Heffalump
The import of `Word64' from module `Data.Word' is redundant
-
Heffalump
|
-
Heffalump
25 | import Data.Word (Word32, Word64)
-
Heffalump
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
Heffalump
darcs itself built ok, tests running
-
bfrk
Nice! Hope it works...
-
Heffalump
the test suite stopped accepting the --darcs1=no flag - I'm busy now, will look later
-
bfrk
I forgot to mention that I changed the UI of the test suite to make it easier to switch between different sets of tests. Help extract:
-
bfrk
-s --suites=SET Select which test suites to run: (s=shell, n=network,
-
bfrk
u=unit, f=failing, h=hashed) [snu]
-
bfrk
-f --formats=SET Select which darcs formats to test: (1=darcs-1,
-
bfrk
2=darcs-2, 3=darcs-3) [123]
-
bfrk
-a --diffalgs=SET Select which diff alorithms to use (p=patience,
-
bfrk
m=myers) [p]
-
bfrk
-i --index=SET Select wether to use the index (n=no, y=yes) [y]
-
bfrk
--full Shortcut for -s=snu -f=123 -a=mp -i=yn
-
bfrk
You will want to use -f=2 or -f2 to run only for darcs-2 format.
-
bfrk
All my patches are mere proposals at the moment, this one included.
-
Heffalump
running now
-
bfrk
Will be away now for 2-3 hrs
-
Heffalump
one failure so far:
pastebin.com/9a75NTnS [will repeat when bfrk re-appears]
-
bfrk
Heffalump: How did it go?
-
Heffalump
some index failures, e.g.
pastebin.com/9a75NTnS
-
Heffalump
that one at least is reproducible, I didn't check the others. They all seemed fairly similar.
-
Heffalump
I think there were 6 in total, I can copy the whole outputs if you want
-
bfrk
Yes, that would help. The one you posted is strange, that must be a Windows thing. It tells us that we are not allowed to remove the index because we don't have the permissions. I would expect that to happen on Windows if the file is already opened, but ATM I cannot see how that is possible. Anyway, will rollback a change that I made and restore the old (rename to x.old) behavior here.
-
Heffalump
most of the errors looked like that
-
Heffalump
-
Heffalump
there's the rest of them
-
bfrk
Okay, yes it seems we must not remove the index. I have pushed a patch that reverts the behavior back to renaming it away instead.
-
bfrk
Anyway, I am really happy to see that this seems to be the only problem!
-
Heffalump
in general renaming is way safer on Windows
-
Heffalump
issue2293 passes now, I'll try the rebase tests then everything
-
Heffalump
I quite like the new command-line args (at least I think I will once I remember some common options)
-
Heffalump
weird, lots of tests with 'rebase' in the name are failing that weren't before, e.g.
pastebin.com/Zf0afVzH
-
bfrk
Oops. I get these failures, too.
-
Heffalump
oh, ok :-)
-
Heffalump
I assumed Windows was up to no good again.
-
bfrk
Arg, totally stupid mistake.
-
bfrk
Pushed yet another patch to fix the fix ;-)
-
Heffalump
Trying now - I almost want this to go wrong just for the next patch name :-)
-
bfrk
It looks like I am a bit too tired. I get lots of test failures with that one too.
-
bfrk
...okay that was because I still had some unrecorded changes lying around that printed a message to stderr whenever indexFormatValid runs into an exception. Reverted them & it works now for me
-
bfrk
the next patch name would have contained some serious swearing i guess
-
bfrk
unprintable characters liek backspace mixed in?
-
bfrk
never tried that one in darcs
-
Heffalump
we have enough trouble with encodings as it is
-
Heffalump
-t rebase and -t issue2293 are both good, I'll try everything now
-
bfrk
I have just rebased everything, incorporating the fixes into the patches that introduce the errors. Next time use rebase pull!
-
Heffalump
don't I really just want obliterate --not-in-remote first?
-
Heffalump
rebase pull seems like a nice way of making a mess
-
Heffalump
(in this scenario)
-
bfrk
Doing obliterate --not-in-remote first is perhaps the better idea in this case. I am not using it so often because I normally can't remember what by default remote is. Also like to have a safety net. For me this doesn't produce a mess, I often do a rebase obliterate soon afterwards.
-
bfrk
When I do the latter I am careful not to delete patches that I may want to look at later. BTW, nowadays you can also do rebase suspend --not-in-remote...
-
Heffalump
I know I don't have anything but your stuff in this repo
-
bfrk
Then obliterate is probably the cleaner solution.
-
bfrk
I also keep forgetting that --not-in-remote accepts an optional repo parameter (in case you aren't sure about the defaultrepo).
-
Heffalump
yeah
-
Heffalump
though it's the only option where you have to use =, precisely because it's optional
-
bfrk
Ah yes, I have stumbled over that one.
-
bfrk
More than once
-
bfrk
Even though it makes perfect sense. The command completion doesn't handle that case yet, not even with zsh.
-
bfrk
What I mean is, zsh does have completions where completing an option inserts the '=' for you to remind you of possible option args, but when you hit space it deletes the '='. Very nice.
-
bfrk
How does the test run fare? Any failures yet?
-
Heffalump
all passed