tests/test-notify.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 03 Feb 2022 18:14:11 +0100
changeset 48716 f1eb77dceb36
parent 44655 47e6ec977555
child 48874 af0b21d5a930
permissions -rw-r--r--
narrow: allow merging non-conflicting change outside of the narrow spec We use the mergestate to carry information about these merge action and reprocess them at commit time to apply the necessary update. The dirstate itself is never affected and remains "pure", with content only in the narrow-spec. This file involved in such merge are therefor not listed in `hg status`. The current testing is based on a modification of the previous testing, that refused to do such merges. As a result it is a bit simple and more extensive code and testing testing will have to be introduced later. I am planning to do this extra testing, soon. In addition, this only works for flat manifest. Support for tree manifest will need more work. I am not currently planning to do this work. Differential Revision: https://phab.mercurial-scm.org/D12119
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
     1
  $ cat > $TESTTMP/filter.py <<EOF
33969
cefad71d1a45 tests: update test-notify to pass our import checker
Augie Fackler <raf@durin42.com>
parents: 33718
diff changeset
     2
  > from __future__ import absolute_import, print_function
44655
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
     3
  > import io
33969
cefad71d1a45 tests: update test-notify to pass our import checker
Augie Fackler <raf@durin42.com>
parents: 33718
diff changeset
     4
  > import re
cefad71d1a45 tests: update test-notify to pass our import checker
Augie Fackler <raf@durin42.com>
parents: 33718
diff changeset
     5
  > import sys
44655
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
     6
  > if sys.version_info[0] >= 3:
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
     7
  >     sys.stdout = io.TextIOWrapper(
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
     8
  >         sys.stdout.buffer,
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
     9
  >         sys.stdout.encoding,
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
    10
  >         sys.stdout.errors,
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
    11
  >         newline="\n",
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
    12
  >         line_buffering=sys.stdout.line_buffering,
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
    13
  >     )
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
    14
  > print(re.sub("\n[ \t]", " ", sys.stdin.read()), end="")
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
    15
  > EOF
3740
aef384dbc731 add test for the notify extension
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    16
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    17
  $ cat <<EOF >> $HGRCPATH
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    18
  > [experimental]
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    19
  > evolution = true
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    20
  > 
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    21
  > [extensions]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    22
  > notify=
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    23
  > strip=
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    24
  > 
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    25
  > [phases]
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    26
  > publish=False
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    27
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    28
  > [hooks]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    29
  > incoming.notify = python:hgext.notify.hook
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    30
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    31
  > [notify]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    32
  > sources = pull
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    33
  > diffstat = False
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    34
  > reply-to-predecessor = True
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    35
  > messageidseed = notifyseed
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    36
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    37
  > [usersubs]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    38
  > foo@bar = *
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    39
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    40
  > [reposubs]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    41
  > * = baz
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    42
  > EOF
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    43
  $ hg help notify
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    44
  notify extension - hooks for sending email push notifications
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    45
  
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    46
  This extension implements hooks to send email notifications when changesets
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    47
  are sent from or received by the local repository.
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    48
  
27729
58f8b29c37ff minirst: change hgrole to use single quotes
timeless <timeless@mozdev.org>
parents: 22947
diff changeset
    49
  First, enable the extension as explained in 'hg help extensions', and register
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    50
  the hook you want to run. "incoming" and "changegroup" hooks are run when
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    51
  changesets are received, while "outgoing" hooks are for changesets sent to
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    52
  another repository:
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    53
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    54
    [hooks]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    55
    # one email for each incoming changeset
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    56
    incoming.notify = python:hgext.notify.hook
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    57
    # one email for all incoming changesets
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    58
    changegroup.notify = python:hgext.notify.hook
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    59
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    60
    # one email for all outgoing changesets
14617
23f4e1e40988 notify: send changesets on 'outgoing' hook, updated doc
Ingo Bressler <dev@ingobressler.net>
parents: 14162
diff changeset
    61
    outgoing.notify = python:hgext.notify.hook
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    62
  
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    63
  This registers the hooks. To enable notification, subscribers must be assigned
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    64
  to repositories. The "[usersubs]" section maps multiple repositories to a
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    65
  given recipient. The "[reposubs]" section maps multiple recipients to a single
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    66
  repository:
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    67
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    68
    [usersubs]
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    69
    # key is subscriber email, value is a comma-separated list of repo patterns
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    70
    user@host = pattern
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    71
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    72
    [reposubs]
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    73
    # key is repo pattern, value is a comma-separated list of subscriber emails
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    74
    pattern = user@host
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    75
  
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    76
  A "pattern" is a "glob" matching the absolute path to a repository, optionally
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    77
  combined with a revset expression. A revset expression, if present, is
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    78
  separated from the glob by a hash. Example:
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    79
  
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    80
    [reposubs]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    81
    */widgets#branch(release) = qa-team@example.com
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    82
  
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    83
  This sends to "qa-team@example.com" whenever a changeset on the "release"
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    84
  branch triggers a notification in any repository ending in "widgets".
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    85
  
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    86
  In order to place them under direct user management, "[usersubs]" and
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    87
  "[reposubs]" sections may be placed in a separate "hgrc" file and incorporated
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    88
  by reference:
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    89
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    90
    [notify]
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    91
    config = /path/to/subscriptionsfile
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    92
  
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    93
  Notifications will not be sent until the "notify.test" value is set to
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    94
  "False"; see below.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    95
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    96
  Notifications content can be tweaked with the following configuration entries:
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    97
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    98
  notify.test
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    99
    If "True", print messages to stdout instead of sending them. Default: True.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   100
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   101
  notify.sources
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   102
    Space-separated list of change sources. Notifications are activated only
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   103
    when a changeset's source is in this list. Sources may be:
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   104
  
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   105
    "serve"       changesets received via http or ssh
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   106
    "pull"        changesets received via "hg pull"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   107
    "unbundle"    changesets received via "hg unbundle"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   108
    "push"        changesets sent or received via "hg push"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   109
    "bundle"      changesets sent via "hg unbundle"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   110
  
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   111
    Default: serve.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   112
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   113
  notify.strip
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   114
    Number of leading slashes to strip from url paths. By default, notifications
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   115
    reference repositories with their absolute path. "notify.strip" lets you
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   116
    turn them into relative paths. For example, "notify.strip=3" will change
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   117
    "/long/path/repository" into "repository". Default: 0.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   118
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   119
  notify.domain
42904
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   120
    Default email domain for sender or recipients with no explicit domain. It is
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   121
    also used for the domain part of the "Message-Id" when using
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   122
    "notify.messageidseed".
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   123
  
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   124
  notify.messageidseed
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   125
    Create deterministic "Message-Id" headers for the mails based on the seed
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   126
    and the revision identifier of the first commit in the changeset.
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   127
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   128
  notify.style
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   129
    Style file to use when formatting emails.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   130
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   131
  notify.template
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   132
    Template to use when formatting emails.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   133
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   134
  notify.incoming
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   135
    Template to use when run as an incoming hook, overriding "notify.template".
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   136
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   137
  notify.outgoing
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   138
    Template to use when run as an outgoing hook, overriding "notify.template".
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   139
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   140
  notify.changegroup
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   141
    Template to use when running as a changegroup hook, overriding
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   142
    "notify.template".
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   143
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   144
  notify.maxdiff
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   145
    Maximum number of diff lines to include in notification email. Set to 0 to
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   146
    disable the diff, or -1 to include all of it. Default: 300.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   147
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   148
  notify.maxdiffstat
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   149
    Maximum number of diffstat lines to include in notification email. Set to -1
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   150
    to include all of it. Default: -1.
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   151
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   152
  notify.maxsubject
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   153
    Maximum number of characters in email's subject line. Default: 67.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   154
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   155
  notify.diffstat
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   156
    Set to True to include a diffstat before diff content. Default: True.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   157
  
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   158
  notify.showfunc
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   159
    If set, override "diff.showfunc" for the diff content. Default: None.
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   160
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   161
  notify.merge
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   162
    If True, send notifications for merge changesets. Default: True.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   163
  
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   164
  notify.mbox
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   165
    If set, append mails to this mbox file instead of sending. Default: None.
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   166
  
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15562
diff changeset
   167
  notify.fromauthor
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   168
    If set, use the committer of the first changeset in a changegroup for the
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   169
    "From" field of the notification mail. If not set, take the user from the
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   170
    pushing repo.  Default: False.
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15562
diff changeset
   171
  
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   172
  notify.reply-to-predecessor (EXPERIMENTAL)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   173
    If set and the changeset has a predecessor in the repository, try to thread
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   174
    the notification mail with the predecessor. This adds the "In-Reply-To"
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   175
    header to the notification mail with a reference to the predecessor with the
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   176
    smallest revision number. Mail threads can still be torn, especially when
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   177
    changesets are folded.
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   178
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   179
    This option must  be used in combination with "notify.messageidseed".
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   180
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   181
  If set, the following entries will also be used to customize the
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   182
  notifications:
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   183
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   184
  email.from
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   185
    Email "From" address to use if none can be found in the generated email
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   186
    content.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   187
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   188
  web.baseurl
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   189
    Root repository URL to combine with repository paths when making references.
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   190
    See also "notify.strip".
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   191
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   192
  no commands defined
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   193
  $ hg init a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   194
  $ echo a > a/a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   195
  $ echo b > a/b
3740
aef384dbc731 add test for the notify extension
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   196
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   197
commit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   198
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   199
  $ hg --cwd a commit -Ama -d '0 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   200
  adding a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   201
  adding b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   202
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   203
clone
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   204
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   205
  $ hg --traceback clone a b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   206
  updating to branch default
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   207
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   208
  $ echo a >> a/a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   209
  $ echo b >> a/b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   210
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   211
commit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   212
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   213
  $ hg --traceback --cwd a commit -Amb -d '1 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   214
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   215
on Mac OS X 10.5 the tmp path is very long so would get stripped in the subject line
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   216
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   217
  $ cat <<EOF >> $HGRCPATH
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   218
  > [notify]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   219
  > maxsubject = 200
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   220
  > EOF
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   221
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   222
the python call below wraps continuation lines, which appear on Mac OS X 10.5 because
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   223
of the very long subject line
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   224
pull (minimal config)
6359
25e74cd3f023 test-notify: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 4517
diff changeset
   225
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   226
  $ hg --traceback --cwd b --config notify.domain=example.com --config notify.messageidseed=example pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   227
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   228
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   229
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   230
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   231
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   232
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   233
  adding file changes
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   234
  added 1 changesets with 2 changes to 2 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   235
  new changesets 00a13f371396 (1 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   236
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   237
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   238
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   239
  Date: * (glob)
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12473
diff changeset
   240
  Subject: changeset in $TESTTMP/b: b
42904
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   241
  From: test@example.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   242
  X-Hg-Notification: changeset 00a13f371396
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   243
  Message-Id: <hg.ba3098a36bd4c297288d16788623a841f81f618ea961a0f0fd65de7eb1191b66@example.com>
42904
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   244
  To: baz@example.com, foo@bar
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   245
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   246
  changeset 00a13f371396 in $TESTTMP/b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   247
  details: $TESTTMP/b?cmd=changeset;node=00a13f371396
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   248
  description: b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   249
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   250
  diffs (12 lines):
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   251
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   252
  diff -r 0cd96de13884 -r 00a13f371396 a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   253
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   254
  +++ b/a	Thu Jan 01 00:00:01 1970 +0000
12646
624859bf4314 test-notify: fix fix for line continuation in long mail header lines
Mads Kiilerich <mads@kiilerich.com>
parents: 12644
diff changeset
   255
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   256
  +a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   257
  diff -r 0cd96de13884 -r 00a13f371396 b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   258
  --- a/b	Thu Jan 01 00:00:00 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   259
  +++ b/b	Thu Jan 01 00:00:01 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   260
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   261
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   262
  (run 'hg update' to get a working copy)
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   263
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   264
  $ cat <<EOF >> $HGRCPATH
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   265
  > [notify]
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   266
  > config = `pwd`/.notify.conf
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   267
  > domain = test.com
12644
0490d2223882 test-notify: stabilize output
Mads Kiilerich <mads@kiilerich.com>
parents: 12642
diff changeset
   268
  > strip = 42
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   269
  > template = Subject: {desc|firstline|strip}\nFrom: {author}\nX-Test: foo\n\nchangeset {node|short} in {webroot}\ndescription:\n\t{desc|tabindent|strip}
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   270
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   271
  > [web]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   272
  > baseurl = http://test/
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   273
  > EOF
4094
fbf0e9acfd83 notify: don't try to fix addresses if notify.domain is not set
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4009
diff changeset
   274
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   275
fail for config file is missing
4094
fbf0e9acfd83 notify: don't try to fix addresses if notify.domain is not set
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4009
diff changeset
   276
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   277
  $ hg --cwd b rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13225
diff changeset
   278
  repository tip rolled back to revision 0 (undo pull)
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   279
  $ hg --cwd b pull ../a 2>&1 | grep 'error.*\.notify\.conf' > /dev/null && echo pull failed
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   280
  pull failed
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   281
  $ touch ".notify.conf"
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   282
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   283
pull
4094
fbf0e9acfd83 notify: don't try to fix addresses if notify.domain is not set
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4009
diff changeset
   284
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   285
  $ hg --cwd b rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13225
diff changeset
   286
  repository tip rolled back to revision 0 (undo pull)
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   287
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   288
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   289
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   290
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   291
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   292
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   293
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   294
  adding file changes
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   295
  added 1 changesets with 2 changes to 2 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   296
  new changesets 00a13f371396 (1 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   297
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   298
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   299
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   300
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   301
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   302
  Subject: b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   303
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   304
  X-Hg-Notification: changeset 00a13f371396
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   305
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   306
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   307
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   308
  changeset 00a13f371396 in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   309
  description: b
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   310
  diffs (12 lines):
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   311
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   312
  diff -r 0cd96de13884 -r 00a13f371396 a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   313
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   314
  +++ b/a	Thu Jan 01 00:00:01 1970 +0000
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   315
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   316
  +a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   317
  diff -r 0cd96de13884 -r 00a13f371396 b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   318
  --- a/b	Thu Jan 01 00:00:00 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   319
  +++ b/b	Thu Jan 01 00:00:01 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   320
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   321
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   322
  (run 'hg update' to get a working copy)
4517
5371a213b0f4 ui: make readsections() abort when configuration cannot be read.
Patrick Mezard <pmezard@gmail.com>
parents: 4479
diff changeset
   323
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   324
  $ cat << EOF >> $HGRCPATH
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   325
  > [hooks]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   326
  > incoming.notify = python:hgext.notify.hook
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   327
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   328
  > [notify]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   329
  > sources = pull
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   330
  > diffstat = True
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   331
  > EOF
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   332
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   333
pull
4094
fbf0e9acfd83 notify: don't try to fix addresses if notify.domain is not set
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4009
diff changeset
   334
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   335
  $ hg --cwd b rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13225
diff changeset
   336
  repository tip rolled back to revision 0 (undo pull)
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   337
  $ hg --traceback --config notify.maxdiffstat=1 --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   338
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   339
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   340
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   341
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   342
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   343
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   344
  adding file changes
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   345
  added 1 changesets with 2 changes to 2 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   346
  new changesets 00a13f371396 (1 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   347
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   348
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   349
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   350
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   351
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   352
  Subject: b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   353
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   354
  X-Hg-Notification: changeset 00a13f371396
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   355
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   356
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   357
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   358
  changeset 00a13f371396 in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   359
  description: b
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   360
  diffstat (truncated from 2 to 1 lines):
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   361
   a |  1 + 2 files changed, 2 insertions(+), 0 deletions(-)
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   362
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   363
  diffs (12 lines):
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   364
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   365
  diff -r 0cd96de13884 -r 00a13f371396 a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   366
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   367
  +++ b/a	Thu Jan 01 00:00:01 1970 +0000
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   368
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   369
  +a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   370
  diff -r 0cd96de13884 -r 00a13f371396 b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   371
  --- a/b	Thu Jan 01 00:00:00 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   372
  +++ b/b	Thu Jan 01 00:00:01 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   373
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   374
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   375
  (run 'hg update' to get a working copy)
7105
31837416ef4d tests: add some testing for patch.diffstat()
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6359
diff changeset
   376
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   377
test merge
7105
31837416ef4d tests: add some testing for patch.diffstat()
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6359
diff changeset
   378
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   379
  $ cd a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   380
  $ hg up -C 0
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   381
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   382
  $ echo a >> a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   383
  $ hg ci -Am adda2 -d '2 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   384
  created new head
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   385
  $ hg merge
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   386
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   387
  (branch merge, don't forget to commit)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   388
  $ hg ci -m merge -d '3 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   389
  $ cd ..
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   390
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   391
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   392
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   393
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   394
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   395
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   396
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   397
  adding file changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   398
  added 2 changesets with 0 changes to 0 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   399
  new changesets 3332653e1f3c:fccf66cd0c35 (2 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   400
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   401
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   402
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   403
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   404
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   405
  Subject: adda2
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   406
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   407
  X-Hg-Notification: changeset 3332653e1f3c
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   408
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   409
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   410
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   411
  changeset 3332653e1f3c in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   412
  description: adda2
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   413
  diffstat:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   414
   a |  1 + 1 files changed, 1 insertions(+), 0 deletions(-)
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   415
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   416
  diffs (6 lines):
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   417
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   418
  diff -r 0cd96de13884 -r 3332653e1f3c a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   419
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   420
  +++ b/a	Thu Jan 01 00:00:02 1970 +0000
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   421
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   422
  +a
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   423
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   424
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   425
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   426
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   427
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   428
  Subject: merge
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   429
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   430
  X-Hg-Notification: changeset fccf66cd0c35
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   431
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   432
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   433
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   434
  changeset fccf66cd0c35 in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   435
  description: merge
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   436
  diffstat:
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   437
   b |  1 + 1 files changed, 1 insertions(+), 0 deletions(-)
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   438
  
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   439
  diffs (6 lines):
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   440
  
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   441
  diff -r 3332653e1f3c -r fccf66cd0c35 b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   442
  --- a/b	Thu Jan 01 00:00:02 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   443
  +++ b/b	Thu Jan 01 00:00:03 1970 +0000
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   444
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   445
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   446
  (run 'hg update' to get a working copy)
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   447
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   448
non-ascii content and truncation of multi-byte subject
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   449
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   450
  $ cat <<EOF >> $HGRCPATH
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   451
  > [notify]
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   452
  > maxsubject = 4
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   453
  > EOF
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   454
  $ echo a >> a/a
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   455
  $ hg --cwd a --encoding utf-8 commit -A -d '0 0' \
43331
90ee1f61504e py3: fix generated non-ascii message in test-notify.t
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43323
diff changeset
   456
  >   -m `"$PYTHON" -c 'import sys; getattr(sys.stdout, "buffer", sys.stdout).write(b"\xc3\xa0\xc3\xa1\xc3\xa2\xc3\xa3\xc3\xa4")'`
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   457
  $ hg --traceback --cwd b --encoding utf-8 pull ../a | \
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   458
  >   "$PYTHON" $TESTDIR/unwrap-message-id.py | \
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38028
diff changeset
   459
  >   "$PYTHON" $TESTTMP/filter.py
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   460
  pulling from ../a
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   461
  searching for changes
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   462
  adding changesets
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   463
  adding manifests
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   464
  adding file changes
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   465
  added 1 changesets with 1 changes to 1 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   466
  new changesets 0f25f9c22b4c (1 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   467
  MIME-Version: 1.0
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   468
  Content-Type: text/plain; charset="us-ascii"
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   469
  Content-Transfer-Encoding: 8bit
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   470
  X-Test: foo
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   471
  Date: * (glob)
43331
90ee1f61504e py3: fix generated non-ascii message in test-notify.t
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43323
diff changeset
   472
  Subject: \xc3\xa0... (esc) (no-py3 !)
90ee1f61504e py3: fix generated non-ascii message in test-notify.t
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43323
diff changeset
   473
  Subject: =?utf-8?b?w6AuLi4=?= (py3 !)
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   474
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   475
  X-Hg-Notification: changeset 0f25f9c22b4c
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   476
  Message-Id: <*> (glob)
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   477
  To: baz@test.com, foo@bar
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   478
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   479
  changeset 0f25f9c22b4c in b
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   480
  description: \xc3\xa0\xc3\xa1\xc3\xa2\xc3\xa3\xc3\xa4 (esc)
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   481
  diffstat:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   482
   a |  1 + 1 files changed, 1 insertions(+), 0 deletions(-)
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   483
  
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   484
  diffs (7 lines):
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   485
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   486
  diff -r fccf66cd0c35 -r 0f25f9c22b4c a
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   487
  --- a/a	Thu Jan 01 00:00:03 1970 +0000
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   488
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   489
  @@ -1,2 +1,3 @@ a a
13225
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   490
  +a
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   491
  (run 'hg update' to get a working copy)
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   492
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   493
long lines
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   494
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   495
  $ cat <<EOF >> $HGRCPATH
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   496
  > [notify]
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   497
  > maxsubject = 67
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   498
  > test = False
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   499
  > mbox = mbox
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   500
  > EOF
41526
1be7a9b994a2 py3: add some b'' prefixes in test-notify.t
Pulkit Goyal <pulkit@yandex-team.ru>
parents: 39912
diff changeset
   501
  $ "$PYTHON" -c 'open("a/a", "ab").write(b"no" * 500 + b"\xd1\x84" + b"\n")'
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   502
  $ hg --cwd a commit -A -m "long line"
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   503
  $ hg --traceback --cwd b pull ../a
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   504
  pulling from ../a
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   505
  searching for changes
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   506
  adding changesets
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   507
  adding manifests
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   508
  adding file changes
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   509
  added 1 changesets with 1 changes to 1 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   510
  new changesets a846b5f6ebb7 (1 drafts)
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   511
  notify: sending 2 subscribers 1 changes
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   512
  (run 'hg update' to get a working copy)
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   513
  $ cat b/mbox | "$PYTHON" $TESTDIR/unwrap-message-id.py | "$PYTHON" $TESTTMP/filter.py
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   514
  From test@test.com ... ... .. ..:..:.. .... (re)
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   515
  MIME-Version: 1.0
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   516
  Content-Type: text/plain; charset="*" (glob)
15562
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   517
  Content-Transfer-Encoding: quoted-printable
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   518
  X-Test: foo
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   519
  Date: * (glob)
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   520
  Subject: long line
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   521
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   522
  X-Hg-Notification: changeset a846b5f6ebb7
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   523
  Message-Id: <hg.e7dc7658565793ff33c797e72b7d1f3799347b042af3c40df6d17c8d5c3e560a@test.com>
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   524
  To: baz@test.com, foo@bar
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   525
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   526
  changeset a846b5f6ebb7 in b
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   527
  description: long line
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   528
  diffstat:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   529
   a |  1 + 1 files changed, 1 insertions(+), 0 deletions(-)
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   530
  
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   531
  diffs (8 lines):
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   532
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   533
  diff -r 0f25f9c22b4c -r a846b5f6ebb7 a
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   534
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   535
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   536
  @@ -1,3 +1,4 @@ a a a
15562
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   537
  +nonononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   538
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   539
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   540
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   541
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   542
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   543
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   544
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   545
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   546
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   547
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   548
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   549
  ononononononononononononononononononononononononononononononononononononono=
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   550
  nonononononononononononono=D1=84
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   551
  
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   552
 revset selection: send to address that matches branch and repo
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   553
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   554
  $ cat << EOF >> $HGRCPATH
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   555
  > [hooks]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   556
  > incoming.notify = python:hgext.notify.hook
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   557
  > 
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   558
  > [notify]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   559
  > sources = pull
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   560
  > test = True
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   561
  > diffstat = False
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   562
  > maxdiff = 0
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   563
  > 
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   564
  > [reposubs]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   565
  > */a#branch(test) = will_no_be_send@example.com
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   566
  > */b#branch(test) = notify@example.com
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   567
  > EOF
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   568
  $ hg --cwd a branch test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   569
  marked working directory as branch test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   570
  (branches are permanent and global, did you want a bookmark?)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   571
  $ echo a >> a/a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   572
  $ hg --cwd a ci -m test -d '1 0'
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   573
  $ echo a >> a/a
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   574
  $ hg --cwd a ci -m test -d '1 0'
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   575
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   576
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   577
  >  "$PYTHON" $TESTTMP/filter.py
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   578
  pulling from ../a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   579
  searching for changes
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   580
  adding changesets
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   581
  adding manifests
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   582
  adding file changes
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   583
  added 2 changesets with 2 changes to 1 files
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   584
  new changesets f7e5aaed4080:485bf79b9464 (2 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   585
  MIME-Version: 1.0
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   586
  Content-Type: text/plain; charset="us-ascii"
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   587
  Content-Transfer-Encoding: 7bit
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   588
  X-Test: foo
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   589
  Date: * (glob)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   590
  Subject: test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   591
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   592
  X-Hg-Notification: changeset f7e5aaed4080
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   593
  Message-Id: <hg.12e9ae631e2529e9cfbe7a93be0dd8a401280700640f802a60f20d7be659251d@test.com>
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   594
  To: baz@test.com, foo@bar, notify@example.com
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   595
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   596
  changeset f7e5aaed4080 in b
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   597
  description: test
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   598
  MIME-Version: 1.0
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   599
  Content-Type: text/plain; charset="us-ascii"
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   600
  Content-Transfer-Encoding: 7bit
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   601
  X-Test: foo
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   602
  Date: * (glob)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   603
  Subject: test
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   604
  From: test@test.com
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   605
  X-Hg-Notification: changeset 485bf79b9464
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   606
  Message-Id: <hg.15281d60c27d9d5fb70435d33ebc24cb5aa580f2535988dcb9923c26e8bc5c47@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   607
  To: baz@test.com, foo@bar, notify@example.com
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   608
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   609
  changeset 485bf79b9464 in b
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   610
  description: test
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   611
  (run 'hg update' to get a working copy)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   612
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   613
revset selection: don't send to address that waits for mails
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   614
from different branch
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   615
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   616
  $ hg --cwd a update default
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   617
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   618
  $ echo a >> a/a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   619
  $ hg --cwd a ci -m test -d '1 0'
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   620
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   621
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   622
  >  "$PYTHON" $TESTTMP/filter.py
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   623
  pulling from ../a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   624
  searching for changes
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   625
  adding changesets
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   626
  adding manifests
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   627
  adding file changes
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   628
  added 1 changesets with 0 changes to 0 files (+1 heads)
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   629
  new changesets 645eb6690ecf (1 drafts)
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   630
  MIME-Version: 1.0
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   631
  Content-Type: text/plain; charset="us-ascii"
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   632
  Content-Transfer-Encoding: 7bit
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   633
  X-Test: foo
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   634
  Date: * (glob)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   635
  Subject: test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   636
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   637
  X-Hg-Notification: changeset 645eb6690ecf
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   638
  Message-Id: <hg.ba26b2c63e7deb44e86c934aeea147edde12a11b6ac94bda103dcab5028dc928@test.com>
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   639
  To: baz@test.com, foo@bar
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   640
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   641
  changeset 645eb6690ecf in b
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   642
  description: test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   643
  (run 'hg heads' to see heads)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   644
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   645
default template:
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   646
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   647
  $ grep -v '^template =' $HGRCPATH > "$HGRCPATH.new"
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   648
  $ mv "$HGRCPATH.new" $HGRCPATH
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   649
  $ echo a >> a/a
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   650
  $ hg --cwd a commit -m 'default template'
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   651
  $ hg --cwd b pull ../a -q | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   652
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   653
  >  "$PYTHON" $TESTTMP/filter.py
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   654
  MIME-Version: 1.0
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   655
  Content-Type: text/plain; charset="us-ascii"
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   656
  Content-Transfer-Encoding: 7bit
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   657
  Date: * (glob)
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   658
  Subject: changeset in b: default template
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   659
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   660
  X-Hg-Notification: changeset 5cd4346eed47
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   661
  Message-Id: <hg.8caa7941b24fc673d10910cb072e2d167362a3c5111cafefa47190d9b831f0a3@test.com>
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   662
  To: baz@test.com, foo@bar
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   663
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   664
  changeset 5cd4346eed47 in $TESTTMP/b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   665
  details: http://test/b?cmd=changeset;node=5cd4346eed47
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   666
  description: default template
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   667
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   668
with style:
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   669
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   670
  $ cat <<EOF > notifystyle.map
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   671
  > changeset = "Subject: {desc|firstline|strip}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   672
  >              From: {author}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   673
  >              {""}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   674
  >              changeset {node|short}"
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   675
  > EOF
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   676
  $ cat <<EOF >> $HGRCPATH
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   677
  > [notify]
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   678
  > style = $TESTTMP/notifystyle.map
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   679
  > EOF
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   680
  $ echo a >> a/a
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   681
  $ hg --cwd a commit -m 'with style'
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   682
  $ hg --cwd b pull ../a -q | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   683
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   684
  >  "$PYTHON" $TESTTMP/filter.py
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   685
  MIME-Version: 1.0
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   686
  Content-Type: text/plain; charset="us-ascii"
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   687
  Content-Transfer-Encoding: 7bit
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   688
  Date: * (glob)
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   689
  Subject: with style
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   690
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   691
  X-Hg-Notification: changeset ec8d9d852f56
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   692
  Message-Id: <hg.ccd5049818a6a277251189ce1d6d0cca10723d58214199e7178894adb99ed918@test.com>
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   693
  To: baz@test.com, foo@bar
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   694
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   695
  changeset ec8d9d852f56
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   696
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   697
with template (overrides style):
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   698
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   699
  $ cat <<EOF >> $HGRCPATH
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   700
  > template = Subject: {node|short}: {desc|firstline|strip}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   701
  >            From: {author}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   702
  >            {""}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   703
  >            {desc}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   704
  > EOF
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   705
  $ echo a >> a/a
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   706
  $ hg --cwd a commit -m 'with template'
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   707
  $ hg --cwd b pull ../a -q | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   708
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   709
  >  "$PYTHON" $TESTTMP/filter.py
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   710
  MIME-Version: 1.0
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   711
  Content-Type: text/plain; charset="us-ascii"
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   712
  Content-Transfer-Encoding: 7bit
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   713
  Date: * (glob)
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   714
  Subject: 14721b538ae3: with template
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   715
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   716
  X-Hg-Notification: changeset 14721b538ae3
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   717
  Message-Id: <hg.7edb9765307a5a24528f3964672e794e2d21f2479e96c099bf52e02abd17b3a2@test.com>
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   718
  To: baz@test.com, foo@bar
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   719
  
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   720
  with template
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   721
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   722
showfunc diff
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   723
  $ cat <<EOF >> $HGRCPATH
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   724
  > showfunc = True
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   725
  > template =
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   726
  > maxdiff = -1
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   727
  > EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   728
  $ cd a
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   729
  $ cat > f1 << EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   730
  > int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   731
  >     int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   732
  >     int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   733
  >     int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   734
  >     int d = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   735
  >     return a + b + c + d;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   736
  > }
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   737
  > EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   738
  $ hg commit -Am addfunction
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   739
  adding f1
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   740
  $ hg debugobsolete eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee b86bc16ff894f057d023b306936f290954857187
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   741
  1 new obsolescence markers
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   742
  $ hg --cwd ../b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   743
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   744
  pulling from ../a
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   745
  searching for changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   746
  adding changesets
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   747
  adding manifests
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   748
  adding file changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   749
  added 1 changesets with 1 changes to 1 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   750
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   751
  new changesets b86bc16ff894 (1 drafts)
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   752
  MIME-Version: 1.0
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   753
  Content-Type: text/plain; charset="us-ascii"
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   754
  Content-Transfer-Encoding: 7bit
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   755
  Date: * (glob)
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   756
  Subject: addfunction
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   757
  From: test@test.com
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   758
  X-Hg-Notification: changeset b86bc16ff894
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   759
  Message-Id: <hg.4c7cacfbbd6ba170656be0c8fc0d7599bd925c0d545b836816be9983e6d08448@test.com>
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   760
  To: baz@test.com, foo@bar
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   761
  
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   762
  changeset b86bc16ff894
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   763
  diffs (11 lines):
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   764
  
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   765
  diff -r 14721b538ae3 -r b86bc16ff894 f1
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   766
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   767
  +++ b/f1	Thu Jan 01 00:00:00 1970 +0000
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   768
  @@ -0,0 +1,7 @@
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   769
  +int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   770
  +    int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   771
  +    int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   772
  +    int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   773
  +    int d = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   774
  +    return a + b + c + d;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   775
  +}
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   776
  (run 'hg update' to get a working copy)
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   777
  $ cat > f1 << EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   778
  > int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   779
  >     int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   780
  >     int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   781
  >     int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   782
  >     int e = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   783
  >     return a + b + c + e;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   784
  > }
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   785
  > EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   786
  $ hg commit -m changefunction
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   787
  $ hg debugobsolete 485bf79b9464197b2ed2debd0b16252ad64ed458 e81040e9838c704d8bf17658cb11758f24e40b6b
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   788
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   789
  obsoleted 1 changesets
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   790
  $ hg --cwd ../b --config notify.showfunc=True pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   791
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   792
  pulling from ../a
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   793
  searching for changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   794
  adding changesets
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   795
  adding manifests
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   796
  adding file changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   797
  added 1 changesets with 1 changes to 1 files
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   798
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   799
  obsoleted 1 changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   800
  new changesets e81040e9838c (1 drafts)
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   801
  MIME-Version: 1.0
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   802
  Content-Type: text/plain; charset="us-ascii"
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   803
  Content-Transfer-Encoding: 7bit
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   804
  Date: * (glob)
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   805
  Subject: changefunction
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   806
  From: test@test.com
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   807
  X-Hg-Notification: changeset e81040e9838c
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   808
  Message-Id: <hg.99b80bf1c5d0bf8f8a7e60107c1aa1da367a5943b2a70a8b36517d701557edff@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   809
  In-Reply-To: <hg.15281d60c27d9d5fb70435d33ebc24cb5aa580f2535988dcb9923c26e8bc5c47@test.com>
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   810
  To: baz@test.com, foo@bar
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   811
  
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   812
  changeset e81040e9838c
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   813
  diffs (12 lines):
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   814
  
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   815
  diff -r b86bc16ff894 -r e81040e9838c f1
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   816
  --- a/f1	Thu Jan 01 00:00:00 1970 +0000
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   817
  +++ b/f1	Thu Jan 01 00:00:00 1970 +0000
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   818
  @@ -2,6 +2,6 @@ int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   819
       int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   820
       int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   821
       int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   822
  -    int d = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   823
  -    return a + b + c + d;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   824
  +    int e = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   825
  +    return a + b + c + e;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   826
   }
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   827
  (run 'hg update' to get a working copy)
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   828
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   829
Retry the In-Reply-To, but make sure the oldest known change is older.
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   830
This can happen when folding commits that have been rebased by another user.
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   831
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   832
  $ hg --cwd ../b strip tip
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   833
  saved backup bundle to $TESTTMP/b/.hg/strip-backup/e81040e9838c-10aad4de-backup.hg
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   834
  $ hg debugobsolete f7e5aaed408029cfe9890318245e87ef44739fdd e81040e9838c704d8bf17658cb11758f24e40b6b
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   835
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   836
  obsoleted 1 changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   837
  $ hg --cwd ../b --config notify.showfunc=True pull ../a | \
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   838
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   839
  pulling from ../a
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   840
  searching for changes
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   841
  adding changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   842
  adding manifests
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   843
  adding file changes
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   844
  added 1 changesets with 1 changes to 1 files
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   845
  2 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   846
  obsoleted 2 changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   847
  new changesets e81040e9838c (1 drafts)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   848
  MIME-Version: 1.0
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   849
  Content-Type: text/plain; charset="us-ascii"
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   850
  Content-Transfer-Encoding: 7bit
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   851
  Date: * (glob)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   852
  Subject: changefunction
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   853
  From: test@test.com
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   854
  X-Hg-Notification: changeset e81040e9838c
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   855
  Message-Id: <hg.99b80bf1c5d0bf8f8a7e60107c1aa1da367a5943b2a70a8b36517d701557edff@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   856
  In-Reply-To: <hg.12e9ae631e2529e9cfbe7a93be0dd8a401280700640f802a60f20d7be659251d@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   857
  To: baz@test.com, foo@bar
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   858
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   859
  changeset e81040e9838c
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   860
  diffs (12 lines):
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   861
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   862
  diff -r b86bc16ff894 -r e81040e9838c f1
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   863
  --- a/f1	Thu Jan 01 00:00:00 1970 +0000
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   864
  +++ b/f1	Thu Jan 01 00:00:00 1970 +0000
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   865
  @@ -2,6 +2,6 @@ int main() {
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   866
       int a = 0;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   867
       int b = 1;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   868
       int c = 2;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   869
  -    int d = 3;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   870
  -    return a + b + c + d;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   871
  +    int e = 3;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   872
  +    return a + b + c + e;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   873
   }
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   874
  (run 'hg update' to get a working copy)