| *Does this version...?* | |
|:----------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | |
-| Change the database schema? | |
-| Alter the API? | |
+| **Change the database schema?** | **yes** |
+| **Alter the API?** | **yes** |
| Require attention to configuration options? | |
| Fix problems installing or upgrading to a previous version? | |
| **Introduce features?** | **yes** |
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.
+
### CiviCase
- **[CRM-20078](https://issues.civicrm.org/jira/browse/CRM-20078) Activity card -
### 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.
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-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-21284](https://issues.civicrm.org/jira/browse/CRM-21284) Outdated link
+ to mail setup documentation
+ ([11104](https://github.com/civicrm/civicrm-core/pull/11104))**
### Core CiviCRM
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-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))**
-
-- **[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) 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-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-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))**
+ The introduction of multilingual columns means that the multilingual schema
+ must be rebuilt. Otherwise, multilingual sites will encounter an error when
+ upgrading.
-- **[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-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))**
-- **Fix Recurring contribution sql so that it doesen't use group by as th… ([11231](https://github.com/civicrm/civicrm-core/pull/11231))**
+- **[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-21379](https://issues.civicrm.org/jira/browse/CRM-21379) Fix Activity dashlet issues ([11221](https://github.com/civicrm/civicrm-core/pull/11221))**
+ This resolves a variety of problems that may occur if the MySQL `sql_mode` is
+ set to `ONLY_FULL_GROUP_BY`.
-- **HW-382: Moved help section outside of block ([11220](https://github.com/civicrm/civicrm-core/pull/11220))**
+- **[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-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))**
+ 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-21373](https://issues.civicrm.org/jira/browse/CRM-21373) Notice error on creating cases ([11217](https://github.com/civicrm/civicrm-core/pull/11217))**
+- **[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-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))**
+ 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-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-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-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))**
+- **[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-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))**
+ When replacing columns to resolve date fields, Doctor When now restores the
+ field comments to the database.
-- **CRM - 21340 using civi function to get contact id because it is cms agnostic ([11172](https://github.com/civicrm/civicrm-core/pull/11172))**
+- **[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-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))**
+ This fixes the spelling of a Bulgarian province and a number of Romanian
+ counties in the state/province list.
-- **[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-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-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))**
+ 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-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))**
+- **Navigation - Fix serialization error
+ ([11107](https://github.com/civicrm/civicrm-core/pull/11107))**
-- **[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-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-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))**
+ Now each value in an option group must be unique.
-- **Navigation - Fix serialization error ([11107](https://github.com/civicrm/civicrm-core/pull/11107))**
+- **[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))**
-- **[nfc] Fix missing comma for phpcs ([11119](https://github.com/civicrm/civicrm-core/pull/11119))**
+ This prevents complex address inheritance cases such as second-degree address
+ sharing and recursive address sharing.
-- **4.7.26 rc ([11111](https://github.com/civicrm/civicrm-core/pull/11111))**
+- **[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))**
-- **HW-381: Added container block to wrap elements ([11096](https://github.com/civicrm/civicrm-core/pull/11096))**
+ On file custom fields in multiple-entry custom data sets, the first entry's
+ file would display for all entries.
-- **[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-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-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-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-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))**
-
-- **4.7.26 rc ([11083](https://github.com/civicrm/civicrm-core/pull/11083))**
-
-- **(NFC) Add in test of current practice in updating multiselect custom data ([11081](https://github.com/civicrm/civicrm-core/pull/11081))**
+- **[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))**
- **Hw 390 fixed iframe popup ([11075](https://github.com/civicrm/civicrm-core/pull/11075))**
### CiviMember
+- **[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))**
+
+ 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.
+
- **[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))**
- **[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
- ([11156](https://github.com/civicrm/civicrm-core/pull/11156))**
+ ([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))**
+
+ Help text on the case types screens is now outside of the CiviCRM content
+ block.
- Help text on the case types screen is now outside of the CiviCRM content block.
+- **[CRM-21373](https://issues.civicrm.org/jira/browse/CRM-21373) Notice error
+ on creating cases
+ ([11217](https://github.com/civicrm/civicrm-core/pull/11217))**
+
+ This resolves a PHP notice that would appear upon creating a case.
+
+- **[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))**
+
+ This resolves a bug in CiviCase 5.0 (org.civicrm.civicase) when printing a
+ case document.
### CiviContribute
This resolves a bug where tax rates would always display 8 decimal places on
contribution page confirmation and thank-you pages.
+- **[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-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))**
- **[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))**
replacement because the parenthesis is outside the ts markers
([10942](https://github.com/civicrm/civicrm-core/pull/10942))**
+- **[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))**
### Drupal Integration Modules
- **[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))**
+### Joomla Integration
+
+- **[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))**
+
+ 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
- **[CRM-20710](https://issues.civicrm.org/jira/browse/CRM-20710) Add function
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))**
+
## <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, 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; mukeshcompucorp; olivierh65; Pawel Nowak; powdevel; 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: