tests/test-notify.t
author Manuel Jacob <me@manueljacob.de>
Sun, 22 May 2022 03:50:34 +0200
changeset 49269 395f28064826
parent 48944 fe3303436b79
child 49876 950c39918bd2
permissions -rw-r--r--
worker: avoid potential partial write of pickled data Previously, the code wrote the pickled data using os.write(). However, os.write() can write less bytes than passed to it. To trigger the problem, the pickled data had to be larger than 2147479552 bytes on my system. Instead, open a file object and pass it to pickle.dump(). This also has the advantage that it doesn’t buffer the whole pickled data in memory. Note that the opened file must be buffered because pickle doesn’t support unbuffered streams because unbuffered streams’ write() method might write less bytes than passed to it (like os.write()) but pickle.dump() relies on that all bytes are written (see https://github.com/python/cpython/issues/93050). The side effect of using a file object and a with statement is that wfd is explicitly closed now while it seems like before it was implicitly closed by process exit.
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
44655
47e6ec977555 tests: prevent printing \r to stdout
Gregory Szorc <gregory.szorc@gmail.com>
parents: 44627
diff changeset
     2
  > import io
33969
cefad71d1a45 tests: update test-notify to pass our import checker
Augie Fackler <raf@durin42.com>
parents: 33718
diff changeset
     3
  > import re
cefad71d1a45 tests: update test-notify to pass our import checker
Augie Fackler <raf@durin42.com>
parents: 33718
diff changeset
     4
  > import sys
48944
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
     5
  > sys.stdout = io.TextIOWrapper(
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
     6
  >     sys.stdout.buffer,
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
     7
  >     sys.stdout.encoding,
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
     8
  >     sys.stdout.errors,
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
     9
  >     newline="\n",
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
    10
  >     line_buffering=sys.stdout.line_buffering,
fe3303436b79 tests: remove Python 2 support code
Gregory Szorc <gregory.szorc@gmail.com>
parents: 48876
diff changeset
    11
  > )
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
    12
  > 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
    13
  > EOF
3740
aef384dbc731 add test for the notify extension
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    14
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    15
  $ cat <<EOF >> $HGRCPATH
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    16
  > [experimental]
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    17
  > evolution = true
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    18
  > 
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    19
  > [extensions]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    20
  > notify=
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    21
  > strip=
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    22
  > 
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    23
  > [phases]
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    24
  > publish=False
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    25
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    26
  > [hooks]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    27
  > incoming.notify = python:hgext.notify.hook
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    28
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    29
  > [notify]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    30
  > sources = pull
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    31
  > diffstat = False
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    32
  > reply-to-predecessor = True
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
    33
  > messageidseed = notifyseed
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    34
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    35
  > [usersubs]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    36
  > foo@bar = *
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    37
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    38
  > [reposubs]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    39
  > * = baz
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    40
  > EOF
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    41
  $ hg help notify
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    42
  notify extension - hooks for sending email push notifications
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    43
  
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    44
  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
    45
  are sent from or received by the local repository.
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    46
  
27729
58f8b29c37ff minirst: change hgrole to use single quotes
timeless <timeless@mozdev.org>
parents: 22947
diff changeset
    47
  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
    48
  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
    49
  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
    50
  another repository:
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    51
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    52
    [hooks]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    53
    # one email for each incoming changeset
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    54
    incoming.notify = python:hgext.notify.hook
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    55
    # one email for all incoming changesets
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    56
    changegroup.notify = python:hgext.notify.hook
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    57
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    58
    # 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
    59
    outgoing.notify = python:hgext.notify.hook
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    60
  
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    61
  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
    62
  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
    63
  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
    64
  repository:
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    65
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    66
    [usersubs]
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    67
    # 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
    68
    user@host = pattern
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    69
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    70
    [reposubs]
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    71
    # 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
    72
    pattern = user@host
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
    73
  
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    74
  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
    75
  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
    76
  separated from the glob by a hash. Example:
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    77
  
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    78
    [reposubs]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    79
    */widgets#branch(release) = qa-team@example.com
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    80
  
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
    81
  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
    82
  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
    83
  
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    84
  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
    85
  "[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
    86
  by reference:
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    87
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    88
    [notify]
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    89
    config = /path/to/subscriptionsfile
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    90
  
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
    91
  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
    92
  "False"; see below.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    93
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    94
  Notifications content can be tweaked with the following configuration entries:
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
  notify.test
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    97
    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
    98
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
    99
  notify.sources
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   100
    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
   101
    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
   102
  
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   103
    "serve"       changesets received via http or ssh
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   104
    "pull"        changesets received via "hg pull"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   105
    "unbundle"    changesets received via "hg unbundle"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   106
    "push"        changesets sent or received via "hg push"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   107
    "bundle"      changesets sent via "hg unbundle"
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   108
  
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   109
    Default: serve.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   110
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   111
  notify.strip
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   112
    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
   113
    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
   114
    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
   115
    "/long/path/repository" into "repository". Default: 0.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   116
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   117
  notify.domain
42904
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   118
    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
   119
    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
   120
    "notify.messageidseed".
d26a6706b070 notify: add option for deterministic message-id generation
Joerg Sonnenberger <joerg@bec.de>
parents: 41526
diff changeset
   121
  
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
    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
   124
    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
   125
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   126
  notify.style
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   127
    Style file to use when formatting emails.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   128
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   129
  notify.template
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   130
    Template to use when formatting emails.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   131
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   132
  notify.incoming
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   133
    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
   134
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   135
  notify.outgoing
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   136
    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
   137
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   138
  notify.changegroup
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   139
    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
   140
    "notify.template".
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   141
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   142
  notify.maxdiff
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   143
    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
   144
    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
   145
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   146
  notify.maxdiffstat
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   147
    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
   148
    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
   149
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   150
  notify.maxsubject
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   151
    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
   152
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   153
  notify.diffstat
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   154
    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
   155
  
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   156
  notify.showfunc
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   157
    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
   158
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   159
  notify.merge
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   160
    If True, send notifications for merge changesets. Default: True.
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   161
  
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   162
  notify.mbox
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   163
    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
   164
  
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15562
diff changeset
   165
  notify.fromauthor
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   166
    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
   167
    "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
   168
    pushing repo.  Default: False.
15654
2a7fa7c641d8 notify: change behavior of "changegroup" hook
Nikolaus Schueler <nikolaus.schueler@lantiq.com>
parents: 15562
diff changeset
   169
  
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   170
  notify.reply-to-predecessor (EXPERIMENTAL)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   171
    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
   172
    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
   173
    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
   174
    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
   175
    changesets are folded.
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   176
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   177
    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
   178
  
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   179
  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
   180
  notifications:
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   181
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   182
  email.from
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   183
    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
   184
    content.
14940
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   185
  
d78b92353f26 notify: rewrite user documentation
Patrick Mezard <pmezard@gmail.com>
parents: 14617
diff changeset
   186
  web.baseurl
16950
0fdd8193c8b5 notify: various fixes to docstring
David Champion <dgc@uchicago.edu>
parents: 16500
diff changeset
   187
    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
   188
    See also "notify.strip".
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   189
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   190
  no commands defined
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   191
  $ hg init a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   192
  $ echo a > a/a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   193
  $ echo b > a/b
3740
aef384dbc731 add test for the notify extension
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   194
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   195
commit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   196
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   197
  $ hg --cwd a commit -Ama -d '0 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   198
  adding a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   199
  adding b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   200
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   201
clone
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
  $ hg --traceback clone a b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   204
  updating to branch default
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   205
  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
   206
  $ echo a >> a/a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   207
  $ echo b >> a/b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   208
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   209
commit
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
  $ hg --traceback --cwd a commit -Amb -d '1 0'
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
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
   214
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   215
  $ cat <<EOF >> $HGRCPATH
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   216
  > [notify]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   217
  > maxsubject = 200
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   218
  > EOF
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   219
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   220
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
   221
of the very long subject line
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   222
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
   223
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   224
  $ 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
   225
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   226
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   227
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   228
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   229
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   230
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   231
  adding file changes
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   232
  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
   233
  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
   234
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   235
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   236
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   237
  Date: * (glob)
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12473
diff changeset
   238
  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
   239
  From: test@example.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   240
  X-Hg-Notification: changeset 00a13f371396
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   241
  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
   242
  To: baz@example.com, foo@bar
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   243
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   244
  changeset 00a13f371396 in $TESTTMP/b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   245
  details: $TESTTMP/b?cmd=changeset;node=00a13f371396
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   246
  description: b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   247
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   248
  diffs (12 lines):
12473
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
  diff -r 0cd96de13884 -r 00a13f371396 a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   251
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   252
  +++ 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
   253
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   254
  +a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   255
  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
   256
  --- 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
   257
  +++ 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
   258
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   259
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   260
  (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
   261
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   262
  $ cat <<EOF >> $HGRCPATH
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   263
  > [notify]
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   264
  > config = `pwd`/.notify.conf
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   265
  > domain = test.com
12644
0490d2223882 test-notify: stabilize output
Mads Kiilerich <mads@kiilerich.com>
parents: 12642
diff changeset
   266
  > strip = 42
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   267
  > 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
   268
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   269
  > [web]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   270
  > baseurl = http://test/
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   271
  > 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
   272
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   273
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
   274
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   275
  $ 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
   276
  repository tip rolled back to revision 0 (undo pull)
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   277
  $ 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
   278
  pull failed
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   279
  $ touch ".notify.conf"
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   280
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   281
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
   282
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   283
  $ 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
   284
  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
   285
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   286
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   287
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   288
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   289
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   290
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   291
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   292
  adding file changes
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   293
  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
   294
  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
   295
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   296
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   297
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   298
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   299
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   300
  Subject: b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   301
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   302
  X-Hg-Notification: changeset 00a13f371396
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   303
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   304
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   305
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   306
  changeset 00a13f371396 in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   307
  description: b
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   308
  diffs (12 lines):
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   309
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   310
  diff -r 0cd96de13884 -r 00a13f371396 a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   311
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   312
  +++ 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
   313
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   314
  +a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   315
  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
   316
  --- 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
   317
  +++ 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
   318
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   319
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   320
  (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
   321
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   322
  $ cat << EOF >> $HGRCPATH
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   323
  > [hooks]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   324
  > incoming.notify = python:hgext.notify.hook
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   325
  > 
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   326
  > [notify]
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   327
  > sources = pull
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   328
  > diffstat = True
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   329
  > EOF
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   330
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   331
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
   332
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   333
  $ 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
   334
  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
   335
  $ 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
   336
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   337
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   338
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   339
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   340
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   341
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   342
  adding file changes
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   343
  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
   344
  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
   345
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   346
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   347
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   348
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   349
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   350
  Subject: b
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   351
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   352
  X-Hg-Notification: changeset 00a13f371396
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   353
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   354
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   355
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   356
  changeset 00a13f371396 in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   357
  description: b
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   358
  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
   359
   a |  1 + 2 files changed, 2 insertions(+), 0 deletions(-)
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   360
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   361
  diffs (12 lines):
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
  diff -r 0cd96de13884 -r 00a13f371396 a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   364
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   365
  +++ 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
   366
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   367
  +a
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   368
  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
   369
  --- 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
   370
  +++ 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
   371
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   372
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   373
  (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
   374
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   375
test merge
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
  $ cd a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   378
  $ hg up -C 0
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   379
  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
   380
  $ echo a >> a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   381
  $ hg ci -Am adda2 -d '2 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   382
  created new head
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   383
  $ hg merge
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   384
  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
   385
  (branch merge, don't forget to commit)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   386
  $ hg ci -m merge -d '3 0'
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   387
  $ cd ..
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   388
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   389
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   390
  >  "$PYTHON" $TESTTMP/filter.py
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   391
  pulling from ../a
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   392
  searching for changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   393
  adding changesets
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   394
  adding manifests
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   395
  adding file changes
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   396
  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
   397
  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
   398
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   399
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   400
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   401
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   402
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   403
  Subject: adda2
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   404
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   405
  X-Hg-Notification: changeset 3332653e1f3c
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   406
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   407
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   408
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   409
  changeset 3332653e1f3c in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   410
  description: adda2
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   411
  diffstat:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   412
   a |  1 + 1 files changed, 1 insertions(+), 0 deletions(-)
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   413
  
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   414
  diffs (6 lines):
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   415
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   416
  diff -r 0cd96de13884 -r 3332653e1f3c a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   417
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   418
  +++ 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
   419
  @@ -1,1 +1,2 @@ a
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   420
  +a
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   421
  MIME-Version: 1.0
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   422
  Content-Type: text/plain; charset="us-ascii"
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   423
  Content-Transfer-Encoding: 7bit
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   424
  X-Test: foo
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   425
  Date: * (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   426
  Subject: merge
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   427
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   428
  X-Hg-Notification: changeset fccf66cd0c35
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   429
  Message-Id: <*> (glob)
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   430
  To: baz@test.com, foo@bar
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   431
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   432
  changeset fccf66cd0c35 in b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   433
  description: merge
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   434
  diffstat:
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   435
   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
   436
  
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   437
  diffs (6 lines):
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
  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
   440
  --- 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
   441
  +++ 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
   442
  @@ -1,1 +1,2 @@ b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   443
  +b
12473
52aac5c5c2a6 tests: unify test-notify
Matt Mackall <mpm@selenic.com>
parents: 11889
diff changeset
   444
  (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
   445
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   446
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
   447
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   448
  $ cat <<EOF >> $HGRCPATH
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   449
  > [notify]
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   450
  > maxsubject = 4
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   451
  > EOF
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   452
  $ echo a >> a/a
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   453
  $ 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
   454
  >   -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
   455
  $ 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
   456
  >   "$PYTHON" $TESTDIR/unwrap-message-id.py | \
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38028
diff changeset
   457
  >   "$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
   458
  pulling from ../a
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   459
  searching for changes
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   460
  adding changesets
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   461
  adding manifests
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   462
  adding file changes
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   463
  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
   464
  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
   465
  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
   466
  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
   467
  Content-Transfer-Encoding: 8bit
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   468
  X-Test: foo
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   469
  Date: * (glob)
43331
90ee1f61504e py3: fix generated non-ascii message in test-notify.t
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43323
diff changeset
   470
  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
   471
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   472
  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
   473
  Message-Id: <*> (glob)
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   474
  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
   475
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   476
  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
   477
  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
   478
  diffstat:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   479
   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
   480
  
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   481
  diffs (7 lines):
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   482
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   483
  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
   484
  --- 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
   485
  +++ 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
   486
  @@ -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
   487
  +a
e3bf16703e26 util: fix ellipsis() not to break multi-byte sequence (issue2564)
Yuya Nishihara <yuya@tcha.org>
parents: 12646
diff changeset
   488
  (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
   489
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   490
long lines
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   491
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   492
  $ cat <<EOF >> $HGRCPATH
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   493
  > [notify]
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   494
  > maxsubject = 67
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   495
  > test = False
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   496
  > mbox = mbox
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   497
  > EOF
41526
1be7a9b994a2 py3: add some b'' prefixes in test-notify.t
Pulkit Goyal <pulkit@yandex-team.ru>
parents: 39912
diff changeset
   498
  $ "$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
   499
  $ 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
   500
  $ hg --traceback --cwd b pull ../a
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   501
  pulling from ../a
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   502
  searching for changes
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   503
  adding changesets
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   504
  adding manifests
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   505
  adding file changes
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   506
  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
   507
  new changesets a846b5f6ebb7 (1 drafts)
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   508
  notify: sending 2 subscribers 1 changes
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   509
  (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
   510
  $ 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
   511
  From test@test.com ... ... .. ..:..:.. .... (re)
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   512
  MIME-Version: 1.0
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   513
  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
   514
  Content-Transfer-Encoding: quoted-printable
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   515
  X-Test: foo
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   516
  Date: * (glob)
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   517
  Subject: long line
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   518
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   519
  X-Hg-Notification: changeset a846b5f6ebb7
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   520
  Message-Id: <hg.e7dc7658565793ff33c797e72b7d1f3799347b042af3c40df6d17c8d5c3e560a@test.com>
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   521
  To: baz@test.com, foo@bar
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   522
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   523
  changeset a846b5f6ebb7 in b
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   524
  description: long line
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   525
  diffstat:
33718
fa9f7b5d4397 tests: fix test-notify.t to use $PYTHON
Augie Fackler <augie@google.com>
parents: 29102
diff changeset
   526
   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
   527
  
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   528
  diffs (8 lines):
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   529
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   530
  diff -r 0f25f9c22b4c -r a846b5f6ebb7 a
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   531
  --- 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
   532
  +++ 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
   533
  @@ -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
   534
  +nonononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   535
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   536
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   537
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   538
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   539
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   540
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   541
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   542
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   543
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   544
  ononononononononononononononononononononononononononononononononononononono=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   545
  nononononononononononononononononononononononononononononononononononononon=
a82b6038ff08 mail: use quoted-printable for mime encoding to avoid too long lines (issue3075)
Mads Kiilerich <mads@kiilerich.com>
parents: 15561
diff changeset
   546
  ononononononononononononononononononononononononononononononononononononono=
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   547
  nonononononononononononono=D1=84
15561
ca572e94d8e7 notify: add option for writing to mbox
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   548
  
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   549
 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
   550
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   551
  $ cat << EOF >> $HGRCPATH
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   552
  > [hooks]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   553
  > incoming.notify = python:hgext.notify.hook
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   554
  > 
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   555
  > [notify]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   556
  > sources = pull
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   557
  > test = True
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   558
  > diffstat = False
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   559
  > maxdiff = 0
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   560
  > 
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   561
  > [reposubs]
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   562
  > */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
   563
  > */b#branch(test) = notify@example.com
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   564
  > EOF
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   565
  $ hg --cwd a branch test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   566
  marked working directory as branch test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   567
  (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
   568
  $ echo a >> a/a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   569
  $ 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
   570
  $ echo a >> a/a
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   571
  $ 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
   572
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   573
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   574
  >  "$PYTHON" $TESTTMP/filter.py
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   575
  pulling from ../a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   576
  searching for changes
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   577
  adding changesets
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   578
  adding manifests
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   579
  adding file changes
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   580
  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
   581
  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
   582
  MIME-Version: 1.0
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   583
  Content-Type: text/plain; charset="us-ascii"
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   584
  Content-Transfer-Encoding: 7bit
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   585
  X-Test: foo
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   586
  Date: * (glob)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   587
  Subject: test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   588
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   589
  X-Hg-Notification: changeset f7e5aaed4080
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   590
  Message-Id: <hg.12e9ae631e2529e9cfbe7a93be0dd8a401280700640f802a60f20d7be659251d@test.com>
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   591
  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
   592
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   593
  changeset f7e5aaed4080 in b
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   594
  description: test
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   595
  MIME-Version: 1.0
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   596
  Content-Type: text/plain; charset="us-ascii"
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   597
  Content-Transfer-Encoding: 7bit
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   598
  X-Test: foo
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   599
  Date: * (glob)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   600
  Subject: test
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   601
  From: test@test.com
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   602
  X-Hg-Notification: changeset 485bf79b9464
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   603
  Message-Id: <hg.15281d60c27d9d5fb70435d33ebc24cb5aa580f2535988dcb9923c26e8bc5c47@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   604
  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
   605
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   606
  changeset 485bf79b9464 in b
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   607
  description: test
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   608
  (run 'hg update' to get a working copy)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   609
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   610
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
   611
from different branch
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
  $ hg --cwd a update default
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   614
  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
   615
  $ echo a >> a/a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   616
  $ 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
   617
  $ hg --traceback --cwd b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   618
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   619
  >  "$PYTHON" $TESTTMP/filter.py
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   620
  pulling from ../a
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   621
  searching for changes
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   622
  adding changesets
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   623
  adding manifests
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   624
  adding file changes
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   625
  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
   626
  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
   627
  MIME-Version: 1.0
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   628
  Content-Type: text/plain; charset="us-ascii"
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   629
  Content-Transfer-Encoding: 7bit
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   630
  X-Test: foo
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   631
  Date: * (glob)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   632
  Subject: test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   633
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   634
  X-Hg-Notification: changeset 645eb6690ecf
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   635
  Message-Id: <hg.ba26b2c63e7deb44e86c934aeea147edde12a11b6ac94bda103dcab5028dc928@test.com>
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   636
  To: baz@test.com, foo@bar
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   637
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   638
  changeset 645eb6690ecf in b
17754
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   639
  description: test
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   640
  (run 'hg heads' to see heads)
19e9bf7c0927 notify: support revset selection for subscriptions
Michal Sznajder <michalsznajder@gmail.com>
parents: 16950
diff changeset
   641
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   642
default template:
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   643
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   644
  $ 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
   645
  $ 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
   646
  $ 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
   647
  $ 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
   648
  $ hg --cwd b pull ../a -q | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   649
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   650
  >  "$PYTHON" $TESTTMP/filter.py
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   651
  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
   652
  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
   653
  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
   654
  Date: * (glob)
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   655
  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
   656
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   657
  X-Hg-Notification: changeset 5cd4346eed47
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   658
  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
   659
  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
   660
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   661
  changeset 5cd4346eed47 in $TESTTMP/b
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   662
  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
   663
  description: default template
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   664
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   665
with style:
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   666
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   667
  $ 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
   668
  > 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
   669
  >              From: {author}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   670
  >              {""}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   671
  >              changeset {node|short}"
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   672
  > EOF
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   673
  $ cat <<EOF >> $HGRCPATH
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   674
  > [notify]
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   675
  > 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
   676
  > EOF
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   677
  $ 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
   678
  $ 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
   679
  $ hg --cwd b pull ../a -q | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   680
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   681
  >  "$PYTHON" $TESTTMP/filter.py
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   682
  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
   683
  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
   684
  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
   685
  Date: * (glob)
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   686
  Subject: with style
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   687
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   688
  X-Hg-Notification: changeset ec8d9d852f56
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   689
  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
   690
  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
   691
  
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   692
  changeset ec8d9d852f56
28951
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   693
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   694
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
   695
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   696
  $ cat <<EOF >> $HGRCPATH
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   697
  > 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
   698
  >            From: {author}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   699
  >            {""}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   700
  >            {desc}
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   701
  > EOF
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   702
  $ 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
   703
  $ 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
   704
  $ hg --cwd b pull ../a -q | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   705
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   706
  >  "$PYTHON" $TESTTMP/filter.py
34310
2d0c306a88c2 mail: encode long unicode lines in emails properly (issue5687)
Igor Ippolitov <iippolitov@gmail.com>
parents: 33969
diff changeset
   707
  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
   708
  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
   709
  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
   710
  Date: * (glob)
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   711
  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
   712
  From: test@test.com
37777
a4cac7b0ea4f notify: add maxdiffstat option to truncate long file lists
Joerg Sonnenberger <joerg@bec.de>
parents: 36394
diff changeset
   713
  X-Hg-Notification: changeset 14721b538ae3
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   714
  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
   715
  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
   716
  
1bba1b43525a notify: do not load style file if template is specified (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 27729
diff changeset
   717
  with template
38028
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   718
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   719
showfunc diff
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   720
  $ cat <<EOF >> $HGRCPATH
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   721
  > showfunc = True
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   722
  > template =
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   723
  > maxdiff = -1
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   724
  > EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   725
  $ cd a
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   726
  $ cat > f1 << EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   727
  > int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   728
  >     int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   729
  >     int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   730
  >     int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   731
  >     int d = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   732
  >     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
   733
  > }
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   734
  > EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   735
  $ 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
   736
  adding f1
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   737
  $ hg debugobsolete eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee b86bc16ff894f057d023b306936f290954857187
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   738
  1 new obsolescence markers
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   739
  $ hg --cwd ../b pull ../a | \
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   740
  >  "$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
   741
  pulling from ../a
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   742
  searching for changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   743
  adding changesets
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   744
  adding manifests
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   745
  adding file changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   746
  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
   747
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   748
  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
   749
  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
   750
  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
   751
  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
   752
  Date: * (glob)
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   753
  Subject: addfunction
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   754
  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
   755
  X-Hg-Notification: changeset b86bc16ff894
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   756
  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
   757
  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
   758
  
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   759
  changeset b86bc16ff894
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   760
  diffs (11 lines):
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
  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
   763
  --- /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
   764
  +++ 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
   765
  @@ -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
   766
  +int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   767
  +    int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   768
  +    int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   769
  +    int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   770
  +    int d = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   771
  +    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
   772
  +}
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   773
  (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
   774
  $ cat > f1 << EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   775
  > int main() {
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   776
  >     int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   777
  >     int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   778
  >     int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   779
  >     int e = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   780
  >     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
   781
  > }
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   782
  > EOF
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   783
  $ hg commit -m changefunction
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   784
  $ hg debugobsolete 485bf79b9464197b2ed2debd0b16252ad64ed458 e81040e9838c704d8bf17658cb11758f24e40b6b
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   785
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   786
  obsoleted 1 changesets
43334
4128ffba4431 tests: handle Message-Id email header possible wrapping
Denis Laxalde <denis@laxalde.org>
parents: 43331
diff changeset
   787
  $ 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
   788
  >  "$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
   789
  pulling from ../a
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   790
  searching for changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   791
  adding changesets
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   792
  adding manifests
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   793
  adding file changes
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   794
  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
   795
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   796
  obsoleted 1 changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   797
  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
   798
  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
   799
  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
   800
  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
   801
  Date: * (glob)
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   802
  Subject: changefunction
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   803
  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
   804
  X-Hg-Notification: changeset e81040e9838c
44627
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   805
  Message-Id: <hg.99b80bf1c5d0bf8f8a7e60107c1aa1da367a5943b2a70a8b36517d701557edff@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   806
  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
   807
  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
   808
  
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   809
  changeset e81040e9838c
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   810
  diffs (12 lines):
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
  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
   813
  --- 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
   814
  +++ 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
   815
  @@ -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
   816
       int a = 0;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   817
       int b = 1;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   818
       int c = 2;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   819
  -    int d = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   820
  -    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
   821
  +    int e = 3;
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   822
  +    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
   823
   }
d1134ca5b1a3 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de>
parents: 37777
diff changeset
   824
  (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
   825
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   826
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
   827
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
   828
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   829
  $ hg --cwd ../b strip tip
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   830
  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
   831
  $ hg debugobsolete f7e5aaed408029cfe9890318245e87ef44739fdd e81040e9838c704d8bf17658cb11758f24e40b6b
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   832
  1 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   833
  obsoleted 1 changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   834
  $ 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
   835
  >  "$PYTHON" $TESTDIR/unwrap-message-id.py
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   836
  pulling from ../a
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   837
  searching for changes
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   838
  adding changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   839
  adding manifests
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   840
  adding file changes
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   841
  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
   842
  2 new obsolescence markers
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   843
  obsoleted 2 changesets
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   844
  new changesets e81040e9838c (1 drafts)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   845
  MIME-Version: 1.0
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   846
  Content-Type: text/plain; charset="us-ascii"
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   847
  Content-Transfer-Encoding: 7bit
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   848
  Date: * (glob)
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   849
  Subject: changefunction
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   850
  From: test@test.com
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   851
  X-Hg-Notification: changeset e81040e9838c
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   852
  Message-Id: <hg.99b80bf1c5d0bf8f8a7e60107c1aa1da367a5943b2a70a8b36517d701557edff@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   853
  In-Reply-To: <hg.12e9ae631e2529e9cfbe7a93be0dd8a401280700640f802a60f20d7be659251d@test.com>
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   854
  To: baz@test.com, foo@bar
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   855
  
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   856
  changeset e81040e9838c
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   857
  diffs (12 lines):
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
  diff -r b86bc16ff894 -r e81040e9838c f1
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   860
  --- 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
   861
  +++ 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
   862
  @@ -2,6 +2,6 @@ int main() {
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   863
       int a = 0;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   864
       int b = 1;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   865
       int c = 2;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   866
  -    int d = 3;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   867
  -    return a + b + c + d;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   868
  +    int e = 3;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   869
  +    return a + b + c + e;
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   870
   }
947e6df4ff77 notify: optional mail threading based on obsmarker
Joerg Sonnenberger <joerg@bec.de>
parents: 43334
diff changeset
   871
  (run 'hg update' to get a working copy)