# # # patch "ChangeLog" # from [22578d070bb566e3c7da5ce7441b0a305729269b] # to [88f13e6c2611f4b166a53e62af4ae6a29d9f60f9] # # patch "cmd.hh" # from [142898bfbb49704a60be81e5e01ddef553d32ea6] # to [368ffa6d9febc8720994b25d238c80eda21968fb] # # patch "tests/_MTN_case-folding_security_patch/__driver__.lua" # from [09b2ef8447f3209f7e70e061553639bbac9c2e88] # to [86273aa9b3d3d3eb3e08ae6b9092bcea5396833e] # # patch "tests/add_ignores__MTN/__driver__.lua" # from [eaf48f4470fd65e0e1253c0802a41026ccd126ab] # to [81778ae3ef791759099c08b779bfbfb0b72a1511] # ============================================================ --- ChangeLog 22578d070bb566e3c7da5ce7441b0a305729269b +++ ChangeLog 88f13e6c2611f4b166a53e62af4ae6a29d9f60f9 @@ -1,5 +1,15 @@ 2006-12-22 Derek Scherger + * cmd.hh (args_to_paths): warn about bookkeeping paths but ignore them + * tests/_MTN_case-folding_security_patch/__driver__.lua: + mtn add no longer fails but still reports warnings on stderr + add checks for these warnings + add checks for ls known not listing bad paths + * tests/add_ignores__MTN/__driver__.lua: + un-xfail root glob testcase + +2006-12-22 Derek Scherger + * tests/add_ignores__MTN/__driver__.lua: new xfailed test for add * which fails on seeing _MTN * testsuite.lua: add it ============================================================ --- cmd.hh 142898bfbb49704a60be81e5e01ddef553d32ea6 +++ cmd.hh 368ffa6d9febc8720994b25d238c80eda21968fb @@ -56,7 +56,12 @@ args_to_paths(std::vector const & { std::vector paths; for (std::vector::const_iterator i = args.begin(); i != args.end(); ++i) - paths.push_back(file_path_external(*i)); + { + if (bookkeeping_path::is_bookkeeping_path((*i)())) + W(F("ignored bookkeeping path '%s'") % *i); + else + paths.push_back(file_path_external(*i)); + } return paths; } ============================================================ --- tests/_MTN_case-folding_security_patch/__driver__.lua 09b2ef8447f3209f7e70e061553639bbac9c2e88 +++ tests/_MTN_case-folding_security_patch/__driver__.lua 86273aa9b3d3d3eb3e08ae6b9092bcea5396833e @@ -10,9 +10,12 @@ for _,i in pairs(names) do -- bookkeeping files are an error for add for _,i in pairs(names) do if not exists(i) then writefile(i) end end for _,i in pairs(names) do - check(mtn("add", i), 1, false, false) + check(mtn("add", i), 0, false, true) + check(qgrep(i, "stderr")) end -check(mtn("ls", "known"), 0) +check(mtn("ls", "known"), 0, true, false) +check(grep("-qi", "_mtn", "stdout"), 1) + for _,i in pairs(names) do remove(i) end -- run setup again, because we've removed our bookkeeping dir. @@ -25,9 +28,12 @@ for _,i in pairs(names) do writefile(i.."/foo", "") end for _,i in pairs(names) do - check(mtn("add", i), 1, false, false) + check(mtn("add", i), 0, false, true) + check(qgrep(i, "stderr")) end -check(mtn("ls", "known"), 0) +check(mtn("ls", "known"), 0, true, false) +check(grep("-qi", "_mtn", "stdout"), 1) + for _,i in pairs(names) do remove(i) end -- just to make sure, check that it's not only add that fails, if it somehow ============================================================ --- tests/add_ignores__MTN/__driver__.lua eaf48f4470fd65e0e1253c0802a41026ccd126ab +++ tests/add_ignores__MTN/__driver__.lua 81778ae3ef791759099c08b779bfbfb0b72a1511 @@ -8,7 +8,7 @@ check(mtn("add", "-R", "."), 0, false, f check(mtn("add", "-R", "."), 0, false, false) -- simulate shell glob of "*" from workspace root dir -xfail(mtn("add", "-R", "_MTN", "subdir"), 0, false, false) +check(mtn("add", "-R", "_MTN", "subdir"), 0, false, false) -- simulate shell glob of "../*" from workspace subdir xfail(indir("subdir", mtn("add", "-R", "../_MTN", "../subdir")), 0, false, false)