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