git-annex test from standalone speedup
Avoid git-annex test being very slow when run from within the standalone linux tarball or OSX app. It may not really be necessary to add to PATH the directory where the git-annex binary resides, but it can't hurt. Most places where the test suite or git-annex run git-annex, they use programPath, so won't need a modified PATH. But I'm not sure if that's always the case. Sponsored-by: Dartmouth College's Datalad project
This commit is contained in:
parent
ecf7c29107
commit
2fc46e1871
3 changed files with 19 additions and 2 deletions
|
@ -15,6 +15,8 @@ git-annex (10.20220223) UNRELEASED; urgency=medium
|
||||||
* Propagate nonzero exit status from git ls-files when a specified
|
* Propagate nonzero exit status from git ls-files when a specified
|
||||||
file does not exist, or a specified directory does not contain
|
file does not exist, or a specified directory does not contain
|
||||||
any files checked into git.
|
any files checked into git.
|
||||||
|
* Avoid git-annex test being very slow when run from within the
|
||||||
|
standalone linux tarball or OSX app.
|
||||||
|
|
||||||
-- Joey Hess <id@joeyh.name> Wed, 23 Feb 2022 14:14:09 -0400
|
-- Joey Hess <id@joeyh.name> Wed, 23 Feb 2022 14:14:09 -0400
|
||||||
|
|
||||||
|
|
|
@ -468,10 +468,12 @@ setTestMode :: TestMode -> IO ()
|
||||||
setTestMode testmode = do
|
setTestMode testmode = do
|
||||||
currdir <- getCurrentDirectory
|
currdir <- getCurrentDirectory
|
||||||
p <- Utility.Env.getEnvDefault "PATH" ""
|
p <- Utility.Env.getEnvDefault "PATH" ""
|
||||||
|
pp <- Annex.Path.programPath
|
||||||
|
|
||||||
mapM_ (\(var, val) -> Utility.Env.Set.setEnv var val True)
|
mapM_ (\(var, val) -> Utility.Env.Set.setEnv var val True)
|
||||||
-- Ensure that the just-built git annex is used.
|
-- Ensure that the same git-annex binary that is running
|
||||||
[ ("PATH", currdir ++ [searchPathSeparator] ++ p)
|
-- git-annex test is at the front of the PATH.
|
||||||
|
[ ("PATH", takeDirectory pp ++ [searchPathSeparator] ++ p)
|
||||||
, ("TOPDIR", currdir)
|
, ("TOPDIR", currdir)
|
||||||
-- Avoid git complaining if it cannot determine the user's
|
-- Avoid git complaining if it cannot determine the user's
|
||||||
-- email address, or exploding if it doesn't know the user's
|
-- email address, or exploding if it doesn't know the user's
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
[[!comment format=mdwn
|
||||||
|
username="joey"
|
||||||
|
subject="""comment 2"""
|
||||||
|
date="2022-03-01T19:58:37Z"
|
||||||
|
content="""
|
||||||
|
I have fixed the problem I identified, which was due to git-annex test adding
|
||||||
|
the cwd to PATH, which caused it to run git-annex.linux/git, so runshell
|
||||||
|
was being run repeatedly and unncessarily.
|
||||||
|
|
||||||
|
Now it will run git-annex.linux/bin/git and avoid the repeated runshell
|
||||||
|
overhead, so will be about as fast as git-annex not run from the standalone
|
||||||
|
tarball.
|
||||||
|
"""]]
|
Loading…
Reference in a new issue