monotone-commits-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-commits-diffs] org.debian.monotone: 9794e4ce37b213e56537447010


From: code
Subject: [Monotone-commits-diffs] org.debian.monotone: 9794e4ce37b213e56537447010e9e15f04da8539
Date: Mon, 11 Mar 2013 21:54:22 +0100 (CET)

revision:            9794e4ce37b213e56537447010e9e15f04da8539
date:                2012-04-28T14:55:36
author:              Francis Russell <address@hidden>
branch:              org.debian.monotone
changelog:
Backport upstream fix for non-escaped URLs being passed to monotone in
its test suite.

manifest:
format_version "1"

new_manifest [116cecacf19ccfde3c66a90bed1f0457d1f30888]

old_revision [cbec1fc23a5070e7dc18d7204badf30b7533db4a]

add_file "patches/03-url_escaping.diff"
 content [69d3ec6ed23eba718c4f25cb456c9ba19cd4dfef]

patch "changelog"
 from [d858754826d637a61dfeda7ca11a6d5e5cbdaed4]
   to [06e379da90ace5c9fd02bf2407bea21fed3161f5]

patch "patches/series"
 from [9be7ace253d836c42168c3dcb3386cabc23aca9e]
   to [9b14efbf0eca17b6d77b24b407ccdcd500b36ad8]
============================================================
--- changelog	d858754826d637a61dfeda7ca11a6d5e5cbdaed4
+++ changelog	06e379da90ace5c9fd02bf2407bea21fed3161f5
@@ -8,8 +8,10 @@ monotone (1.0-5) unstable; urgency=low
   * patches/02-file_handle.diff: Backport upstream fix for name clash
     between monotone's "file_handle" struct and the one defined in
     "fcntl.h" from (e)glibc >=2.14.
+  * patches/03-url_escaping.diff: Backport upstream fix for non-escaped URLs
+    being passed to monotone in its test suite. 
 
- -- Francis Russell <address@hidden>  Tue, 27 Mar 2012 12:36:29 +0100
+ -- Francis Russell <address@hidden>  Sat, 28 Apr 2012 15:48:34 +0100
 
 monotone (1.0-4) unstable; urgency=low
 
============================================================
--- /dev/null	
+++ patches/03-url_escaping.diff	69d3ec6ed23eba718c4f25cb456c9ba19cd4dfef
@@ -0,0 +1,337 @@
+Description: Escape characters in URLs used by test suite.
+Bug-Debian: http://bugs.debian.org/668457
+Origin: upstream, commit: a0ed177b60caee5cf304c01d83e75812af1225e1
+Index: monotone-1.0/test/func/attr_mtn_execute/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/attr_mtn_execute/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/attr_mtn_execute/__driver__.lua	2012-04-28 15:43:21.839400322 +0100
+@@ -30,7 +30,7 @@
+ -- test clone with mtn:execute
+ 
+ copy("test.db", "test-clone.db")
+-testURI="file://" .. test.root .. "/test-clone.db?testbranch"
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?testbranch"
+ 
+-check(nodb_mtn("clone", testURI, "clone"), 0, false, true)
++check(nodb_mtn("clone", test_uri, "clone"), 0, false, true)
+ check(indir("clone", {"test", "-x","foo"}, 0, false, false))
+Index: monotone-1.0/test/func/branch_leaves_sync_bug/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/branch_leaves_sync_bug/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/branch_leaves_sync_bug/__driver__.lua	2012-04-28 15:43:21.839400322 +0100
+@@ -46,7 +46,9 @@
+ 
+ -- Create Beth's workspace via checkout, so 'update' works
+ chdir(test.root)
+-check(abe_mtn("sync", "file://" .. test.root .. "/beth.db?*"), 0, false, false)
++
++test_uri="file://" .. url_encode_path(test.root .. "/beth.db") .. "?*"
++check(abe_mtn("sync", test_uri), 0, false, false)
+ check(beth_mtn("checkout", "--branch", "testbranch", "Beth"), 0, false, false)
+ chdir("Beth")
+ check(beth_mtn("genkey", "address@hidden"), 0, false, false, string.rep("address@hidden", 2))
+@@ -64,7 +66,7 @@
+ rev_b = base_revision()
+ 
+ -- Sync dbs
+-check(abe_mtn("sync", "file://" .. test.root .. "/beth.db?*"), 0, false, false)
++check(abe_mtn("sync", test_uri), 0, false, false)
+ 
+ -- Abe merges
+ chdir("Abe")
+@@ -80,7 +82,8 @@
+ rev_d = base_revision()
+ 
+ -- Sync dbs (not clear if direction of sync matters)
+-check(beth_mtn("sync", "file://" .. test.root .. "/abe.db?*"), 0, false, false)
++test_uri="file://" .. url_encode_path(test.root .. "/abe.db") .. "?*"
++check(beth_mtn("sync", test_uri), 0, false, false)
+ 
+ -- bug; rev_d and rev_c are both heads according to branch_leaves table.
+ check(beth_mtn("db", "check"), 0, false, false)
+Index: monotone-1.0/test/func/clone_aborts_on_branch_pattern_in_uri/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_aborts_on_branch_pattern_in_uri/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_aborts_on_branch_pattern_in_uri/__driver__.lua	2012-04-28 15:43:21.839400322 +0100
+@@ -6,9 +6,9 @@
+ commit("mybranch")
+ 
+ copy("test.db", "test-clone.db")
+-testURI="file://" .. test.root .. "/test-clone.db?mybranch*"
+ 
+-check(nodb_mtn("clone", testURI), 1, false, true)
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?mybranch*"
++check(nodb_mtn("clone", test_uri), 1, false, true)
+ check(qgrep("you must specify an unambiguous branch to clone", "stderr"))
+ 
+ -- the branch option is invalid in non-URI mode
+@@ -16,7 +16,7 @@
+ check(qgrep("the '--branch' option is only valid with an URI to clone", "stderr"))
+ 
+ -- finally, this should succeed
+-check(nodb_mtn("clone", testURI, "--branch=mybranch"), 0, false, false)
++check(nodb_mtn("clone", test_uri, "--branch=mybranch"), 0, false, false)
+ check(exists("mybranch"))
+ check(readfile("foo") == readfile("mybranch/foo"))
+ 
+Index: monotone-1.0/test/func/clone_branch_no_dir/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_branch_no_dir/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_branch_no_dir/__driver__.lua	2012-04-28 15:43:21.839400322 +0100
+@@ -6,18 +6,18 @@
+ commit("mybranch")
+ 
+ copy("test.db", "test-clone.db")
+-testURI="file://" .. test.root .. "/test-clone.db?mybranch"
+ 
+-check(nodb_mtn("clone", testURI), 0, false, false)
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?mybranch"
++check(nodb_mtn("clone", test_uri), 0, false, false)
+ check(exists("mybranch"))
+ check(readfile("foo") == readfile("mybranch/foo"))
+ 
+ -- but now that that directory exists, this clone should fail
+-check(nodb_mtn("clone", testURI), 1, false, false)
++check(nodb_mtn("clone", test_uri), 1, false, false)
+ 
+ -- but succeed if given a specific dir
+-check(nodb_mtn("clone", testURI, "otherdir"), 0, false, false)
++check(nodb_mtn("clone", test_uri, "otherdir"), 0, false, false)
+ 
+ -- clone into . should not fail, like checkout
+ mkdir("test4")
+-check(indir("test4", nodb_mtn("clone", testURI, ".")), 0, false, false)
++check(indir("test4", nodb_mtn("clone", test_uri, ".")), 0, false, false)
+Index: monotone-1.0/test/func/clone_creates__MTN_log/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_creates__MTN_log/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_creates__MTN_log/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -13,9 +13,9 @@
+ check(mtn("--branch=testbranch", "--rcfile=commit_log.lua", "commit"), 0, false, false)
+ 
+ copy("test.db", "test-clone.db")
+-testURI="file://" .. test.root .. "/test-clone.db?testbranch"
+ 
+-check(nodb_mtn("clone", testURI, "testbranch"), 0, false, true)
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?testbranch"
++check(nodb_mtn("clone", test_uri, "testbranch"), 0, false, true)
+ 
+ check(exists("testbranch/_MTN/log"))
+ check(fsize("_MTN/log") == 0)
+Index: monotone-1.0/test/func/clone_creates_right__MTN_options/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_creates_right__MTN_options/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_creates_right__MTN_options/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -10,7 +10,7 @@
+ writefile("testfile", "blah")
+ commit()
+ 
+-testURI="file://" .. test.root .. "/test-clone.db?testbranch"
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?testbranch"
+ 
+ -- We use RAW_MTN because it used to be that passing --db= (as
+ -- MTN does) would hide a bug in this functionality...
+@@ -18,16 +18,17 @@
+ -- all of these inherit options settings from the current _MTN dir
+ -- unless they override them on the command line
+ 
+-check(nodb_mtn("clone", testURI, "test_dir1"), 0, false, false)
+-check(nodb_mtn("clone", "--revision", rev, testURI, "test_dir2"), 0, false, false)
+-check(nodb_mtn("--db=" .. test.root .. "/test-new.db", "clone", testURI, "test_dir3"), 0, false, false)
+-check(nodb_mtn("--db=" .. test.root .. "/test-new.db", "clone", testURI, "--revision", rev, "test_dir4"), 0, false, false)
++check(nodb_mtn("clone", test_uri, "test_dir1"), 0, false, false)
++check(nodb_mtn("clone", "--revision", rev, test_uri, "test_dir2"), 0, false, false)
++check(nodb_mtn("--db=" .. test.root .. "/test-new.db", "clone", test_uri, "test_dir3"), 0, false, false)
++check(nodb_mtn("--db=" .. test.root .. "/test-new.db", "clone", test_uri, "--revision", rev, "test_dir4"), 0, false, false)
+ 
+ -- checkout fails if the specified revision is not a member of the specified branch
+-testURI="file://" .. test.root .. "/test-clone.db?foobar"
+-check(nodb_mtn("clone", testURI, "--revision", rev, "test_dir5"), 1, false, false)
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?foobar"
++
++check(nodb_mtn("clone", test_uri, "--revision", rev, "test_dir5"), 1, false, false)
+ check(nodb_mtn("cert", rev, "branch", "foobar", "-d", "test-clone.db"), 0, false, false)
+-check(nodb_mtn("clone", testURI, "--revision", rev, "test_dir6"), 0, false, false)
++check(nodb_mtn("clone", test_uri, "--revision", rev, "test_dir6"), 0, false, false)
+ 
+ 
+ for i = 1,2 do
+Index: monotone-1.0/test/func/clone_validates_target_directory/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_validates_target_directory/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_validates_target_directory/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -6,15 +6,15 @@
+ commit()
+ 
+ copy("test.db", "test-clone.db")
+-testURI="file://" .. test.root .. "/test-clone.db?testbranch"
+ 
+-check(nodb_mtn("clone", testURI, "test_dir1"), 0, false, false)
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?testbranch"
++check(nodb_mtn("clone", test_uri, "test_dir1"), 0, false, false)
+ 
+ writefile("test_dir2")
+-check(nodb_mtn("clone", testURI, "test_dir2"), 1, false, false)
++check(nodb_mtn("clone", test_uri, "test_dir2"), 1, false, false)
+ 
+ mkdir("test_dir3")
+-check(nodb_mtn("clone", testURI, "test_dir3"), 1, false, false)
++check(nodb_mtn("clone", test_uri, "test_dir3"), 1, false, false)
+ 
+ if existsonpath("chmod") and existsonpath("test") then
+   -- skip this part if run as root (hi Gentoo!)
+@@ -27,9 +27,9 @@
+   else
+     mkdir("test_dir4")
+     check({"chmod", "444", "test_dir4"}, 0, false)
+-    check(nodb_mtn("clone", testURI, "test_dir4"),
++    check(nodb_mtn("clone", test_uri, "test_dir4"),
+              1, false, false)
+-    check(nodb_mtn("clone", testURI, "test_dir4/subdir"),
++    check(nodb_mtn("clone", test_uri, "test_dir4/subdir"),
+              1, false, false)
+     -- Reset the permissions so Autotest can correctly clean up our
+     -- temporary directory.
+Index: monotone-1.0/test/func/clone_warning_with_multiple_heads/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_warning_with_multiple_heads/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_warning_with_multiple_heads/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -16,9 +16,9 @@
+ REV3=base_revision()
+ 
+ copy("test.db", "test-clone.db")
+-testURI="file://" .. test.root .. "/test-clone.db?testbranch"
+ 
+-check(nodb_mtn("clone", testURI, "test_dirA"),
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") .. "?testbranch"
++check(nodb_mtn("clone", test_uri, "test_dirA"),
+          1, false, true)
+ check(qgrep(REV2, "stderr"))
+ check(qgrep(REV3, "stderr"))
+Index: monotone-1.0/test/func/clone_weird_branch_names/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/clone_weird_branch_names/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/clone_weird_branch_names/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -6,10 +6,11 @@
+ commit("my-branch[1,2]-1^3")
+ 
+ copy("test.db", "test-clone.db")
+--- some of the special chars need to get double-escaped to get "through"
+-testURI="file://" .. test.root .. "/test-clone.db?my-branch\\\[1,2\\\]-1^3"
+ 
+-check(nodb_mtn("clone", testURI), 0, false, false)
++-- some of the special chars need to get double-escaped to get "through"
++test_uri="file://" .. url_encode_path(test.root .. "/test-clone.db") ..
++  "?" .. url_encode_query("my-branch\\\[1,2\\\]-1^3")
++check(nodb_mtn("clone", test_uri), 0, false, false)
+ check(exists("my-branch[1,2]-1^3"))
+ check(readfile("foo") == readfile("my-branch[1,2]-1^3/foo"))
+ 
+Index: monotone-1.0/test/func/imp_test_filesync_confdir/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/imp_test_filesync_confdir/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/imp_test_filesync_confdir/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -18,7 +18,8 @@
+    rcfile:close()
+ end
+ 
+-check(mtn("sync", "file://" .. test.root .. "/test2.db?testbranch"), 0, true, false)
++test_uri="file://" .. url_encode_path(test.root .. "/test2.db") .. "?testbranch"
++check(mtn("sync", test_uri), 0, true, false)
+ 
+ n = 0
+ 
+Index: monotone-1.0/test/func/netsync_over_pipes/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/netsync_over_pipes/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/netsync_over_pipes/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -7,6 +7,7 @@
+ addfile("testfile", "foo")
+ commit()
+ 
+-check(mtn("sync", "file://" .. test.root .. "/test2.db?testbranch"), 0, false, true)
++test_uri="file://" .. url_encode_path(test.root .. "/test2.db") .. "?testbranch"
++check(mtn("sync", test_uri), 0, false, true)
+ check(not qgrep("error", "stderr"))
+ check_same_db_contents("test.db", "test2.db")
+Index: monotone-1.0/test/func/serve-automate-single-run/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/serve-automate-single-run/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/serve-automate-single-run/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -60,8 +60,9 @@
+ -- 'file:' not supported on Windows
+ 
+ copy("allow-automate.lua", "custom_test_hooks.lua")
++test_uri="file://" .. url_encode_path(test.root .. "/test.db")
+ check(mtn2("automate", "remote", "--remote-stdio-host",
+-	   "file://"..test.root.."/test.db",
++	   test_uri,
+ 	   "get_file_of", "--", "-r".. R1, "foo"), 0, true, false)
+ check(qgrep("bar", "stdout"))
+ end
+Index: monotone-1.0/test/func/serve-automate/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/serve-automate/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/serve-automate/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -56,7 +56,8 @@
+ if ostype ~= "Windows" then
+ -- 'file:' not supported on Windows
+ 
+-check(mtn2("automate", "remote_stdio", "file://" .. test.root .. "/test.db"),
++test_uri="file://" .. url_encode_path(test.root .. "/test.db")
++check(mtn2("automate", "remote_stdio", test_uri),
+       0, true, false, "l17:interface_versione")
+ check(parse_stdio(readfile("stdout"), 0, 0, "m") ~= nil)
+ end
+Index: monotone-1.0/test/func/util_mtnopt/__driver__.lua
+===================================================================
+--- monotone-1.0.orig/test/func/util_mtnopt/__driver__.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/func/util_mtnopt/__driver__.lua	2012-04-28 15:43:21.840400284 +0100
+@@ -6,6 +6,11 @@
+ 
+ normalized_testroot = normalize_path (test.root)
+ 
++-- Escape regexp special characters to form a proper regexp that correctly
++-- checks for the given path.
++escaped_testroot = string.gsub(normalized_testroot, "([*+.()[\\^$|?])",
++  function (x) return "\\" .. x end)
++
+ -- check default operation
+ 
+ -- MinGW does not process the shebang in mtnopt; must invoke sh directly
+@@ -13,7 +18,7 @@
+ -- Don't pass the full /bin/sh path, it looks like that doesn't always
+ -- work under mingw.
+ check({"sh", "./mtnopt"}, 0, true)
+-check(qgrep('^MTN_database="' .. normalized_testroot .. '/test.db";$', "stdout"))
++check(qgrep('^MTN_database="' .. escaped_testroot .. '/test.db";$', "stdout"))
+ check(qgrep('^MTN_branch="testbranch";$', "stdout"))
+ 
+ -- check operation with a specific key and just returning the value
+Index: monotone-1.0/test/src/testlib.lua
+===================================================================
+--- monotone-1.0.orig/test/src/testlib.lua	2012-04-28 15:41:51.595817578 +0100
++++ monotone-1.0/test/src/testlib.lua	2012-04-28 15:43:21.841400246 +0100
+@@ -144,6 +144,22 @@
+   return n
+ end
+ 
++-- encodes a query by percent escaping reserved characters (as defined
++-- in RFC 3986) - except for the directory separator ('/').
++function url_encode_path(path)
++  path = string.gsub(path, "([!*'();:@&=+$,?#[%]])",
++    function (x) return string.format("%%%02X", string.byte(x)) end)
++  return string.gsub(path, " ", "+")
++end
++
++-- encodes a query by percent escaping reserved characters (as defined
++-- in RFC 3986) - except for the ampersand and equal sign ('&', '=')
++function url_encode_query(path)
++  path = string.gsub(path, "([!*'();:@+$,/?#[%]])",
++    function (x) return string.format("%%%02X", string.byte(x)) end)
++  return string.gsub(path, " ", "+")
++end
++
+ function open_or_err(filename, mode, depth)
+   local file, e = io.open(filename, mode)
+   if file == nil then
============================================================
--- patches/series	9be7ace253d836c42168c3dcb3386cabc23aca9e
+++ patches/series	9b14efbf0eca17b6d77b24b407ccdcd500b36ad8
@@ -1,5 +1,6 @@ 02-file_handle.diff
 00-db-extension-bash-completion.diff
 01-format-security.diff
 02-file_handle.diff
+03-url_escaping.diff
 10-mtn-ignore-syntax-error-test.diff
 90-stacktrace-on-crash.diff

reply via email to

[Prev in Thread] Current Thread [Next in Thread]