unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH] test: Canonicalize RFC 2047 encoding and charset
@ 2013-08-18 13:52 Austin Clements
  2013-08-18 15:10 ` Jani Nikula
  2013-08-18 18:05 ` Tomi Ollila
  0 siblings, 2 replies; 7+ messages in thread
From: Austin Clements @ 2013-08-18 13:52 UTC (permalink / raw)
  To: notmuch

RFC 2047 states that the encoding and charset in an encoded word are
case-insensitive, so force them to lower case in the reply test.  This
fixes an issue caused by GMime versions (somewhere between 2.6.10 and
2.6.16), which changed the capitalization of the encoding.
---
 test/reply |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/test/reply b/test/reply
index d4389cf..a078927 100755
--- a/test/reply
+++ b/test/reply
@@ -201,12 +201,14 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \
 	    '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
 	    '[body]="Encoding"'
 
-output=$(notmuch reply id:${gen_msg_id})
-# Note that GMime changes from Q- to B-encoding
+# GMime happens to change from Q- to B-encoding.  We canonicalize the
+# case of the encoding and charset because different versions of GMime
+# capitalize the encoding differently.
+output=$(notmuch reply id:${gen_msg_id} | sed 's/=?[^?]*?[bB]?/\L&/g')
 test_expect_equal "$output" "\
 From: Notmuch Test Suite <test_suite@notmuchmail.org>
 Subject: Re: =?iso-8859-1?b?4N/n?=
-To: =?UTF-8?b?4piD?= <snowman@example.com>
+To: =?utf-8?b?4piD?= <snowman@example.com>
 In-Reply-To: <${gen_msg_id}>
 References: <${gen_msg_id}>
 
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] test: Canonicalize RFC 2047 encoding and charset
  2013-08-18 13:52 [PATCH] test: Canonicalize RFC 2047 encoding and charset Austin Clements
@ 2013-08-18 15:10 ` Jani Nikula
  2013-08-18 18:05 ` Tomi Ollila
  1 sibling, 0 replies; 7+ messages in thread
From: Jani Nikula @ 2013-08-18 15:10 UTC (permalink / raw)
  To: Austin Clements, notmuch

On Sun, 18 Aug 2013, Austin Clements <amdragon@MIT.EDU> wrote:
> RFC 2047 states that the encoding and charset in an encoded word are
> case-insensitive, so force them to lower case in the reply test.  This
> fixes an issue caused by GMime versions (somewhere between 2.6.10 and
> 2.6.16), which changed the capitalization of the encoding.

LGTM, and this fixes id:8738q8jzh3.fsf@nikula.org with GMime 2.6.16.

BR,
Jani.


> ---
>  test/reply |    8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/test/reply b/test/reply
> index d4389cf..a078927 100755
> --- a/test/reply
> +++ b/test/reply
> @@ -201,12 +201,14 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \
>  	    '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
>  	    '[body]="Encoding"'
>  
> -output=$(notmuch reply id:${gen_msg_id})
> -# Note that GMime changes from Q- to B-encoding
> +# GMime happens to change from Q- to B-encoding.  We canonicalize the
> +# case of the encoding and charset because different versions of GMime
> +# capitalize the encoding differently.
> +output=$(notmuch reply id:${gen_msg_id} | sed 's/=?[^?]*?[bB]?/\L&/g')
>  test_expect_equal "$output" "\
>  From: Notmuch Test Suite <test_suite@notmuchmail.org>
>  Subject: Re: =?iso-8859-1?b?4N/n?=
> -To: =?UTF-8?b?4piD?= <snowman@example.com>
> +To: =?utf-8?b?4piD?= <snowman@example.com>
>  In-Reply-To: <${gen_msg_id}>
>  References: <${gen_msg_id}>
>  
> -- 
> 1.7.10.4

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] test: Canonicalize RFC 2047 encoding and charset
  2013-08-18 13:52 [PATCH] test: Canonicalize RFC 2047 encoding and charset Austin Clements
  2013-08-18 15:10 ` Jani Nikula
@ 2013-08-18 18:05 ` Tomi Ollila
  2013-08-19 14:40   ` [PATCH v2] " Austin Clements
  1 sibling, 1 reply; 7+ messages in thread
From: Tomi Ollila @ 2013-08-18 18:05 UTC (permalink / raw)
  To: Austin Clements, notmuch

On Sun, Aug 18 2013, Austin Clements <amdragon@MIT.EDU> wrote:

> RFC 2047 states that the encoding and charset in an encoded word are
> case-insensitive, so force them to lower case in the reply test.  This
> fixes an issue caused by GMime versions (somewhere between 2.6.10 and
> 2.6.16), which changed the capitalization of the encoding.
> ---
>  test/reply |    8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/test/reply b/test/reply
> index d4389cf..a078927 100755
> --- a/test/reply
> +++ b/test/reply
> @@ -201,12 +201,14 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \
>  	    '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
>  	    '[body]="Encoding"'
>  
> -output=$(notmuch reply id:${gen_msg_id})
> -# Note that GMime changes from Q- to B-encoding
> +# GMime happens to change from Q- to B-encoding.  We canonicalize the
> +# case of the encoding and charset because different versions of GMime
> +# capitalize the encoding differently.
> +output=$(notmuch reply id:${gen_msg_id} | sed 's/=?[^?]*?[bB]?/\L&/g')

The sed expression looks fancy enough to be GNU sed extension (\L& doing
tolower to the matching part?). A more portable alternative could be: 

output=$(notmuch reply id:${gen_msg_id} | sed -e 's/?UTF-8?/?utf-8?/g' \
                 -e 's/?ISO-88591-1?/?iso-88591-1?/g' -e 's/?B?/?b?/g')

or alternatively (some bashism):

output=$(notmuch reply id:${gen_msg_id})
output=${output//\?UTF-8\?/?utf-8?}
output=${output//\?ISO-8859-1\?/?iso-8859-1?}
output=${output//\?B\?/?b?}


Tomi


>  test_expect_equal "$output" "\
>  From: Notmuch Test Suite <test_suite@notmuchmail.org>
>  Subject: Re: =?iso-8859-1?b?4N/n?=
> -To: =?UTF-8?b?4piD?= <snowman@example.com>
> +To: =?utf-8?b?4piD?= <snowman@example.com>
>  In-Reply-To: <${gen_msg_id}>
>  References: <${gen_msg_id}>
>  
> -- 
> 1.7.10.4
>
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2] test: Canonicalize RFC 2047 encoding and charset
  2013-08-18 18:05 ` Tomi Ollila
@ 2013-08-19 14:40   ` Austin Clements
  2013-08-19 14:43     ` Tomi Ollila
  2013-08-20  7:16     ` David Bremner
  0 siblings, 2 replies; 7+ messages in thread
From: Austin Clements @ 2013-08-19 14:40 UTC (permalink / raw)
  To: notmuch; +Cc: tomi.ollila

RFC 2047 states that the encoding and charset in an encoded word are
case-insensitive, so force them to lower case in the reply test.  This
fixes an issue caused by GMime versions (somewhere between 2.6.10 and
2.6.16), which changed the capitalization of the encoding.
---
 test/reply |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/test/reply b/test/reply
index d4389cf..b0d854a 100755
--- a/test/reply
+++ b/test/reply
@@ -201,12 +201,14 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \
 	    '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
 	    '[body]="Encoding"'
 
-output=$(notmuch reply id:${gen_msg_id})
-# Note that GMime changes from Q- to B-encoding
+# GMime happens to change from Q- to B-encoding.  We canonicalize the
+# case of the encoding and charset because different versions of GMime
+# capitalize the encoding differently.
+output=$(notmuch reply id:${gen_msg_id} | perl -pe 's/=\?[^?]+\?[bB]\?/lc($&)/ge')
 test_expect_equal "$output" "\
 From: Notmuch Test Suite <test_suite@notmuchmail.org>
 Subject: Re: =?iso-8859-1?b?4N/n?=
-To: =?UTF-8?b?4piD?= <snowman@example.com>
+To: =?utf-8?b?4piD?= <snowman@example.com>
 In-Reply-To: <${gen_msg_id}>
 References: <${gen_msg_id}>
 
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v2] test: Canonicalize RFC 2047 encoding and charset
  2013-08-19 14:40   ` [PATCH v2] " Austin Clements
@ 2013-08-19 14:43     ` Tomi Ollila
  2013-08-19 15:13       ` Jani Nikula
  2013-08-20  7:16     ` David Bremner
  1 sibling, 1 reply; 7+ messages in thread
From: Tomi Ollila @ 2013-08-19 14:43 UTC (permalink / raw)
  To: Austin Clements, notmuch

On Mon, Aug 19 2013, Austin Clements <amdragon@MIT.EDU> wrote:

> RFC 2047 states that the encoding and charset in an encoded word are
> case-insensitive, so force them to lower case in the reply test.  This
> fixes an issue caused by GMime versions (somewhere between 2.6.10 and
> 2.6.16), which changed the capitalization of the encoding.
> ---
>  test/reply |    8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/test/reply b/test/reply
> index d4389cf..b0d854a 100755
> --- a/test/reply
> +++ b/test/reply
> @@ -201,12 +201,14 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \
>  	    '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
>  	    '[body]="Encoding"'
>  
> -output=$(notmuch reply id:${gen_msg_id})
> -# Note that GMime changes from Q- to B-encoding
> +# GMime happens to change from Q- to B-encoding.  We canonicalize the
> +# case of the encoding and charset because different versions of GMime
> +# capitalize the encoding differently.
> +output=$(notmuch reply id:${gen_msg_id} | perl -pe 's/=\?[^?]+\?[bB]\?/lc($&)/ge')

LGTM.

Tomi


>  test_expect_equal "$output" "\
>  From: Notmuch Test Suite <test_suite@notmuchmail.org>
>  Subject: Re: =?iso-8859-1?b?4N/n?=
> -To: =?UTF-8?b?4piD?= <snowman@example.com>
> +To: =?utf-8?b?4piD?= <snowman@example.com>
>  In-Reply-To: <${gen_msg_id}>
>  References: <${gen_msg_id}>
>  
> -- 
> 1.7.10.4
>
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2] test: Canonicalize RFC 2047 encoding and charset
  2013-08-19 14:43     ` Tomi Ollila
@ 2013-08-19 15:13       ` Jani Nikula
  0 siblings, 0 replies; 7+ messages in thread
From: Jani Nikula @ 2013-08-19 15:13 UTC (permalink / raw)
  To: Tomi Ollila, Austin Clements, notmuch

On Mon, 19 Aug 2013, Tomi Ollila <tomi.ollila@iki.fi> wrote:
> On Mon, Aug 19 2013, Austin Clements <amdragon@MIT.EDU> wrote:
>
>> RFC 2047 states that the encoding and charset in an encoded word are
>> case-insensitive, so force them to lower case in the reply test.  This
>> fixes an issue caused by GMime versions (somewhere between 2.6.10 and
>> 2.6.16), which changed the capitalization of the encoding.
>> ---
>>  test/reply |    8 +++++---
>>  1 file changed, 5 insertions(+), 3 deletions(-)
>>
>> diff --git a/test/reply b/test/reply
>> index d4389cf..b0d854a 100755
>> --- a/test/reply
>> +++ b/test/reply
>> @@ -201,12 +201,14 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \
>>  	    '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
>>  	    '[body]="Encoding"'
>>  
>> -output=$(notmuch reply id:${gen_msg_id})
>> -# Note that GMime changes from Q- to B-encoding
>> +# GMime happens to change from Q- to B-encoding.  We canonicalize the
>> +# case of the encoding and charset because different versions of GMime
>> +# capitalize the encoding differently.
>> +output=$(notmuch reply id:${gen_msg_id} | perl -pe 's/=\?[^?]+\?[bB]\?/lc($&)/ge')
>
> LGTM.

And the relevant test passes with this version too.

Jani.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2] test: Canonicalize RFC 2047 encoding and charset
  2013-08-19 14:40   ` [PATCH v2] " Austin Clements
  2013-08-19 14:43     ` Tomi Ollila
@ 2013-08-20  7:16     ` David Bremner
  1 sibling, 0 replies; 7+ messages in thread
From: David Bremner @ 2013-08-20  7:16 UTC (permalink / raw)
  To: Austin Clements, notmuch; +Cc: tomi.ollila

Austin Clements <amdragon@MIT.EDU> writes:

> RFC 2047 states that the encoding and charset in an encoded word are
> case-insensitive, so force them to lower case in the reply test.  This
> fixes an issue caused by GMime versions (somewhere between 2.6.10 and
> 2.6.16), which changed the capitalization of the encoding.

pushed, 

d

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-08-20  7:16 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-18 13:52 [PATCH] test: Canonicalize RFC 2047 encoding and charset Austin Clements
2013-08-18 15:10 ` Jani Nikula
2013-08-18 18:05 ` Tomi Ollila
2013-08-19 14:40   ` [PATCH v2] " Austin Clements
2013-08-19 14:43     ` Tomi Ollila
2013-08-19 15:13       ` Jani Nikula
2013-08-20  7:16     ` David Bremner

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).