5.4.0 release notes (#12605)
authorAndrew Hunt <andrew@aghstrategies.com>
Wed, 1 Aug 2018 03:38:58 +0000 (23:38 -0400)
committerTim Otten <totten@civicrm.org>
Thu, 2 Aug 2018 01:25:01 +0000 (18:25 -0700)
* 5.4.0 release notes: raw from script

* 5.4.0 release notes: added boilerplate

* 5.4.0 release notes: finished documenting changes

* 5.4.0 release notes: updated contributors

CONTRIBUTORS.txt
contributor-key.yml
release-notes.md
release-notes/5.4.0.md [new file with mode: 0644]

index 60a8f1ac4e325eb1ceb0d511acf37563bf79e95d..6af5bf8853ca5a881aa645b290a1a82f0f115456 100644 (file)
@@ -9,17 +9,28 @@ CiviCRM - Coleman Watts, Tim Otten
 AGH Strategies - Alice Frumin, Andrew Hunt, Eli Lisseck
 Agileware - Alok Patel, Francis Whittle, Justin Freeman
 Andrew Thompson
+applicado
 Australian Greens - Seamus Lee
-CiviDesk - Yashodha Chaku
-CompuCorp - Michael Devery, Mukesh Ram, Omar Abu Hussein, René Olivo, Vinu
-    Varshith Sekar
-Coop SymbioTIC - Samuel Vanhove
+Bastien Ho
+Blackfly Solutions - Alan Dixon
+Caltha - Tomasz Pietrzkowski
+CEDC - Laryn Kragt Bakker
+Chris Burgess
+CiviCoop - Jaap Jansma
+CiviDesk - Sunil Pawar, Yashodha Chaku
+CompuCorp - Camilo Rodriguez, Davi Alexandre, Debarshi Bhaumik, Michael Devery,
+    Mukesh Ram, Omar Abu Hussein, René Olivo, Vinu Varshith Sekar
+Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove
 Davis Media Access - Darrick Servis
+Electronic Frontier Foundation - Mark Burdett
 Fuzion - Jitendra Purohit
 Ginkgo Street Labs - Frank Gómez
+Hossein Amin
 JMA Consulting - Monish Deb
+Johan Vervloet
 John Kingsnorth
 Joinery - Allen Shaw
+Kanzu Code - Carl Andrew Lema
 Kompetenzzentrum Technik-Diversity-Chancengleichheit - Niels Heinemann
 Left Join Labs - Sean Madsen
 Lighthouse Design and Consulting - Brian Shaughnessy
@@ -30,11 +41,17 @@ myDropWizard - David Snopek
 Naomi Rosenberg
 Olivier Tétard
 Oxfam Germany - Thomas Schüttler, Yuliyana Liyana
+Pradeep Nayak
 Progressive Technology Project - Jamie McClelland
+Romain Thouvenin
+Squiffle Consulting - Aidan Saunders
 Systopia - Björn Endres
 Tadpole Collective - Kevin Cristiano
 Third Sector Design - Michael McAndrew
+Tom Bloor
 Wikimedia Foundation - Eileen McNaughton
+Wildsight - Lars Sanders-Green
+Will Long
 
 ************************************************
 Key Contributors and Sponsors for 4.7
index 567ac1f9f20674717c17815d4b2e7dc6c62fc2dd..167a9c9d4fbb56903f91f9ccb75c7641efb557b2 100644 (file)
 - name        : Matthias Bärnthaler
   jira        : baerm
 
+- github      : baernm
+
+- github      : bastienho
+  name        : Bastien Ho
+
 - github      : bhahumanists
   name        : Andrew West
   organization: British Humanist Association
   organization: Jvillage Network
   jira        : dinalondon
 
+- name        : Lizz Trudeau
+  organization: Drupal Association
+  jira        : drupal_lizz
+
 - github      : dsnopek
   name        : David Snopek
   organization: myDropWizard
   organization: AGH Strategies
   jira        : hollyhanks
 
+- name        : Hugo do Carmo
+  jira        : hugo.carmo
+
 - name        : Anthony Colombo
   organization: DreamSpace
   jira        : Hunabku
   organization: Coop SymbioTIC
   jira        : mlutfy
 
-- name        : Michal Mach
+- github      : michau
+  name        : Michal Mach
+  organization: Caltha
   jira        : mover
 
+- github      : MikeyMJCO
+  name        : Mikey O'Toole
+  organization: MJCO
+  jira        : MikeyMJCO
+
 - github      : mmauroy
   name        : Matthias de Mauroy
   organization: CYIM
   organization: Botanical Society of America
   jira        : robbrandt
 
+- github      : robfenwickuk
+  name        : Robin Fenwick
+
 - name        : Robert Lang
   jira        : rjlang
 
 
 - github      : scardinius
   name        : Tomasz Pietrzkowski
-  organization: We Move Europe/Caltha
+  organization: Caltha
   jira        : scardinius
 
 - github      : seamuslee001
index b9971abd35814d7b63d85915c8cee75e54f880f4..f32d8821676e367f109cb0b28b29818ecf96cba3 100644 (file)
@@ -14,6 +14,36 @@ Other resources for identifying changes are:
     * https://github.com/civicrm/civicrm-joomla
     * https://github.com/civicrm/civicrm-wordpress
 
+## CiviCRM 5.4.0
+
+Released August 1, 2018
+
+- **[Synopsis](release-notes/5.4.0.md#synopsis)**
+- **[Features](release-notes/5.4.0.md#features)**
+- **[Bugs resolved](release-notes/5.4.0.md#bugs)**
+- **[Miscellany](release-notes/5.4.0.md#misc)**
+- **[Credits](release-notes/5.4.0.md#credits)**
+- **[Feedback](release-notes/5.4.0.md#feedback)**
+
+## CiviCRM 5.3.2
+
+Released July 25, 2018
+
+- **[Synopsis](release-notes/5.3.2.md#synopsis)**
+- **[Bugs resolved](release-notes/5.3.2.md#bugs)**
+- **[Credits](release-notes/5.3.2.md#credits)**
+- **[Feedback](release-notes/5.3.2.md#feedback)**
+
+## CiviCRM 5.3.1
+
+Released July 18, 2018
+
+- **[Security advisories](release-notes/5.3.1.md#security)**
+- **[Features](release-notes/5.3.1.md#features)**
+- **[Bugs resolved](release-notes/5.3.1.md#bugs)**
+- **[Miscellany](release-notes/5.3.1.md#misc)**
+- **[Credits](release-notes/5.3.1.md#credits)**
+
 ## CiviCRM 5.3.0
 
 Released July 3, 2018
diff --git a/release-notes/5.4.0.md b/release-notes/5.4.0.md
new file mode 100644 (file)
index 0000000..e248eb9
--- /dev/null
@@ -0,0 +1,658 @@
+# CiviCRM 5.4.0
+
+Released August 1, 2018
+
+- **[Synopsis](#synopsis)**
+- **[Features](#features)**
+- **[Bugs resolved](#bugs)**
+- **[Miscellany](#misc)**
+- **[Credits](#credits)**
+- **[Feedback](#feedback)**
+
+## <a name="synopsis"></a>Synopsis
+
+| *Does this version...?*                                         |         |
+|:--------------------------------------------------------------- |:-------:|
+| Fix security vulnerabilities?                                   |   no    |
+| **Change the database schema?**                                 | **yes** |
+| **Alter the API?**                                              | **yes** |
+| **Require attention to configuration options?**                 | **yes** |
+| **Fix problems installing or upgrading to a previous version?** | **yes** |
+| **Introduce features?**                                         | **yes** |
+| **Fix bugs?**                                                   | **yes** |
+
+## <a name="features"></a>Features
+
+### Core CiviCRM
+
+- **[CRM-20430](https://issues.civicrm.org/jira/browse/CRM-20430) A permission
+  'save Report Criteria'
+  ([12107](https://github.com/civicrm/civicrm-core/pull/12107))**
+
+  Permission to edit the criteria for saved reports is now separate from the
+  permission to access and preview modifications of report criteria.  This will
+  prevent non-privileged users from modifying the criteria of an organization's
+  standard reports.  However when upgrading, site administrators will need to
+  grant the Save Report Criteria permission to roles that need that capability.
+
+- **[dev/core#174](https://lab.civicrm.org/dev/core/issues/174) Consistently use
+  swappable cache interfaces
+  ([12321](https://github.com/civicrm/civicrm-core/pull/12321),
+  [12322](https://github.com/civicrm/civicrm-core/pull/12322),
+  [12323](https://github.com/civicrm/civicrm-core/pull/12323),
+  [12330](https://github.com/civicrm/civicrm-core/pull/12330),
+  [12331](https://github.com/civicrm/civicrm-core/pull/12331),
+  [12336](https://github.com/civicrm/civicrm-core/pull/12336),
+  [12342](https://github.com/civicrm/civicrm-core/pull/12342),
+  [12348](https://github.com/civicrm/civicrm-core/pull/12348),
+  [12354](https://github.com/civicrm/civicrm-core/pull/12354),
+  [12362](https://github.com/civicrm/civicrm-core/pull/12362),
+  [12368](https://github.com/civicrm/civicrm-core/pull/12368),
+  [12376](https://github.com/civicrm/civicrm-core/pull/12376),
+  [12378](https://github.com/civicrm/civicrm-core/pull/12378),
+  [12379](https://github.com/civicrm/civicrm-core/pull/12379),
+  [12380](https://github.com/civicrm/civicrm-core/pull/12380),
+  [12381](https://github.com/civicrm/civicrm-core/pull/12381),
+  [12389](https://github.com/civicrm/civicrm-core/pull/12389), and
+  [215](https://github.com/civicrm/civicrm-packages/pull/215))**
+
+  Sites using Redis or Memcache for caching will now use those facilities
+  exclusively rather than retaining the `civicrm_cache` table as a backstop.
+  This improves performance for these sites, especially those using multiple
+  MySQL servers.
+
+- **[CRM-21574](https://issues.civicrm.org/jira/browse/CRM-21574) Allow to
+  disable sending of email from source contact for tell a friend on pcp
+  ([12355](https://github.com/civicrm/civicrm-core/pull/12355)) (preliminary
+  work)**
+
+  Emails from the "tell a friend" feature are sent as if they are from the
+  donor's address.  This can cause delivery failures as the site may not be a
+  valid source for the donor's email domain.  Changes here are preliminary
+  cleanup.
+
+- **[dev/core#32](https://lab.civicrm.org/dev/core/issues/32) Add option to
+  disable cancel button on a profile form
+  ([11883](https://github.com/civicrm/civicrm-core/pull/11883))**
+
+  The Cancel button is now optional on profile forms.
+
+- **[CRM-21392](https://issues.civicrm.org/jira/browse/CRM-21392) Allow viewing
+  groups/smartgroups as as other entities (eg. memberships, events)
+  ([11241](https://github.com/civicrm/civicrm-core/pull/11241))**
+
+  The Find Groups page now has a similar "View Results As" feature as the
+  Advanced Search: you can choose to view memberships, events, activities, etc.
+  of group subscribers rather than the contacts themselves.
+
+- **[CRM-21622](https://issues.civicrm.org/jira/browse/CRM-21622) Make the Add
+  Parent Groups on Group Settings be a multiselect
+  ([11481](https://github.com/civicrm/civicrm-core/pull/11481))**
+
+  The New Group form now allows you to set multiple parent groups for a single
+  group.
+
+- **[CRM-21460](https://issues.civicrm.org/jira/browse/CRM-21460) Programmatic
+  access to job execution status
+  ([11337](https://github.com/civicrm/civicrm-core/pull/11337))**
+
+  Extension developers can implement two new hooks, `hook_civicrm_preJob` and
+  `hook_civicrm_postJob`, which are invoked before and after executing a
+  scheduled job.
+
+- **Change default for `CIVICRM_CONTAINER_CACHE` to simplify admin/developer
+  experience ([12426](https://github.com/civicrm/civicrm-core/pull/12426))**
+
+- **[dev/core#223](https://lab.civicrm.org/dev/core/issues/223) Expose prefix
+  and suffix in reports
+  ([12394](https://github.com/civicrm/civicrm-core/pull/12394))**
+
+  Individuals' prefix and suffix fields are now available as columns and filters
+  among the contact fields in most reports.
+
+- **[dev/core#101](https://lab.civicrm.org/dev/core/issues/101) Allow further
+  customization of search form in hooks
+  ([12078](https://github.com/civicrm/civicrm-core/pull/12078))**
+
+  Fields are no longer explicitly included in the search form template since
+  that makes it hard to add or remove fields.  Instead, the fields are listed in
+  template variables, and the template iterates over the list to render the
+  field elements.
+
+- **[dev/core#183](https://lab.civicrm.org/dev/core/issues/183) Temporary tables
+  should follow consistent naming convention
+  ([12311](https://github.com/civicrm/civicrm-core/pull/12311)) (partially
+  completed)**
+
+  This moves towards naming temporary tables--both true temporary tables in
+  MySQL and regular tables created for temporary use--in a consistent manner in
+  order to help database administrators employ replication policies based upon
+  table names.
+
+- **[dev/core#144](https://lab.civicrm.org/dev/core/issues/144)
+  `getCustomFieldID` switch to API, add caching, add full string return option
+  ([12218](https://github.com/civicrm/civicrm-core/pull/12218) and
+  [12283](https://github.com/civicrm/civicrm-core/pull/12283))**
+
+  The function to retrieve a custom field ID now relies upon APIv3 rather than
+  an *ad hoc* SQL query.  It also contains an option to return the ID preceded
+  by `custom_`.  Finally, the function caches the result and attempts to return
+  the cached value rather than looking it up each time.
+
+- **[dev/core#47](https://lab.civicrm.org/dev/core/issues/47) Add "clone"
+  functionality to scheduled jobs
+  ([11945](https://github.com/civicrm/civicrm-core/pull/11945))**
+
+  Scheduled jobs can now be copied, including their parameters, both from the
+  Scheduled Jobs page and through a new `Job.clone` API method.
+
+### CiviCase
+
+- **[dev/core#107](https://lab.civicrm.org/dev/core/issues/107) After creating a
+  new case, the assignee for each activity must be selected manually
+  ([11998](https://github.com/civicrm/civicrm-core/pull/11998))**
+
+  You can now select the default assignee for each activity in the standard
+  timeline for a case type.  This may be defined according to a relationship
+  with the client, a single specific contact, or the contact who created the
+  case.
+
+- **CiviCase, added reference of activities from different timelines.
+  ([12236](https://github.com/civicrm/civicrm-core/pull/12236))**
+
+  From an activity on a case timeline, you can now reference any activity
+  available to the case--not just those on that case timeline.
+
+### CiviContribute
+
+- **Add support for hidden fields in general (and 'token' specifically) on the
+  payment form. ([12332](https://github.com/civicrm/civicrm-core/pull/12332)
+  and [12391](https://github.com/civicrm/civicrm-core/pull/12391))**
+
+  A new authorization token field is added to the payment form to support
+  token-based payment processors.
+
+- **[CRM-21808](https://issues.civicrm.org/jira/browse/CRM-21808) Install custom
+  group for Contribution or ContributioRecur subtypes based on XML file
+  ([11726](https://github.com/civicrm/civicrm-core/pull/11726))**
+
+  Extensions created custom data sets for contributions can now specify the
+  custom data to apply only to a single financial type.
+
+- **(dev/core/50) and
+  [dev/core#195](https://lab.civicrm.org/dev/core/issues/195) Add Separate
+  Sub-tabs for Contributions and Recurring  Contributions
+  ([11956](https://github.com/civicrm/civicrm-core/pull/11956) and
+  [12345](https://github.com/civicrm/civicrm-core/pull/12345))**
+
+  The Contributions tab on a contact now contains two sub-tabs--one for single
+  contributions, and the other for recurring contribution series--instead of
+  displaying one after the other.
+
+- **[dev/core#96](https://lab.civicrm.org/dev/core/issues/96) Expose source
+  column in booking report
+  ([12374](https://github.com/civicrm/civicrm-core/pull/12374))**
+
+  The contribution Source field is now available as a column and filter on the
+  Bookkeeping Transactions report.
+
+- **Use html5 color input for contribution page widget
+  ([12339](https://github.com/civicrm/civicrm-core/pull/12339))**
+
+### CiviMail
+
+- **[dev/mail#1](https://lab.civicrm.org/dev/mail/issues/1) Add pause/resume
+  functionality to civicrm bulk mailing.
+  ([11803](https://github.com/civicrm/civicrm-core/pull/11803) and
+  [12284](https://github.com/civicrm/civicrm-core/pull/12284))**
+
+  A CiviMail mailing that is scheduled or in progress can now be paused in order
+  to allow an urgent message to go out first.
+
+- **Add in bootstrap button classes to CiviMail interface
+  ([12013](https://github.com/civicrm/civicrm-core/pull/12013) and
+  [12338](https://github.com/civicrm/civicrm-core/pull/12338))**
+
+  This allows the interfaces to be themed more easily by Bootstrap-based themes.
+
+## <a name="bugs"></a>Bugs resolved
+
+### Core CiviCRM
+
+- **[dev/core#222](https://lab.civicrm.org/dev/core/issues/222) Importing
+  contacts with dedupe rule does not use the rule
+  ([12393](https://github.com/civicrm/civicrm-core/pull/12393))**
+
+- **[dev/core#284](https://lab.civicrm.org/dev/core/issues/284) Aggressive cache
+  clearing significantly increases test time
+  ([12590](https://github.com/civicrm/civicrm-core/pull/12590)) (partial work)**
+
+  Settings, compiled Javascript, extension, and other caches are now only
+  flushed along with the main CiviCRM cache if an external cache like Redis or
+  Memcache is in use.
+
+- **[dev/core#279](https://lab.civicrm.org/dev/core/issues/279) When Merging two
+  contacts, Flip between original and duplicate link not working in WordPress
+  ([12568](https://github.com/civicrm/civicrm-core/pull/12568))**
+
+- **Handle 'Check for Matching Contact(s)' button with ajax
+  ([12552](https://github.com/civicrm/civicrm-core/pull/12552))**
+
+  This resolves a bug where the "Check for Matching Contact(s)" button would not
+  work if AJAX Deduping is enabled.
+
+- **[dev/core#131](https://lab.civicrm.org/dev/core/issues/131) Add in missing
+  UK shire Monmouthshire
+  ([12538](https://github.com/civicrm/civicrm-core/pull/12538)) (follow-up on
+  previous work)**
+
+  Many individual sites had manually added the county of Monmouthshire in Wales
+  to the `civicrm_state_province` table, and upgrading to 5.3.0, which added the
+  missing record, would cause them a database error.
+
+- **[dev/core#258](https://lab.civicrm.org/dev/core/issues/258) Possible
+  unreleased regression - message template update altered customised template
+  ([12492](https://github.com/civicrm/civicrm-core/pull/12492))**
+
+- **[dev/core#249](https://lab.civicrm.org/dev/core/issues/249) Contact Export
+  fails in 5.4 when trying to export using the All radio button
+  ([12447](https://github.com/civicrm/civicrm-core/pull/12447))**
+
+- **[dev/core#234](https://lab.civicrm.org/dev/core/issues/234) Upgrade Steps in
+  5.3.alpha1 may not have been run
+  ([12419](https://github.com/civicrm/civicrm-core/pull/12419),
+  [12420](https://github.com/civicrm/civicrm-core/pull/12420), and
+  [12425](https://github.com/civicrm/civicrm-core/pull/12425))**
+
+- **[dev/core#155](https://lab.civicrm.org/dev/core/issues/155) Improvements and
+  bugfixes to Option Groups UI
+  ([12233](https://github.com/civicrm/civicrm-core/pull/12233) and
+  [12411](https://github.com/civicrm/civicrm-core/pull/12411))**
+
+  The Option Groups page now displays whether each option group is reserved or
+  enabled.  In addition, sites using sample data no longer have the sample
+  custom fields reserved.
+
+- **[CRM-20184](https://issues.civicrm.org/jira/browse/CRM-20184) Some System
+  Workflow templates still miss {contact.email_greeting}
+  ([12296](https://github.com/civicrm/civicrm-core/pull/12296))**
+
+  This makes receipt templates more consistent in using the contact's email
+  greeting when sent to individuals.
+
+- **[dev/core#41](https://lab.civicrm.org/dev/core/issues/41) Search Builder:
+  Not empty with date or integer custom fields gives a sql warning
+  ([12351](https://github.com/civicrm/civicrm-core/pull/12351) and
+  [12363](https://github.com/civicrm/civicrm-core/pull/12363))**
+
+- **Make all form tasks inherit from `CRM_Core_Form_Task`
+  ([12318](https://github.com/civicrm/civicrm-core/pull/12318))**
+
+  This addresses some export problems caused by tasks lacking certain properties
+  because their classes did not extend `CRM_Core_Form_Task`.
+
+- **[dev/core#178](https://lab.civicrm.org/dev/core/issues/178) Redis driver -
+  Error messages are invisible
+  ([12303](https://github.com/civicrm/civicrm-core/pull/12303))**
+
+  The log now contains error messages passed from Redis.
+
+- **[dev/core#180](https://lab.civicrm.org/dev/core/issues/180) Deleting custom
+  values and custom_hook parameter `$entity_id` empty
+  ([12309](https://github.com/civicrm/civicrm-core/pull/12309))**
+
+  The ID of the affected entity is now passed to `hook_civicrm_custom` when a
+  value is deleted from a custom field.
+
+- **Fix access to scheduled reminders for admins without event access
+  ([11733](https://github.com/civicrm/civicrm-core/pull/11733))**
+
+  Users with Administer CiviCRM permission but lacking Manage Events permission
+  would get an error when trying to create a non-event scheduled reminder.
+
+- **Only treat a request as a get request (and hence use GET) if it starts with
+  get ([12308](https://github.com/civicrm/civicrm-core/pull/12308))**
+
+- **[dev/core#179](https://lab.civicrm.org/dev/core/issues/179) Redis driver -
+  Allow anonymous connections
+  ([12304](https://github.com/civicrm/civicrm-core/pull/12304))**
+
+  Redis no longer attempts to authenticate when no password is set, such as on
+  local development environments.
+
+- **[dev/core#177](https://lab.civicrm.org/dev/core/issues/177) Redis driver -
+  Reports incorrect value for cache-miss
+  ([12302](https://github.com/civicrm/civicrm-core/pull/12302))**
+
+  When a cache key is undefined, Redis now returns `NULL` rather than `FALSE`.
+
+- **[dev/core#175](https://lab.civicrm.org/dev/core/issues/175) Smart group
+  involving relationship type filter display incorrect results.
+  ([12301](https://github.com/civicrm/civicrm-core/pull/12301))**
+
+- **Make Send SMS permission independent of Edit Contact permission
+  ([12067](https://github.com/civicrm/civicrm-core/pull/12067))**
+
+  You no longer need the permission to edit a contact (in addition to the Send
+  SMS permission) to send the contact a SMS message.
+
+- **[dev/core#134](https://lab.civicrm.org/dev/core/issues/134) Search Builder
+  broken filter for Source Contact ID
+  ([12181](https://github.com/civicrm/civicrm-core/pull/12181))**
+
+- **[dev/core#140](https://lab.civicrm.org/dev/core/issues/140) add missing
+  pseudoconstant for `option_group_id` in CustomField.xml
+  ([12195](https://github.com/civicrm/civicrm-core/pull/12195))**
+
+  Extensions creating custom fields can now refer to option groups by name
+  rather than ID.
+
+- **[dev/accessiblity#3](https://lab.civicrm.org/dev/accessibility/issues/3) Add
+  aria-label (and label?) to form elements missing them
+  ([12209](https://github.com/civicrm/civicrm-core/pull/12209) and
+  [213](https://github.com/civicrm/civicrm-packages/pull/213)) (partial work)**
+
+  Besides adding `aria-label` attributes to sub-elements of the Quickform
+  date field, event info pages no longer wrap basic information labels in
+  `<label>` tags.
+
+- **[CRM-20711](https://issues.civicrm.org/jira/browse/CRM-20711) Error - DB
+  Constraint Violation - GroupContact, get API
+  ([12408](https://github.com/civicrm/civicrm-core/pull/12408))**
+
+  This adds the `location_id` field to the `civicrm_group_contact` table on
+  older sites that lack it.
+
+- **[dev/core#152](https://lab.civicrm.org/dev/core/issues/152) -
+  AdvMulti-Select cleanup
+  ([531](https://github.com/civicrm/civicrm-drupal/pull/531)) (follow-up work)**
+
+  This removes a couple of references to the now-removed "Advanced Multi-select"
+  custom field type
+
+- **Upgrade Mime_mail to fix issues with PHP7.2
+  ([205](https://github.com/civicrm/civicrm-packages/pull/205))**
+
+- **Apply fixes to have DB package support PHP7.2
+  ([207](https://github.com/civicrm/civicrm-packages/pull/207))**
+
+- **[dev/core#117](https://lab.civicrm.org/dev/core/issues/117) Remove usage of
+  `each()` This is deprecated in php7.2
+  ([211](https://github.com/civicrm/civicrm-packages/pull/211)) (follow-up
+  work)**
+
+- **Declare Subparts as array in mimePart to support PHP7.2
+  ([210](https://github.com/civicrm/civicrm-packages/pull/210))**
+
+- **[CRM-19798](https://issues.civicrm.org/jira/browse/CRM-19798) Memory leak in
+  API3 EntityTag get operations
+  ([12276](https://github.com/civicrm/civicrm-core/pull/12276))**
+
+### CiviCase
+
+- **Fix regression on case export from recent export fix
+  ([12588](https://github.com/civicrm/civicrm-core/pull/12588))**
+
+  This resolves undefined property PHP notices when exporting cases.
+
+- **[dev/core#24](https://lab.civicrm.org/dev/core/issues/24) Passing an array
+  for contact_id/client_id to Case.Create API when updating an existing case
+  causes case to be "reassigned"
+  ([11830](https://github.com/civicrm/civicrm-core/pull/11830))**
+
+- **[CRM-21815](https://issues.civicrm.org/jira/browse/CRM-21815) On re-opening
+  a civicase - Case Coordinator (and other roles) are not reinstated
+  ([11736](https://github.com/civicrm/civicrm-core/pull/11736))**
+
+- **[dev/core#165](https://lab.civicrm.org/dev/core/issues/165) Bad link in
+  civicrm/case/activity/view breadcrumb
+  ([12279](https://github.com/civicrm/civicrm-core/pull/12279))**
+
+### CiviContribute
+
+- **[CRM-21637](https://issues.civicrm.org/jira/browse/CRM-21637) Search
+  Criteria for Card Type ID and Card Number not respected in Batch
+  ([11495](https://github.com/civicrm/civicrm-core/pull/11495))**
+
+  The card type and card number filters for financial transactions in the
+  accounting batch interface now work as expected.
+
+- **[CRM-21854](https://issues.civicrm.org/jira/browse/CRM-21854) Contribution
+  start date and end dates are not respected
+  ([11881](https://github.com/civicrm/civicrm-core/pull/11881) and
+  [12504](https://github.com/civicrm/civicrm-core/pull/12504))**
+
+- **[dev/core#264](https://lab.civicrm.org/dev/core/issues/264) Fatal Error on
+  editing Financial Transaction
+  ([12502](https://github.com/civicrm/civicrm-core/pull/12502))**
+
+- **[dev/core#220](https://lab.civicrm.org/dev/core/issues/220) State
+  province/country doesn't show properly in the report
+  ([12390](https://github.com/civicrm/civicrm-core/pull/12390))**
+
+  This resolves a bug in the Contribution History by Relationship report where
+  strange values would appear for the State/Province and Country fields.
+
+- **[dev/core#202](https://lab.civicrm.org/dev/core/issues/202) Empty row under
+  currency drop down
+  ([12356](https://github.com/civicrm/civicrm-core/pull/12356))**
+
+  A warning now appears when a site has a disabled currency that is set as
+  default.
+
+- **[dev/core#88](https://lab.civicrm.org/dev/core/issues/88) Make sure
+  `financial_type_id` is set when a contribution is created
+  ([11907](https://github.com/civicrm/civicrm-core/pull/11907))**
+
+  This resolves a bug where the financial type would not be set on a one-time
+  contribution made through a contribution page.
+
+- **[dev/core#170](https://lab.civicrm.org/dev/core/issues/170) contribution
+  detail report errors when soft credits column is exposed
+  ([12281](https://github.com/civicrm/civicrm-core/pull/12281) and
+  [12282](https://github.com/civicrm/civicrm-core/pull/12282))**
+
+- **Fix e-notice, remove legacy code pattern
+  ([12298](https://github.com/civicrm/civicrm-core/pull/12298))**
+
+  This resolves a PHP notice when printing contribution receipts in bulk.
+
+- **[dev/core#56](https://lab.civicrm.org/dev/core/issues/56) Cancel Recurring
+  Contribution activity should have a source record id
+  ([11964](https://github.com/civicrm/civicrm-core/pull/11964))**
+
+  The activity created when cancelling a recurring contribution now has the
+  recurring contribution ID as the `source_record_id`.
+
+- **[dev/financial#14](https://lab.civicrm.org/dev/financial/issues/14) PayPal
+  Express recurring payment causes warning messages
+  ([12091](https://github.com/civicrm/civicrm-core/pull/12091))**
+
+- **[CRM-20697](https://issues.civicrm.org/jira/browse/CRM-20697) Online pay now
+  anomalies (contribution transfer to new contact)
+  ([11578](https://github.com/civicrm/civicrm-core/pull/11578))**
+
+  The Pay Now form now uses contact ID and checksum to validate the
+  contribution's contact to avoid creating new contacts when an anonymous
+  visitor fulfills a pending contribution.
+
+### CiviEvent
+
+- **[dev/core#272](https://lab.civicrm.org/dev/core/issues/272) Fatal Error
+  (Regression) on PCP pages associated with Events
+  ([12533](https://github.com/civicrm/civicrm-core/pull/12533))**
+
+- **[dev/core#124](https://lab.civicrm.org/dev/core/issues/124) Registration
+  approval issues ([12160](https://github.com/civicrm/civicrm-core/pull/12160)
+  and [12417](https://github.com/civicrm/civicrm-core/pull/12417))**
+
+  This resolves a PHP warning and some confusing aspects of handling event
+  registration approvals.
+
+### CiviGrant
+
+- **[dev/core#187](https://lab.civicrm.org/dev/core/issues/187) Fix typo in
+  `CRM_Grant_Form_Task` that prevents retrieving session key from URL
+  ([12317](https://github.com/civicrm/civicrm-core/pull/12317))**
+
+### CiviMail
+
+- **[dev/core#133](https://lab.civicrm.org/dev/core/issues/133) Reply-to field
+  with empty string get saved in DB as `NULL`
+  ([12176](https://github.com/civicrm/civicrm-core/pull/12176))**
+
+- **[CRM-20320](https://issues.civicrm.org/jira/browse/CRM-20320) Error in PEAR
+  SMTP causes mailing job to fail when an error occurs during one connection
+  ([11840](https://github.com/civicrm/civicrm-core/pull/11840))**
+
+  CiviMail will now disconnect the SMTP connection when a connection error is
+  detected and record the group of messages as not delivered.  This allows it to
+  reconnect later and send the messages.
+
+- **[CRM-17753](https://issues.civicrm.org/jira/browse/CRM-17753) Newsletter
+  confirmation emails shouldn't use do-not-reply@yourdomain.org
+  ([12270](https://github.com/civicrm/civicrm-core/pull/12270)) (preliminary
+  work)**
+
+- **[CRM-21779](https://issues.civicrm.org/jira/browse/CRM-21779) Civimail
+  allows adding current draft mailing recipients to recipients field
+  ([11724](https://github.com/civicrm/civicrm-core/pull/11724))**
+
+### CiviMember
+
+- **[dev/membership#4](https://lab.civicrm.org/dev/membership/issues/4) Admin
+  Membership type is displayed on Public contribution page.
+  ([12178](https://github.com/civicrm/civicrm-core/pull/12178))**
+
+- **[dev/core#276](https://lab.civicrm.org/dev/core/issues/276) Undefined index:
+  is_override on submit credit card membership
+  ([12563](https://github.com/civicrm/civicrm-core/pull/12563))**
+
+- **[dev/core#151](https://lab.civicrm.org/dev/core/issues/151) Action to Update
+  Recurring Contributions From Membership View is Never Shown
+  ([12228](https://github.com/civicrm/civicrm-core/pull/12228))**
+
+  The table to view recurring contributions on a membership now displays the
+  Edit action where appropriate.
+
+- **[CRM-21682](https://issues.civicrm.org/jira/browse/CRM-21682) Automatic
+  membership renewal fixes
+  ([12313](https://github.com/civicrm/civicrm-core/pull/12313) and
+  [12314](https://github.com/civicrm/civicrm-core/pull/12314)) (preliminary
+  work)**
+
+- **[CRM-21177](https://issues.civicrm.org/jira/browse/CRM-21177) Wrong interval
+  of recurring payment for auto-renewing membership
+  ([12289](https://github.com/civicrm/civicrm-core/pull/12289)) (preliminary
+  work)**
+
+### Joomla Integration
+
+- **[dev/joomla#1](https://lab.civicrm.org/dev/joomla/issues/1) CiviEvent menu
+  listing showing old events
+  ([46](https://github.com/civicrm/civicrm-joomla/pull/46))**
+
+### WordPress Integration
+
+- **[dev/wordpress#1](https://lab.civicrm.org/dev/wordpress/issues/1)
+  CiviCRM-WordPress - Gutenberg Compatibility: Do not parse shortcodes in REST
+  context ([130](https://github.com/civicrm/civicrm-wordpress/pull/130))**
+
+- **[CRM-21565](https://issues.civicrm.org/jira/browse/CRM-21565) Change mkdir
+  to use correct and more secure mode numbers
+  ([120](https://github.com/civicrm/civicrm-wordpress/pull/120))**
+
+## <a name="misc"></a>Miscellany
+
+- **(NFC) Convert files to use linux line endings not windows
+  ([12531](https://github.com/civicrm/civicrm-core/pull/12531))**
+
+- **Move DAO function to DAO class, call it from Merge class
+  ([12340](https://github.com/civicrm/civicrm-core/pull/12340))**
+
+- **NFC code cleanup for AuthNet, Paypal, PaypalPro IPNs
+  ([12386](https://github.com/civicrm/civicrm-core/pull/12386))**
+
+- **[dev/core#203](https://lab.civicrm.org/dev/core/issues/203) Cruft code in
+  `CRM_Core_BAO_OptionGroup::add()`
+  ([12357](https://github.com/civicrm/civicrm-core/pull/12357))**
+
+- **Remove unused instances of usedTable
+  ([12341](https://github.com/civicrm/civicrm-core/pull/12341) and
+  [12349](https://github.com/civicrm/civicrm-core/pull/12349))**
+
+- **(NFC) CiviUnitTestCase - Fix edge-case for mis-reported error
+  ([12347](https://github.com/civicrm/civicrm-core/pull/12347))**
+
+- **NFC Code cleanup to core task class
+  ([12316](https://github.com/civicrm/civicrm-core/pull/12316))**
+
+- **[NFC] Stop passing no-longer-part-of-signature variable
+  ([12329](https://github.com/civicrm/civicrm-core/pull/12329))**
+
+- **Fix typo in api explorer sample code
+  ([12324](https://github.com/civicrm/civicrm-core/pull/12324))**
+
+- **Remove unused code variable
+  ([12299](https://github.com/civicrm/civicrm-core/pull/12299))**
+
+- **Confirm & lock in group.get handling of is_active
+  ([12295](https://github.com/civicrm/civicrm-core/pull/12295))**
+
+- **Remove unused function getRecuringTransactionStatus from PayflowPro c…
+  ([12294](https://github.com/civicrm/civicrm-core/pull/12294))**
+
+- **Add upgrade function for message templates that does not involve copying the
+  whole template ([12224](https://github.com/civicrm/civicrm-core/pull/12224))**
+
+- **Function extraction BAO_Export class
+  ([12288](https://github.com/civicrm/civicrm-core/pull/12288))**
+
+- **Partial refactor of completeMembershipFromContribution
+  ([12271](https://github.com/civicrm/civicrm-core/pull/12271))**
+
+- **[NFC] Fix line endings (Jenkins where were you)
+  ([12280](https://github.com/civicrm/civicrm-core/pull/12280))**
+
+- **Towards fixing household merge export, extract function, add test, fix prev
+  ([12272](https://github.com/civicrm/civicrm-core/pull/12272))**
+
+- **Standardise line endings away from windows line endings to linux
+  ([212](https://github.com/civicrm/civicrm-packages/pull/212))**
+
+## <a name="credits"></a>Credits
+
+This release was developed by the following code authors:
+
+AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Alok Patel; Australian
+Greens - Seamus Lee; Bastien Ho; Caltha - Tomasz Pietrzkowski; CiviCoop - Jaap
+Jansma; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp -
+Camilo Rodriguez, Michael Devery, René Olivo, Vinu Varshith Sekar; Electronic
+Frontier Foundation - Mark Burdett; Fuzion - Jitendra Purohit; Ginkgo Street
+Labs - Frank Gómez; JMA Consulting - Monish Deb; Johan Vervloet; John
+Kingsnorth; Kanzu Code - Carl Andrew Lema; Left Join Labs - Sean Madsen; MJW
+Consulting - Matthew Wire; Pradeep Nayak; Romain Thouvenin; Squiffle Consulting -
+Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design -
+Michael McAndrew; Tom Bloor; Wikimedia Foundation - Eileen McNaughton
+
+Most authors also reviewed code for this release; in addition, the following
+reviewers contributed their comments:
+
+Agileware - Justin Freeman; baernm; Blackfly Solutions - Alan Dixon; Bob
+Silvern; Borislav Zlatanov; Caltha - Michal Mach; cartbar; Christian Wach;
+Circle Interactive - Dave Jenkins; CiviCoop - Erik Hommel; Community Builders -
+Andrew Perry; CompuCorp - Guanhuan Chen, Omar Abu Hussein; Coop SymbioTIC -
+Mathieu Lutfy; Drupal Association - Lizz Trudeau; Evan Chute; Forest CRM
+Consulting - Tamar Meir; Freeform Solutions - Herb van den Dool; Ginkgo Street
+Labs - Dan O'Brien; Hugo do Carmo; JMA Consulting - Joe Murray; Lemniscus - Noah
+Miller; Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone
+Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; Oxfam Germany -
+Thomas Schüttler; Richard van Oosterhout; Robin Fenwick; Semper IT - Karin
+Gerritsen; Stephen Palmstrom; Tech To The People - Xavier Dutoit; Timbsoft
+Technologies - Tunbola Ogunwande
+
+## <a name="feedback"></a>Feedback
+
+These release notes are edited by Andrew Hunt.  If you'd like to provide
+feedback on them, please log in to https://chat.civicrm.org/civicrm and contact
+`@agh1`.