contrib / hooks / multimail / CHANGESon commit Merge branch 'ld/git-p4-remove-flakey-test' (0be2f36)
   1Release 1.5.0
   2=============
   3
   4Backward-incompatible change
   5----------------------------
   6
   7The name of classes for environment was misnamed as `*Environement`.
   8It is now `*Environment`.
   9
  10New features
  11------------
  12
  13* A Thread-Index header is now added to each email sent (except for
  14  combined emails where it would not make sense), so that MS Outlook
  15  properly groups messages by threads even though they have a
  16  different subject line. Unfortunately, even adding this header the
  17  threading still seems to be unreliable, but it is unclear whether
  18  this is an issue on our side or on MS Outlook's side (see discussion
  19  here: https://github.com/git-multimail/git-multimail/pull/194).
  20
  21* A new variable multimailhook.ExcludeMergeRevisions was added to send
  22  notification emails only for non-merge commits.
  23
  24* For gitolite environment, it is now possible to specify the mail map
  25  in a separate file in addition to gitolite.conf, using the variable
  26  multimailhook.MailaddressMap.
  27
  28Internal changes
  29----------------
  30
  31* The testsuite now uses GIT_PRINT_SHA1_ELLIPSIS where needed for
  32  compatibility with recent Git versions. Only tests are affected.
  33
  34* We don't try to install pyflakes in the continuous integration job
  35  for old Python versions where it's no longer available.
  36
  37* Stop using the deprecated cgi.escape in Python 3.
  38
  39* New flake8 warnings have been fixed.
  40
  41* Python 3.6 is now tested against on Travis-CI.
  42
  43* A bunch of lgtm.com warnings have been fixed.
  44
  45Bug fixes
  46---------
  47
  48* SMTPMailer logs in only once now. It used to re-login for each email
  49  sent which triggered errors for some SMTP servers.
  50
  51* migrate-mailhook-config was broken by internal refactoring, it
  52  should now work again.
  53
  54This version was tested with Python 2.6 to 3.7. It was tested with Git
  551.7.10.406.gdc801, 2.15.1 and 2.20.1.98.gecbdaf0.
  56
  57Release 1.4.0
  58=============
  59
  60New features to troubleshoot a git-multimail installation
  61---------------------------------------------------------
  62
  63* One can now perform a basic check of git-multimail's setup by
  64  running the hook with the environment variable
  65  GIT_MULTIMAIL_CHECK_SETUP set to a non-empty string. See
  66  doc/troubleshooting.rst for details.
  67
  68* A new log files system was added. See the multimailhook.logFile,
  69  multimailhook.errorLogFile and multimailhook.debugLogFile variables.
  70
  71* git_multimail.py can now be made more verbose using
  72  multimailhook.verbose.
  73
  74* A new option --check-ref-filter is now available to help debugging
  75  the refFilter* options.
  76
  77Formatting emails
  78-----------------
  79
  80* Formatting of emails was made slightly more compact, to reduce the
  81  odds of having long subject lines truncated or wrapped in short list
  82  of commits.
  83
  84* multimailhook.emailPrefix may now use the '%(repo_shortname)s'
  85  placeholder for the repository's short name.
  86
  87* A new option multimailhook.subjectMaxLength is available to truncate
  88  overly long subject lines.
  89
  90Bug fixes and minor changes
  91---------------------------
  92
  93* Options refFilterDoSendRegex and refFilterDontSendRegex were
  94  essentially broken. They should work now.
  95
  96* The behavior when both refFilter{Do,Dont}SendRegex and
  97  refFilter{Exclusion,Inclusion}Regex are set have been slightly
  98  changed. Exclusion/Inclusion is now strictly stronger than
  99  DoSend/DontSend.
 100
 101* The management of precedence when a setting can be computed in
 102  multiple ways has been considerably refactored and modified.
 103  multimailhook.from and multimailhook.reponame now have precedence
 104  over the environment-specific settings ($GL_REPO/$GL_USER for
 105  gitolite, --stash-user/repo for Stash, --submitter/--project for
 106  Gerrit).
 107
 108* The coverage of the testsuite has been considerably improved. All
 109  configuration variables now appear at least once in the testsuite.
 110
 111This version was tested with Python 2.6 to 3.5. It also mostly works
 112with Python 2.4, but there is one known breakage in the testsuite
 113related to non-ascii characters. It was tested with Git
 1141.7.10.406.gdc801, 1.8.5.6, 2.1.4, and 2.10.0.rc0.1.g07c9292.
 115
 116Release 1.3.1 (bugfix-only release)
 117===================================
 118
 119* Generate links to commits in combined emails (it was done only for
 120  commit emails in 1.3.0).
 121
 122* Fix broken links on PyPi.
 123
 124Release 1.3.0
 125=============
 126
 127* New options multimailhook.htmlInIntro and multimailhook.htmlInFooter
 128  now allow using HTML in the introduction and footer of emails (e.g.
 129  for a more pleasant formatting or to insert a link to the commit on
 130  a web interface).
 131
 132* A new option multimailhook.commitBrowseURL gives a simpler (and less
 133  flexible) way to add a link to a web interface for commit emails
 134  than multimailhook.htmlInIntro and multimailhook.htmlInFooter.
 135
 136* A new public function config.add_config_parameters was added to
 137  allow custom hooks to set specific Git configuration variables
 138  without modifying the configuration files. See an example in
 139  post-receive.example.
 140
 141* Error handling for SMTP has been improved (we used to print Python
 142  backtraces for legitimate errors).
 143
 144* The SMTP mailer can now check TLS certificates when the newly added
 145  configuration variable multimailhook.smtpCACerts.
 146
 147* Python 3 portability has been improved.
 148
 149* The documentation's formatting has been improved.
 150
 151* The testsuite has been improved (we now use pyflakes to check for
 152  errors in the code).
 153
 154This version has been tested with Python 2.4 and 2.6 to 3.5, and Git
 155v1.7.10-406-gdc801e7, 2.1.4 and 2.8.1.339.g3ad15fd.
 156
 157No change since 1.3 RC1.
 158
 159Release 1.2.0
 160=============
 161
 162* It is now possible to exclude some refs (e.g. exclude some branches
 163  or tags). See refFilterDoSendRegex, refFilterDontSendRegex,
 164  refFilterInclusionRegex and refFilterExclusionRegex.
 165
 166* New commitEmailFormat option which can be set to "html" to generate
 167  simple colorized diffs using HTML for the commit emails.
 168
 169* git-multimail can now be ran as a Gerrit ref-updated hook, or from
 170  Atlassian BitBucket Server (formerly known as Atlassian Stash).
 171
 172* The From: field is now more customizeable. It can be set
 173  independently for refchange emails and commit emails (see
 174  fromCommit, fromRefChange). The special values pusher and author can
 175  be used in these configuration variable.
 176
 177* A new command-line option, --version, was added. The version is also
 178  available in the X-Git-Multimail-Version header of sent emails.
 179
 180* Set X-Git-NotificationType header to differentiate the various types
 181  of notifications. Current values are: diff, ref_changed_plus_diff,
 182  ref_changed.
 183
 184* Preliminary support for Python 3. The testsuite passes with Python 3,
 185  but it has not received as much testing as the Python 2 version yet.
 186
 187* Several encoding-related fixes. UTF-8 characters work in more
 188  situations (but non-ascii characters in email address are still not
 189  supported).
 190
 191* The testsuite and its documentation has been greatly improved.
 192
 193Plus all the bugfixes from version 1.1.1.
 194
 195This version has been tested with Python 2.4 and 2.6 to 3.5, and Git
 196v1.7.10-406-gdc801e7, git-1.8.2.3 and 2.6.0. Git versions prior to
 197v1.7.10-406-gdc801e7 probably work, but cannot run the testsuite
 198properly.
 199
 200Release 1.1.1 (bugfix-only release)
 201===================================
 202
 203* The SMTP mailer was not working with Python 2.4.
 204
 205Release 1.1.0
 206=============
 207
 208* When a single commit is pushed, omit the reference changed email.
 209  Set multimailhook.combineWhenSingleCommit to false to disable this
 210  new feature.
 211
 212* In gitolite environments, the pusher's email address can be used as
 213  the From address by creating a specially formatted comment block in
 214  gitolite.conf (see multimailhook.from in README).
 215
 216* Support for SMTP authentication and SSL/TLS encryption was added,
 217  see smtpUser, smtpPass, smtpEncryption in README.
 218
 219* A new option scanCommitForCc was added to allow git-multimail to
 220  search the commit message for 'Cc: ...' lines, and add the
 221  corresponding emails in Cc.
 222
 223* If $USER is not set, use the variable $USERNAME. This is needed on
 224  Windows platform to recognize the pusher.
 225
 226* The emailPrefix variable can now be set to an empty string to remove
 227  the prefix.
 228
 229* A short tutorial was added in doc/gitolite.rst to set up
 230  git-multimail with gitolite.
 231
 232* The post-receive file was renamed to post-receive.example. It has
 233  always been an example (the standard way to call git-multimail is to
 234  call git_multimail.py), but it was unclear to many users.
 235
 236* A new refchangeShowGraph option was added to make it possible to
 237  include both a graph and a log in the summary emails.  The options
 238  to control the graph formatting can be set via the new graphOpts
 239  option.
 240
 241* New option --force-send was added to disable new commit detection
 242  for update hook. One use-case is to run git_multimail.py after
 243  running "git fetch" to send emails about commits that have just been
 244  fetched (the detection of new commits was unreliable in this mode).
 245
 246* The testing infrastructure was considerably improved (continuous
 247  integration with travis-ci, automatic check of PEP8 and RST syntax,
 248  many improvements to the test scripts).
 249
 250This version has been tested with Python 2.4 to 2.7, and Git 1.7.1 to
 2512.4.
 252
 253Release 1.0.0
 254=============
 255
 256* Fix encoding of non-ASCII email addresses in email headers.
 257
 258* Fix backwards-compatibility bugs for older Python 2.x versions.
 259
 260* Fix a backwards-compatibility bug for Git 1.7.1.
 261
 262* Add an option commitDiffOpts to customize logs for revisions.
 263
 264* Pass "-oi" to sendmail by default to prevent premature termination
 265  on a line containing only ".".
 266
 267* Stagger email "Date:" values in an attempt to help mail clients
 268  thread the emails in the right order.
 269
 270* If a mailing list setting is missing, just skip sending the
 271  corresponding email (with a warning) instead of failing.
 272
 273* Add a X-Git-Host header that can be used for email filtering.
 274
 275* Allow the sender's fully-qualified domain name to be configured.
 276
 277* Minor documentation improvements.
 278
 279* Add this CHANGES file.
 280
 281
 282Release 0.9.0
 283=============
 284
 285* Initial release.