Resolve security/core#52 by validating that an installtype is sensible
[civicrm-core.git] / release-notes / 4.7.28.md
index c602f0a8bc7c031450aad1f699ea5ed3c485a5c3..e75d0bb0832272e3f76775c6a732df14b34c3ead 100644 (file)
@@ -2,6 +2,7 @@
 
 Released December 6, 2017
 
+- **[Synopsis](#synopsis)**
 - **[Features](#features)**
 - **[Bugs resolved](#bugs)**
 - **[Miscellany](#misc)**
@@ -12,11 +13,11 @@ Released December 6, 2017
 
 | *Does this version...?*                                     |         |
 |:----------------------------------------------------------- |:-------:|
-| Fix security vulnerabilities?                               |         |
-| Change the database schema?                                 |         |
-| Alter the API?                                              |         |
-| Require attention to configuration options?                 |         |
-| Fix problems installing or upgrading to a previous version? |         |
+| Fix security vulnerabilities?                               |   no    |
+| **Change the database schema?**                             | **yes** |
+| **Alter the API?**                                          | **yes** |
+| Require attention to configuration options?                 |   no    |
+| Fix problems installing or upgrading to a previous version? |   no    |
 | **Introduce features?**                                     | **yes** |
 | **Fix bugs?**                                               | **yes** |
 
@@ -94,6 +95,19 @@ Released December 6, 2017
   Smart Groups with Public Pages visibility are now available for users to join
   them through the User Dashboard.
 
+- **[CRM-21379](https://issues.civicrm.org/jira/browse/CRM-21379) Fix Activity
+  dashlet issues ([11221](https://github.com/civicrm/civicrm-core/pull/11221))**
+
+  The Activities dashlet now has the option to display all activities regardless
+  of status.  The default is the legacy behavior of only displaying scheduled
+  activities.  Legacy users should note that the default order is reversed, with
+  the newest activities displayed first.
+
+- **Hw 390 fixed iframe popup
+  ([11075](https://github.com/civicrm/civicrm-core/pull/11075))**
+
+  iframe popups on AngularJS pages now have a default height.
+
 ### CiviCase
 
 - **[CRM-20078](https://issues.civicrm.org/jira/browse/CRM-20078) Activity card -
@@ -106,9 +120,13 @@ Released December 6, 2017
 
 ### CiviContribute
 
-- **[CRM-20868](https://issues.civicrm.org/jira/browse/CRM-20868) set
+- **[CRM-20868](https://issues.civicrm.org/jira/browse/CRM-20868),
+  [CRM-21480](https://issues.civicrm.org/jira/browse/CRM-21480), and
+  [CRM-21479](https://issues.civicrm.org/jira/browse/CRM-21479) set
   invoice_number at contribution->create, not invoice creation
-  ([10681](https://github.com/civicrm/civicrm-core/pull/10681))**
+  ([10681](https://github.com/civicrm/civicrm-core/pull/10681),
+  [11341](https://github.com/civicrm/civicrm-core/pull/11341), and
+  [11321](https://github.com/civicrm/civicrm-core/pull/11321))**
 
   Every contribution now comes with an invoice number regardless of whether an
   invoice has been generated.
@@ -155,7 +173,7 @@ Released December 6, 2017
 
   The click report summary now orders links by the descending number of clicks.
 
-### Drupal Integration Modules
+### Drupal Integration
 
 - **[CRM-21297](https://issues.civicrm.org/jira/browse/CRM-21297) Automatically
   fill database details in installer for Drupal
@@ -165,6 +183,22 @@ Released December 6, 2017
   to the CMS database connection details.  This matches the process on
   WordPress.
 
+### WordPress Integration
+
+- **[CRM-18754](https://issues.civicrm.org/jira/browse/CRM-18754) Process
+  extension parameters in shortcodes
+  ([112](https://github.com/civicrm/civicrm-wordpress/pull/112))**
+
+  Extensions and WordPress plugins can now process custom parameters in the
+  `civicrm` shortcode.
+
+- **[CRM-21212](https://issues.civicrm.org/jira/browse/CRM-21212) Get E2E Tests
+  working on wordpress
+  ([11017](https://github.com/civicrm/civicrm-core/pull/11017)) (preliminary
+  work)**
+
+  A new function retrives the WordPress user ID from a user name.
+
 ## <a name="bugs"></a>Bugs resolved
 
 ### CiviMail
@@ -173,11 +207,35 @@ Released December 6, 2017
   recipient field isn't marked as required
   ([11185](https://github.com/civicrm/civicrm-core/pull/11185))**
 
-- **[CRM-21508](https://issues.civicrm.org/jira/browse/CRM-21508) civicrm_mailing.created_date information passed to Doctor When is incorrect ([11361](https://github.com/civicrm/civicrm-core/pull/11361))**
+- **[CRM-21508](https://issues.civicrm.org/jira/browse/CRM-21508)
+  civicrm_mailing.created_date information passed to Doctor When is incorrect
+  ([11361](https://github.com/civicrm/civicrm-core/pull/11361))**
+
+  The mailing date would default to the current timestamp when null.
+
+- **[CRM-21411](https://issues.civicrm.org/jira/browse/CRM-21411) When Sending a
+  CiviMail from an advanced search no unsubscribe group field shows
+  ([11258](https://github.com/civicrm/civicrm-core/pull/11258))**
+
+- **[CRM-21284](https://issues.civicrm.org/jira/browse/CRM-21284) Outdated link
+  to mail setup documentation
+  ([11104](https://github.com/civicrm/civicrm-core/pull/11104))**
+
+- **[CRM-20892](https://issues.civicrm.org/jira/browse/CRM-20892) Same mailing
+  open in two windows can overwrite data on scheduled mailings
+  ([10965](https://github.com/civicrm/civicrm-core/pull/10965))**
 
-- **[CRM-21411](https://issues.civicrm.org/jira/browse/CRM-21411) When Sending a CiviMail from an advanced search no unsubscribe group field shows ([11258](https://github.com/civicrm/civicrm-core/pull/11258))**
+- **[CRM-21362](https://issues.civicrm.org/jira/browse/CRM-21362) Mailing
+  summary report group by MySQL 5.7 error
+  ([11206](https://github.com/civicrm/civicrm-core/pull/11206))**
 
-- **[CRM-21284](https://issues.civicrm.org/jira/browse/CRM-21284) Outdated link to mail setup documentation ([11104](https://github.com/civicrm/civicrm-core/pull/11104))**
+- **[CRM-20397](https://issues.civicrm.org/jira/browse/CRM-20397) CiviMail send
+  immediately date/time check too sensitive
+  ([11093](https://github.com/civicrm/civicrm-core/pull/11093) and
+  [11092](https://github.com/civicrm/civicrm-core/pull/11092))**
+
+  Users would get errors that they were attempting to schedule mailings in the
+  past.
 
 ### Core CiviCRM
 
@@ -196,123 +254,206 @@ Released December 6, 2017
   The French overseas departments Wallis-et-Futuna and Nouvelle-Calédonie are
   now available in the State/Province list.
 
-- **Fix for mysql 5.7 crash due to not adding ANY_VALUE ([11346](https://github.com/civicrm/civicrm-core/pull/11346))**
-
-- **[CRM-21455](https://issues.civicrm.org/jira/browse/CRM-21455) Intra-rc regression supportsFullGroupBy: MariaDB 10.2 does not support ANY_VALUE ([11339](https://github.com/civicrm/civicrm-core/pull/11339))**
-
-- **[CRM-21480](https://issues.civicrm.org/jira/browse/CRM-21480) INTRA-rc regression 4.7.28-rc: updateContributionInvoiceNumber: fails on MariaDB 10.2 strict (default) mode: 'Truncated incorrect DOUBLE value' ([11341](https://github.com/civicrm/civicrm-core/pull/11341))**
-
-- **[CRM-21481](https://issues.civicrm.org/jira/browse/CRM-21481) 4.7.28-rc: needs to call rebuildMultilingualSchema() ([11322](https://github.com/civicrm/civicrm-core/pull/11322))**
+- **[CRM-21481](https://issues.civicrm.org/jira/browse/CRM-21481) 4.7.28-rc:
+  needs to call rebuildMultilingualSchema()
+  ([11322](https://github.com/civicrm/civicrm-core/pull/11322))**
 
-- **[CRM-21479](https://issues.civicrm.org/jira/browse/CRM-21479) 4.7.28-rc: updateContributionInvoiceNumber() syntax error ([11321](https://github.com/civicrm/civicrm-core/pull/11321))**
+  The introduction of multilingual columns means that the multilingual schema
+  must be rebuilt.  Otherwise, multilingual sites will encounter an error when
+  upgrading.
 
-- **[CRM-21436](https://issues.civicrm.org/jira/browse/CRM-21436) Fatal error on contribution page with only pay later enabled. ([11286](https://github.com/civicrm/civicrm-core/pull/11286))**
+- **[CRM-21363](https://issues.civicrm.org/jira/browse/CRM-21363) and
+  [CRM-21455](https://issues.civicrm.org/jira/browse/CRM-21455) Ensure that
+  tests run using ONLY_FULL_GROUP_BY sql_mode for mysql 5.7
+  ([11249](https://github.com/civicrm/civicrm-core/pull/11249),
+  [10934](https://github.com/civicrm/civicrm-core/pull/10934),
+  [11339](https://github.com/civicrm/civicrm-core/pull/11339), and
+  [11346](https://github.com/civicrm/civicrm-core/pull/11346))**
 
-- **[CRM-21363](https://issues.civicrm.org/jira/browse/CRM-21363) Ensure that tests run using ONLY_FULL_GROUP_BY sql_mode for mysql 5.7 ([11249](https://github.com/civicrm/civicrm-core/pull/11249) and [10934](https://github.com/civicrm/civicrm-core/pull/10934))**
+- **[CRM-21364](https://issues.civicrm.org/jira/browse/CRM-21364) Fix Tests
+  which fail on ONLY_FULL_GROUP_BY
+  ([11229](https://github.com/civicrm/civicrm-core/pull/11229),
+  [11219](https://github.com/civicrm/civicrm-core/pull/11219), and
+  [11209](https://github.com/civicrm/civicrm-core/pull/11209))**
 
-- **[CRM-21364](https://issues.civicrm.org/jira/browse/CRM-21364) Fix Tests which fail on ONLY_FULL_GROUP_BY ([11229](https://github.com/civicrm/civicrm-core/pull/11229), [11219](https://github.com/civicrm/civicrm-core/pull/11219), and [11209](https://github.com/civicrm/civicrm-core/pull/11209))**
+  This resolves a variety of problems that may occur if the MySQL `sql_mode` is
+  set to `ONLY_FULL_GROUP_BY`.
 
-- **[CRM-21388](https://issues.civicrm.org/jira/browse/CRM-21388) Extension Page should only throw exception if key is set ([11234](https://github.com/civicrm/civicrm-core/pull/11234))**
+- **[CRM-21388](https://issues.civicrm.org/jira/browse/CRM-21388) Extension Page
+  should only throw exception if key is set
+  ([11234](https://github.com/civicrm/civicrm-core/pull/11234))**
 
-- **Fix Recurring contribution sql so that it doesen't use group by as th… ([11231](https://github.com/civicrm/civicrm-core/pull/11231))**
+  When checking that an extension's key follows the expected standard, the
+  extension page should not throw an exception if the key is blank or missing.
 
-- **[CRM-21379](https://issues.civicrm.org/jira/browse/CRM-21379) Fix Activity dashlet issues ([11221](https://github.com/civicrm/civicrm-core/pull/11221))**
+- **[CRM-20934](https://issues.civicrm.org/jira/browse/CRM-20934) Child groups
+  not present in group list selector
+  ([10717](https://github.com/civicrm/civicrm-core/pull/10717))**
 
-- **HW-382: Moved help section outside of block ([11220](https://github.com/civicrm/civicrm-core/pull/11220))**
+  This resolves a problem where having a disabled parent group would prevent a
+  group from appearing in a group selection field even if another parent group
+  is active.
 
-- **[CRM-20934](https://issues.civicrm.org/jira/browse/CRM-20934) Child groups not present in group list selector ([10717](https://github.com/civicrm/civicrm-core/pull/10717))**
+- **[CRM-21351](https://issues.civicrm.org/jira/browse/CRM-21351) Contact
+  deceased date does not respect the localisation date format
+  ([11200](https://github.com/civicrm/civicrm-core/pull/11200))**
 
-- **[CRM-21373](https://issues.civicrm.org/jira/browse/CRM-21373) Notice error on creating cases ([11217](https://github.com/civicrm/civicrm-core/pull/11217))**
+- **[CRM-21306](https://issues.civicrm.org/jira/browse/CRM-21306) DoctorWhen
+  extension looses the comments from columns when converting
+  ([11129](https://github.com/civicrm/civicrm-core/pull/11129))**
 
-- **[CRM-21255](https://issues.civicrm.org/jira/browse/CRM-21255) Error when downloading document from case activity ([11186](https://github.com/civicrm/civicrm-core/pull/11186))**
+  When replacing columns to resolve date fields, Doctor When now restores the
+  field comments to the database.
 
-- **[CRM-21351](https://issues.civicrm.org/jira/browse/CRM-21351) Contact deceased date does not respect the localisation date format ([11200](https://github.com/civicrm/civicrm-core/pull/11200))**
+- **[CRM-21337](https://issues.civicrm.org/jira/browse/CRM-21337) ISO compliance
+  for Romanian and Bulgarian counties
+  ([11168](https://github.com/civicrm/civicrm-core/pull/11168))**
 
-- **[CRM-21321](https://issues.civicrm.org/jira/browse/CRM-21321) Membership fields not loading in 'On behalf of' profile ([11148](https://github.com/civicrm/civicrm-core/pull/11148))**
+  This fixes the spelling of a Bulgarian province and a number of Romanian
+  counties in the state/province list.
 
-- **[CRM-21339](https://issues.civicrm.org/jira/browse/CRM-21339) Fix fatal js error on cart checkout when pay later not enabled ([11170](https://github.com/civicrm/civicrm-core/pull/11170))**
+- **[CRM-21283](https://issues.civicrm.org/jira/browse/CRM-21283) Incorporate
+  Barbados and Antigua and Barbuda Parishes into States list
+  ([11100](https://github.com/civicrm/civicrm-core/pull/11100))**
 
-- **CRM - 21340 using civi function to get contact id because it is cms agnostic ([11172](https://github.com/civicrm/civicrm-core/pull/11172))**
+  This adds parishes of Barbados and Antigua and Barbuda to the state/province
+  list.
 
-- **[CRM-21009](https://issues.civicrm.org/jira/browse/CRM-21009) Removing event selection from participant does not free up capacity ([10805](https://github.com/civicrm/civicrm-core/pull/10805))**
+- **[CRM-21267](https://issues.civicrm.org/jira/browse/CRM-21267) Error 500 -
+  Call to undefined method CRM_Contact_Import_Parser::formatCustomDate
+  ([11124](https://github.com/civicrm/civicrm-core/pull/11124))**
 
-- **[CRM-21306](https://issues.civicrm.org/jira/browse/CRM-21306) DoctorWhen extension looses the comments from columns when converting ([11129](https://github.com/civicrm/civicrm-core/pull/11129))**
+  Some code reorganization resulted in a method being called from within the
+  wrong class during import of custom date fields, resulting in a fatal error.
+  This calls it correctly.
 
-- **[CRM-21337](https://issues.civicrm.org/jira/browse/CRM-21337) ISO compliance for Romanian and Bulgarian counties ([11168](https://github.com/civicrm/civicrm-core/pull/11168))**
+- **Navigation - Fix serialization error
+  ([11107](https://github.com/civicrm/civicrm-core/pull/11107))**
 
-- **[CRM-21203](https://issues.civicrm.org/jira/browse/CRM-21203) cli.php PHP error prevents cron jobs from running ([11062](https://github.com/civicrm/civicrm-core/pull/11062))**
+- **[CRM-19346](https://issues.civicrm.org/jira/browse/CRM-19346) gender_id
+  uniqueness not enforced on option groups edit form
+  ([11089](https://github.com/civicrm/civicrm-core/pull/11089))**
 
-- **[CRM-21305](https://issues.civicrm.org/jira/browse/CRM-21305) Sorting not working on Batch listing page ([11127](https://github.com/civicrm/civicrm-core/pull/11127))**
+  Now each value in an option group must be unique.
 
-- **[CRM-21267](https://issues.civicrm.org/jira/browse/CRM-21267) Error 500 - Call to undefined method CRM_Contact_Import_Parser::formatCustomDate ([11124](https://github.com/civicrm/civicrm-core/pull/11124))**
+- **[CRM-21214](https://issues.civicrm.org/jira/browse/CRM-21214) Chaining
+  shared addresses doesn't work correctly
+  ([11019](https://github.com/civicrm/civicrm-core/pull/11019))**
 
-- **Navigation - Fix serialization error ([11107](https://github.com/civicrm/civicrm-core/pull/11107))**
+  This prevents complex address inheritance cases such as second-degree address
+  sharing and recursive address sharing.
 
-- **[nfc] Fix missing comma for phpcs ([11119](https://github.com/civicrm/civicrm-core/pull/11119))**
+- **[CRM-20779](https://issues.civicrm.org/jira/browse/CRM-20779) Incorrect
+  files showing in Tab for custom field
+  ([11082](https://github.com/civicrm/civicrm-core/pull/11082))**
 
-- **4.7.26 rc ([11111](https://github.com/civicrm/civicrm-core/pull/11111))**
+  On file custom fields in multiple-entry custom data sets, the first entry's
+  file would display for all entries.
 
-- **HW-381: Added container block to wrap elements ([11096](https://github.com/civicrm/civicrm-core/pull/11096))**
+- **[CRM-20468](https://issues.civicrm.org/jira/browse/CRM-20468)
+  Attachment.create API HTML escapes the uploaded content
+  ([10876](https://github.com/civicrm/civicrm-core/pull/10876))**
 
-- **[CRM-21281](https://issues.civicrm.org/jira/browse/CRM-21281) Post Hook for LineItem does not receive entity_id and entity_table  ([11108](https://github.com/civicrm/civicrm-core/pull/11108) and [11097](https://github.com/civicrm/civicrm-core/pull/11097))**
+- **[CRM-19620](https://issues.civicrm.org/jira/browse/CRM-19620) importing
+  record with external_identifier that matches with a deleted contact results in
+  traceback ([11133](https://github.com/civicrm/civicrm-core/pull/11133))**
 
-- **[CRM-19346](https://issues.civicrm.org/jira/browse/CRM-19346) gender_id uniqueness not enforced on option groups edit form ([11089](https://github.com/civicrm/civicrm-core/pull/11089))**
+  Now the External ID value is stripped from the contact in the trash and a new
+  contact is created.
 
-- **[CRM-21214](https://issues.civicrm.org/jira/browse/CRM-21214) Chaining shared addresses doesn't work correctly ([11019](https://github.com/civicrm/civicrm-core/pull/11019))**
+- **[CRM-20545](https://issues.civicrm.org/jira/browse/CRM-20545) contact report
+  lists contacts that have been 'soft' deleted (placed in Trash)
+  ([11136](https://github.com/civicrm/civicrm-core/pull/11136))**
 
-- **[CRM-20779](https://issues.civicrm.org/jira/browse/CRM-20779) Incorrect files showing in Tab for custom field ([11082](https://github.com/civicrm/civicrm-core/pull/11082))**
+- **[CRM-21303](https://issues.civicrm.org/jira/browse/CRM-21303) Dedupe
+  datatable incorrectly calculates rows
+  ([11121](https://github.com/civicrm/civicrm-core/pull/11121))**
 
-- **[CRM-20468](https://issues.civicrm.org/jira/browse/CRM-20468) Attachment.create API HTML escapes the uploaded content ([10876](https://github.com/civicrm/civicrm-core/pull/10876))**
+  This fixes a problem where no more than 25 rows would display on the conflicts
+  screen.
 
-- **4.7.26 rc ([11083](https://github.com/civicrm/civicrm-core/pull/11083))**
+- **[CRM-21294](https://issues.civicrm.org/jira/browse/CRM-21294) js error when
+  selecting & unselecting merge contacts
+  ([11117](https://github.com/civicrm/civicrm-core/pull/11117))**
 
-- **(NFC) Add in test of current practice in updating multiselect custom data ([11081](https://github.com/civicrm/civicrm-core/pull/11081))**
+- **[CRM-21246](https://issues.civicrm.org/jira/browse/CRM-21246) Problem
+  'double chaining', e.g. Contact.get - Relationship.get - Contact.get
+  ([11056](https://github.com/civicrm/civicrm-core/pull/11056))**
 
-- **Hw 390 fixed iframe popup ([11075](https://github.com/civicrm/civicrm-core/pull/11075))**
+  This fixes problems due to ambiguity of the `value` syntax when using API
+  chaining inside another chained API call.
 
-- **[CRM-20892](https://issues.civicrm.org/jira/browse/CRM-20892) Same mailing open in two windows can overwrite data on scheduled mailings ([10965](https://github.com/civicrm/civicrm-core/pull/10965))**
+- **[CRM-21258](https://issues.civicrm.org/jira/browse/CRM-21258) Display name
+  fatal error if names are too long
+  ([11063](https://github.com/civicrm/civicrm-core/pull/11063))**
 
-- **HW-380: Remove spacer div ([11071](https://github.com/civicrm/civicrm-core/pull/11071))**
+  Display name and sort name will now be truncated rather than cause a fatal
+  error if the length is too long.
 
-- **Civilint views components files ([482](https://github.com/civicrm/civicrm-drupal/pull/482))**
+### CiviMember
 
-- **Civilint 2nd half of civicrm_handler_field files ([486](https://github.com/civicrm/civicrm-drupal/pull/486))**
+- **[CRM-21321](https://issues.civicrm.org/jira/browse/CRM-21321) Membership
+  fields not loading in 'On behalf of' profile
+  ([11148](https://github.com/civicrm/civicrm-core/pull/11148))**
 
-- **Run civilint against civicrm_handler_filter_state_multi.inc ([488](https://github.com/civicrm/civicrm-drupal/pull/488))**
+  You can now add membership fields to the profile for contributions on behalf
+  of an organization, and they will display in the on-behalf section of the
+  contribution page.
 
-- **Run Civilint against civicrm_engage module ([493](https://github.com/civicrm/civicrm-drupal/pull/493))**
+- **[CRM-20227](https://issues.civicrm.org/jira/browse/CRM-20227) Regression -
+  Membership status override gets 'stuck'
+  ([11188](https://github.com/civicrm/civicrm-core/pull/11188))**
 
-- **Run Civilint against the rest of views_handler and views plugin files ([487](https://github.com/civicrm/civicrm-drupal/pull/487))**
+  This resolves a bug that would keep the membership status set by a status
+  override when the override was disabled.
 
-- **Need to include fields in order by  in select distinct to work ([494](https://github.com/civicrm/civicrm-drupal/pull/494))**
+- **[CRM-20955](https://issues.civicrm.org/jira/browse/CRM-20955) Contact's
+  second membership fails to inherit when created in back end using price set
+  ([11184](https://github.com/civicrm/civicrm-core/pull/11184)) (follow-up)**
 
-- **Enable CiviCRM Extensions to interact with the WordPress shortcode ([112](https://github.com/civicrm/civicrm-wordpress/pull/112))**
+  Test coverage was added.
 
-### NYSS
+- **[CRM-19998](https://issues.civicrm.org/jira/browse/CRM-19998) Membership
+  start / end date have no effect in Search Builder
+  ([11134](https://github.com/civicrm/civicrm-core/pull/11134))**
 
-- **[CRM-21362](https://issues.civicrm.org/jira/browse/CRM-21362) Mailing summary report group by MySQL 5.7 error ([11206](https://github.com/civicrm/civicrm-core/pull/11206))**
+- **[CRM-20432](https://issues.civicrm.org/jira/browse/CRM-20432) Pending
+  Contributions which have a Payment recorded and are Completed do not trigger
+  the related Membership to become current, status remains pending
+  ([11125](https://github.com/civicrm/civicrm-core/pull/11125))**
 
-### CiviMember
+- **[CRM-19060](https://issues.civicrm.org/jira/browse/CRM-19060) Membership
+  Detailed Report Payment Amount (most recent) not reporting correct
+  contribution ([8837](https://github.com/civicrm/civicrm-core/pull/8837))**
 
-- **[CRM-20227](https://issues.civicrm.org/jira/browse/CRM-20227) Regression - Membership status override gets 'stuck' ([11188](https://github.com/civicrm/civicrm-core/pull/11188))**
+### CiviCase
 
-- **[CRM-20955](https://issues.civicrm.org/jira/browse/CRM-20955) Contact's second membership fails to inherit when created in back end using price set ([11184](https://github.com/civicrm/civicrm-core/pull/11184))**
+- **[CRM-21367](https://issues.civicrm.org/jira/browse/CRM-21367) Get help
+  section out of container
+  ([11096](https://github.com/civicrm/civicrm-core/pull/11096),
+  [11156](https://github.com/civicrm/civicrm-core/pull/11156), and
+  [11220](https://github.com/civicrm/civicrm-core/pull/11220))**
 
-- **[CRM-19998](https://issues.civicrm.org/jira/browse/CRM-19998) Membership start / end date have no effect in Search Builder ([11134](https://github.com/civicrm/civicrm-core/pull/11134))**
+  Help text on the case types screens is now outside of the CiviCRM content
+  block.
 
-- **[CRM-20432](https://issues.civicrm.org/jira/browse/CRM-20432) CIVICRM-221 Pending Contributions which have a Payment recorded and are Completed do not trigger the related Membership to become current, status remains pending ([11125](https://github.com/civicrm/civicrm-core/pull/11125))**
+- **[CRM-21373](https://issues.civicrm.org/jira/browse/CRM-21373) Notice error
+  on creating cases
+  ([11217](https://github.com/civicrm/civicrm-core/pull/11217))**
 
-### WordPress Integration
+  This resolves a PHP notice that would appear upon creating a case.
 
-- **[CRM-21212](https://issues.civicrm.org/jira/browse/CRM-21212) Get E2E Tests working on wordpress ([11017](https://github.com/civicrm/civicrm-core/pull/11017))**
+- **[CRM-21255](https://issues.civicrm.org/jira/browse/CRM-21255) Error when
+  downloading document from case activity
+  ([11186](https://github.com/civicrm/civicrm-core/pull/11186))**
 
-### CiviCase
+  This resolves a bug in CiviCase 5.0 (org.civicrm.civicase) when printing a
+  case document.
 
-- **[CRM-21367](https://issues.civicrm.org/jira/browse/CRM-21367) Get help
-  section out of container
-  ([11156](https://github.com/civicrm/civicrm-core/pull/11156))**
+- **HW-380: Remove spacer div
+  ([11071](https://github.com/civicrm/civicrm-core/pull/11071))**
 
-  Help text on the case types screen is now outside of the CiviCRM content block.
+  This makes a slight adjustment to the case type editing form.
 
 ### CiviContribute
 
@@ -323,9 +464,53 @@ Released December 6, 2017
   This resolves a bug where tax rates would always display 8 decimal places on
   contribution page confirmation and thank-you pages.
 
-- **[CRM-20772](https://issues.civicrm.org/jira/browse/CRM-20772) Price set calculation precision when sales tax enabled ([11016](https://github.com/civicrm/civicrm-core/pull/11016))**
+- **[CRM-21436](https://issues.civicrm.org/jira/browse/CRM-21436) Fatal error on
+  contribution page with only pay later enabled.
+  ([11286](https://github.com/civicrm/civicrm-core/pull/11286))**
+
+- **Fix Recurring contribution sql so that it doesen't use group by as there
+  doesn't appear to be a reason to do so given that we have a where id = x
+  clause and we were grouping on the same field
+  ([11231](https://github.com/civicrm/civicrm-core/pull/11231))**
+
+  This resolves a test failure on retrieving the related contact for a recurring
+  contribution.
 
-- **[CRM-20572](https://issues.civicrm.org/jira/browse/CRM-20572) Remove jcalendar from Contrib Sybunt custom Search ([10355](https://github.com/civicrm/civicrm-core/pull/10355))**
+- **[CRM-21340](https://issues.civicrm.org/jira/browse/CRM-21340) make "view my
+  invoices" permission cms agnostic
+  ([11172](https://github.com/civicrm/civicrm-core/pull/11172))**
+
+  This removes the use of a Drupal-specific global when checking permissions to
+  download an invoice.
+
+- **[CRM-21305](https://issues.civicrm.org/jira/browse/CRM-21305) Sorting not
+  working on Batch listing page
+  ([11127](https://github.com/civicrm/civicrm-core/pull/11127))**
+
+- **[CRM-21281](https://issues.civicrm.org/jira/browse/CRM-21281) Post Hook for
+  LineItem does not receive entity_id and entity_table
+  ([11108](https://github.com/civicrm/civicrm-core/pull/11108) and
+  [11097](https://github.com/civicrm/civicrm-core/pull/11097))**
+
+  When editing a line item, `hook_civicrm_post` now specifies the ID and table
+  of the line item that was modified.
+
+- **[CRM-20772](https://issues.civicrm.org/jira/browse/CRM-20772) Price set
+  calculation precision when sales tax enabled
+  ([11016](https://github.com/civicrm/civicrm-core/pull/11016)) (initial work)**
+
+  This adds additional decimal places for a price field value's amount field and
+  a membership type's minimum fee field in order to accommodate future changes.
+
+- **[CRM-20572](https://issues.civicrm.org/jira/browse/CRM-20572) Remove
+  jcalendar from Contrib Sybunt custom Search
+  ([10355](https://github.com/civicrm/civicrm-core/pull/10355))**
+
+  This removes a deprecated library.
+
+- **[CRM-21319](https://issues.civicrm.org/jira/browse/CRM-21319) Total Amount
+  not translated on Contribution Page
+  ([11147](https://github.com/civicrm/civicrm-core/pull/11147))**
 
 ### CiviEvent
 
@@ -334,7 +519,21 @@ Released December 6, 2017
   replacement because the parenthesis is outside the ts markers
   ([10942](https://github.com/civicrm/civicrm-core/pull/10942))**
 
-- **[CRM-21327](https://issues.civicrm.org/jira/browse/CRM-21327) Not able to change Payment Processor in event fees ([11153](https://github.com/civicrm/civicrm-core/pull/11153))**
+- **[CRM-21339](https://issues.civicrm.org/jira/browse/CRM-21339) Fix fatal js
+  error on cart checkout when pay later not enabled
+  ([11170](https://github.com/civicrm/civicrm-core/pull/11170))**
+
+- **[CRM-21009](https://issues.civicrm.org/jira/browse/CRM-21009) Removing event
+  selection from participant does not free up capacity
+  ([10805](https://github.com/civicrm/civicrm-core/pull/10805))**
+
+- **[CRM-21327](https://issues.civicrm.org/jira/browse/CRM-21327) Not able to
+  change Payment Processor in event fees
+  ([11153](https://github.com/civicrm/civicrm-core/pull/11153))**
+
+  The field to choose payment processors on events was different from the
+  corresponding setting for contribution pages.  This makes the two consistent,
+  including handling permissions accurately.
 
 ### Drupal Integration Modules
 
@@ -349,43 +548,34 @@ Released December 6, 2017
   when calling drush cvapi should be treated as a drush error
   ([503](https://github.com/civicrm/civicrm-drupal/pull/503))**
 
-- **[CRM-21272](https://issues.civicrm.org/jira/browse/CRM-21272) CMSUser has Drupal 6/7 code that breaks when using with Drupal 8 ([11145](https://github.com/civicrm/civicrm-core/pull/11145), [11139](https://github.com/civicrm/civicrm-core/pull/11139), and [11079](https://github.com/civicrm/civicrm-core/pull/11079))**
-
-- **[CRM-19995](https://issues.civicrm.org/jira/browse/CRM-19995) Notice : Undefined offset: 5 dans _civicrm_member_roles_sync() ([500](https://github.com/civicrm/civicrm-drupal/pull/500))**
-
-### CiviContribute, Internationalisation
-
-- **[CRM-21319](https://issues.civicrm.org/jira/browse/CRM-21319) Total Amount not translated on Contribution Page ([11147](https://github.com/civicrm/civicrm-core/pull/11147))**
+- **[CRM-21132](https://issues.civicrm.org/jira/browse/CRM-21132) Member Role
+  Sync: civicrm_member_roles produces a Fatal "unknown error" when one hits
+  Manually Synchronize
+  ([494](https://github.com/civicrm/civicrm-drupal/pull/494))**
 
-### Import
+- **[CRM-21272](https://issues.civicrm.org/jira/browse/CRM-21272) CMSUser has
+  Drupal 6/7 code that breaks when using with Drupal 8
+  ([11145](https://github.com/civicrm/civicrm-core/pull/11145),
+  [11139](https://github.com/civicrm/civicrm-core/pull/11139), and
+  [11079](https://github.com/civicrm/civicrm-core/pull/11079))**
 
-- **[CRM-19620](https://issues.civicrm.org/jira/browse/CRM-19620) importing record with external_identifier that matches with a deleted contact results in traceback ([11133](https://github.com/civicrm/civicrm-core/pull/11133))**
+  Code to determine if user registration is permitted is now handled in the
+  `CRM_Utils_System` classes.
 
-### CiviReport
+- **[CRM-19995](https://issues.civicrm.org/jira/browse/CRM-19995) Notice :
+  Undefined offset: 5 dans _civicrm_member_roles_sync()
+  ([500](https://github.com/civicrm/civicrm-drupal/pull/500))**
 
-- **[CRM-20545](https://issues.civicrm.org/jira/browse/CRM-20545) contact report lists contacts that have been 'soft' deleted (placed in Trash) ([11136](https://github.com/civicrm/civicrm-core/pull/11136))**
+  This fixes a typo in the member role sync module that led to a PHP notice.
 
-- **[CRM-19060](https://issues.civicrm.org/jira/browse/CRM-19060) Membership Detailed Report Payment Amount (most recent) not reporting correct contribution ([8837](https://github.com/civicrm/civicrm-core/pull/8837))**
+### Joomla Integration
 
-### Dedupe
+- **[CRM-21203](https://issues.civicrm.org/jira/browse/CRM-21203) cli.php PHP
+  error prevents cron jobs from running
+  ([11062](https://github.com/civicrm/civicrm-core/pull/11062))**
 
-- **[CRM-21303](https://issues.civicrm.org/jira/browse/CRM-21303) Dedupe datatable incorrectly calculates rows ([11121](https://github.com/civicrm/civicrm-core/pull/11121))**
-
-- **[CRM-21294](https://issues.civicrm.org/jira/browse/CRM-21294) js error when selecting & unselecting merge contacts ([11117](https://github.com/civicrm/civicrm-core/pull/11117))**
-
-### Core CiviCRM, Internationalisation
-
-- **[CRM-21283](https://issues.civicrm.org/jira/browse/CRM-21283) Incorporate Barbados and Antigua and Barbuda Parishes into States list ([11100](https://github.com/civicrm/civicrm-core/pull/11100))**
-
-### CiviMail, NYSS
-
-- **[CRM-20397](https://issues.civicrm.org/jira/browse/CRM-20397) CiviMail send immediately date/time check too sensitive ([11093](https://github.com/civicrm/civicrm-core/pull/11093) and [11092](https://github.com/civicrm/civicrm-core/pull/11092))**
-
-### CiviCRM API
-
-- **[CRM-21246](https://issues.civicrm.org/jira/browse/CRM-21246) Problem 'double chaining', e.g. Contact.get - Relationship.get - Contact.get ([11056](https://github.com/civicrm/civicrm-core/pull/11056))**
-
-- **[CRM-21258](https://issues.civicrm.org/jira/browse/CRM-21258) Display name fatal error if names are too long ([11063](https://github.com/civicrm/civicrm-core/pull/11063))**
+  Changes in Joomla 3.8--along with difficulties in detecting the Joomla
+  version--prevented cron from executing on many Joomla sites.
 
 ## <a name="misc"></a>Miscellany
 
@@ -408,16 +598,62 @@ Released December 6, 2017
 
   This change regenerates the DAO checksum.
 
+- **[nfc] Fix missing comma for phpcs
+  ([11119](https://github.com/civicrm/civicrm-core/pull/11119))**
+
+- **(NFC) Add in test of current practice in updating multiselect custom data
+  ([11081](https://github.com/civicrm/civicrm-core/pull/11081))**
+
+- **Civilint views components files
+  ([482](https://github.com/civicrm/civicrm-drupal/pull/482))**
+
+- **Civilint 2nd half of civicrm_handler_field files
+  ([486](https://github.com/civicrm/civicrm-drupal/pull/486))**
+
+- **Run civilint against civicrm_handler_filter_state_multi.inc
+  ([488](https://github.com/civicrm/civicrm-drupal/pull/488))**
+
+- **Run Civilint against civicrm_engage module
+  ([493](https://github.com/civicrm/civicrm-drupal/pull/493))**
+
+- **Run Civilint against the rest of views_handler and views plugin files
+  ([487](https://github.com/civicrm/civicrm-drupal/pull/487))**
+
 ## <a name="credits"></a>Credits
 
 This release was developed by the following code authors:
 
-AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Alok Patel, Justin Freeman; Australian Greens - Seamus Lee; Christian Wach; Circle Interactive - Dave Jenkins; CiviCoop - Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Nicolas Ganivet, Yashodha Chaku; CiviFirst - John Kirk; Community IT Academy - William Mortada; CompuCorp - Michael Devery, Omar Abu Hussein; Coop SymbioTIC - Mathieu Lutfy; DanielvV; Deepak Srivastava; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; JMA Consulting - Edsel Lopez, Monish Deb, Pradeep Nayak; John Kingsnorth; Joinery - Allen Shaw; Lemniscus - Noah Miller; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; mukeshcompucorp; olivierh65; Pawel Nowak; powdevel; Progressive Technology Project - Jamie McClelland; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton, Maggie Epps
+AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Alok Patel, Justin
+Freeman; Australian Greens - Seamus Lee; Christian Wach; Circle Interactive -
+Dave Jenkins; CiviCoop - Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten;
+CiviDesk - Nicolas Ganivet, Yashodha Chaku; CiviFirst - John Kirk; Community IT
+Academy - William Mortada; CompuCorp - Michael Devery, Mukesh Ram, Omar Abu
+Hussein; Coop SymbioTIC - Mathieu Lutfy; Daniël van Vuuren; Deepak Srivastava;
+Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; JMA
+Consulting - Edsel Lopez, Monish Deb, Pradeep Nayak; John Kingsnorth; Joinery -
+Allen Shaw; Lemniscus - Noah Miller; Megaphone Technology Consulting - Jon
+Goldberg; MJW Consulting - Matthew Wire; Olivier Hertrich; Pawel Nowak; PowDevel -
+Beto Aveiga; Progressive Technology Project - Jamie McClelland; Tadpole
+Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton, Maggie
+Epps
 
 Most authors also reviewed code for this release; in addition, the following
 reviewers contributed their comments:
 
-Adam Zilkie; AGH Strategies - Alice Frumin; Agileware - Agileware Team; Andrew Thompson; anna; Australian Greens - Seamus Lee; Blackfly Solutions - Alan Dixon; British Humanist Association - William Gordon; Christian Wach; Circle Interactive - Dave Jenkins; CiviCoop - Klaas Eikelboom; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Nicolas Ganivet, Sunil Pawar, Yashodha Chaku; CiviFirst - John Kirk; Community IT Academy - William Mortada; CompuCorp - Guanhuan Chen, Michael Devery, Mirela Stanila, Omar Abu Hussein; Coop SymbioTIC - Mathieu Lutfy; DanielvV; Dave Greenberg; DevMate - Adam Kwiatkowski; Effy Elden; Electronic Frontier Foundation - Mark Burdett; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Ginkgo Street Labs - Frank Gómez; hollandopensource.nl; jcorlew; JMA Consulting - Edsel Lopez, Joe Murray, Monish Deb, Pradeep Nayak; Joanne Chester; Johan Vervloet; John Kingsnorth; Joinery - Allen Shaw; jorich-2000; klevie; Korlon - Stuart Gaston; Left Join Labs - Sean Madsen; Lemniscus - Noah Miller; Lighthouse Design and Consulting - Brian Shaughnessy; lorenzo.ardizzone@y-tech.it; MC3 - Graham Mitchell; Megaphone Technology Consulting - Jon Goldberg; mgribaudo; MJW Consulting - Matthew Wire; Mohamed Ziada; mukesh; mukeshcompucorp; myDropWizard - David Snopek; neilz; nicw; olivier; Pawel Nowak; Progressive Technology Project - Jamie McClelland; redgar; Responsive Development Technologies - Thomas Nilefalk; Semper IT - Karin Gerritsen; SEN Magazine - Jeremy Nicholls; Skvare - Mark Hanna; smallbiz; Spry Digital - Ellen Hendricks; Squiffle Consulting - Aidan Saunders; stevel; Systopia - Björn Endres; Tadpole Collective - Kevin Cristiano; Tech To The People - Xavier Dutoit; vingle; waddyvic; Web Access - Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton
+Adam Zilkie; AGH Strategies - Josh Corlew; Agileware - Agileware Team; Andrew
+Thompson; Blackfly Solutions - Alan Dixon; British Humanist Association -
+William Gordon; CiviDesk - Sunil Pawar; CompuCorp - Anna Kovalova, Guanhuan
+Chen, Mirela Stanila; DevMate - Adam Kwiatkowski; Effy Elden; Electronic
+Frontier Foundation - Mark Burdett; Ginkgo Street Labs - Frank Gómez; JMA
+Consulting - Joe Murray; Joanne Chester; Johan Vervloet; Jonathan Richardson;
+Korlon - Stuart Gaston; Left Join Labs - Sean Madsen; Levity - Kevin Levie;
+Lighthouse Design and Consulting - Brian Shaughnessy; Lorenzo Ardizzone; MC3 -
+Graham Mitchell; Marcello Gribaudo; Mohamed Ziada; myDropWizard - David Snopek;
+Neil Zampella; Nicol Wistreich; Responsive Development Technologies - Thomas
+Nilefalk; Richard Edgar; Semper IT - Karin Gerritsen; SEN Magazine - Jeremy
+Nicholls; Skvare - Mark Hanna; small biz; Spry Digital - Ellen Hendricks;
+Squiffle Consulting - Aidan Saunders; Stevel; Systopia - Björn Endres; Tech To
+The People - Xavier Dutoit; Victor Huang; Web Access - Kurund Jalmi
 
 ## <a name="feedback"></a>Feedback