view tests/test-rebase-mq.out @ 11765:aff419e260f9 stable

templatefilters: make json filter handle multibyte characters correctly It aims to fix javascript error of hgweb's graph view in Japanese 'cp932' encoding. 'cp932' contains multibyte characters ending with '\x5c' (backslash), e.g. '\x94\x5c' for Japanese Kanji 'Noh'. Due to json filter escapes '\' to '\\', multibyte string ending with '\x5c' is translated to "xxx\", resulting javascript parse error on a web browser. This patch changes json() to pass unicode to jsonescape(). Unicode decoding error handler changed to 'replace' by Patrick Mézard.
author Yuya Nishihara <yuya@tcha.org>
date Sat, 07 Aug 2010 16:27:16 +0900
parents 92342fa9fbd8
children
line wrap: on
line source

1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@  3 P1 tags: f2.patch qtip tip
|
o  2 P0 tags: f.patch qbase
|
| o  1 R1 tags:
|/
o  0 C1 tags: qparent


% Rebase - try to rebase on an applied mq patch
abort: cannot rebase onto an applied mq patch

% Rebase - same thing, but mq patch is default dest
abort: cannot rebase onto an applied mq patch

% Rebase - generate a conflict
merging f
warning: conflicts during merge.
merging f failed!
abort: fix unresolved conflicts with hg resolve then run hg rebase --continue

% Fix the 1st conflict
warning: conflicts during merge.
merging f failed!
abort: fix unresolved conflicts with hg resolve then run hg rebase --continue
merging f

% Fix the 2nd conflict
saved backup bundle to 
@  3 P1 tags: f2.patch qtip tip
|
o  2 P0 tags: f.patch qbase
|
o  1 R1 tags: qparent
|
o  0 C1 tags:


% Update to qbase
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% f correctly reflects the merge result
mq1r1
% And the patch is correct
# HG changeset patch
# User test
# Date
# Node ID
# Parent
P0

diff -r x -r y f
--- a/f
+++ b/f
@@ -1,1 +1,1 @@
-r1
+mq1r1

% Update to qtip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% f correctly reflects the merge result
mq1r1mq2
% And the patch is correct
# HG changeset patch
# User test
# Date
# Node ID
# Parent
P1

diff -r x -r y f
--- a/f
+++ b/f
@@ -1,1 +1,1 @@
-mq1r1
+mq1r1mq2

% Adding one git-style patch and one normal
popping f2.patch
popping f.patch
patch queue now empty
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
% patch series step 1/2
f_git.patch: P0 (git)
f.patch: P1
% patch queue manifest step 1/2
.hgignore
f.patch
f_git.patch
series
% Git patch
P0 (git)

diff --git a/p b/p
new file mode 100644
--- /dev/null
+++ b/p
@@ -0,0 +1,1 @@
+mq1

% Normal patch
P1

diff -r x p
--- a/p
+++ b/p
@@ -1,1 +1,1 @@
-mq1
+mq2

% Rebase the applied mq patches
% patch series step 2/2
f_git.patch: P0 (git)
f.patch: P1
% patch queue manifest step 2/2
.hgignore
f.patch
f_git.patch
series
% And the patches are correct
% Git patch
# HG changeset patch
# User test
# Date
# Node ID
# Parent
P0 (git)

diff --git a/p b/p
new file mode 100644
--- /dev/null
+++ b/p
@@ -0,0 +1,1 @@
+mq1

% Normal patch
# HG changeset patch
# User test
# Date
# Node ID
# Parent
P1

--- a/p
+++ b/p
@@ -1,1 +1,1 @@
-mq1
+mq2