5.29.0 release notes: finished writing
authorAndrew Hunt <andrew@aghstrategies.com>
Wed, 2 Sep 2020 19:14:34 +0000 (15:14 -0400)
committerAndrew Hunt <andrew@aghstrategies.com>
Wed, 2 Sep 2020 19:15:25 +0000 (15:15 -0400)
release-notes/5.29.0.md

index 1be7e9ef6661a52620210057a640f89d55ee39dd..3c7ff2e5779fd3dd21dfb26b9c391d9d7fa27570 100644 (file)
@@ -13,16 +13,42 @@ Released September 2, 2020
 
 | *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?     |         |
-| Introduce features?                                             |         |
-| Fix bugs?                                                       |         |
+| 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
 
+### CiviContribute
+
+- **Add configure and priceset url icons on public contribution & event pages
+  ([dev/core#1905](https://lab.civicrm.org/dev/core/-/issues/1905):
+  [17942](https://github.com/civicrm/civicrm-core/pull/17942),
+  [18088](https://github.com/civicrm/civicrm-core/pull/18088) and
+  [18064](https://github.com/civicrm/civicrm-core/pull/18064))**
+
+  A "Configure" button now appears to administrators when viewing a contribution
+  page or event, or a priceset within either, from the frontend.  This links to
+  the corresponding form to administer the contribution page, event, or
+  priceset.
+
+### CiviEvent
+
+- **Move Event Cart to extension
+  ([17741](https://github.com/civicrm/civicrm-core/pull/17741),
+  [17743](https://github.com/civicrm/civicrm-core/pull/17743),
+  [17861](https://github.com/civicrm/civicrm-core/pull/17861),
+  [17884](https://github.com/civicrm/civicrm-core/pull/17884),
+  [17885](https://github.com/civicrm/civicrm-core/pull/17885), and
+  [17891](https://github.com/civicrm/civicrm-core/pull/17891))**
+
+  The event cart features have been moved to a separate extension that is
+  shipped with core.
+
 ### CiviMember
 
 - **Option to update expired memberships as part of the job.process_membership
@@ -41,6 +67,13 @@ Released September 2, 2020
 
   Deceased will always be excluded
 
+-  **Add auto-renew status to membership detail report
+  ([17683](https://github.com/civicrm/civicrm-core/pull/17683) and
+  [17911](https://github.com/civicrm/civicrm-core/pull/17911))**
+
+  The membership detail report can now display and filter on the auto-renew
+  status of each membership.
+
 ### Backdrop Integration
 
 - **Support for installing CiviCRM-Backdrop via "setup" UI
@@ -52,6 +85,33 @@ Released September 2, 2020
   the setup screen to complete installation as opposed to having to navigate to
   a specific link.
 
+### Drupal Integration
+
+- **Upgrading a site that still has "mysql" in the dsn string breaks in latest
+  master ([dev/core#1937](https://lab.civicrm.org/dev/core/-/issues/1937):
+  [18174](https://github.com/civicrm/civicrm-core/pull/18174))**
+
+  This adds an upgrade message for 5.29.0 warning that Composer patching will
+  need to be enabled before upgrading to 5.30.0 or higher.
+
+  The "mysql" in the DSN (as opposed to "mysqli") will not be a problem, but the
+  solution for this is in a package patch that appears in 5.30.
+
+- **Installation - Support "activate first" w/setup UI
+  ([606](https://github.com/civicrm/civicrm-drupal/pull/606))**
+
+  The new setup user interface for Backdrop and WordPress installations is now
+  available for Drupal 7.
+
+### WordPress Integration
+
+- **Add system check to ensure WP base page exists
+  ([17698](https://github.com/civicrm/civicrm-core/pull/17698))**
+
+  A new system check will display a message if the base page, as set in CiviCRM,
+  doesn't match an existing page in WordPress.  No message will display if
+  WordPress multisite is enabled.
+
 ### Core CiviCRM
 
 - **Contact export is very slow, creates huge temporary tables
@@ -61,19 +121,48 @@ Released September 2, 2020
   Improves performance when exporting contacts by only exporting primary address
   fields.
 
+- **Allow different output formats for CiviReport results, like native excel
+  format, and untangle code
+  ([dev/core#1855](https://lab.civicrm.org/dev/core/-/issues/1855):
+  [17901](https://github.com/civicrm/civicrm-core/pull/17901))**
+
+  This makes it possible to extend CiviReport by reworking the PDF and CSV
+  generation code as new output handlers, and allowing for extension developers
+  to add new ones.
+
 - **Icon in status message after saving a civireport is misleading
   ([dev/report#43](https://lab.civicrm.org/dev/report/-/issues/43):
   [17863](https://github.com/civicrm/civicrm-core/pull/17863))**
 
   Improves icons in Status Messages for reports.
 
+- **Show cron warning on Scheduled Jobs admin page
+  ([18065](https://github.com/civicrm/civicrm-core/pull/18065))**
+
+  A pop-up message will appear on the Scheduled Jobs page if cron has not been
+  running.
+
+- **Add APIv4 and pseudoconstants for RelationshipCache
+  ()**
+
+- **RelationshipCache - Add a high-level index to facilitate relationship
+  queries (more fields)
+  ([17781](https://github.com/civicrm/civicrm-core/pull/17781) and
+  [17879](https://github.com/civicrm/civicrm-core/pull/17879))**
+
+  A new table caches relationships to provide a single resource for tracking
+  relationships from a specified contact's perspective.  The RelationshipCache
+  records the "near" and "far" contacts and relationship names along with the
+  orientation and relationship type.  Each record from `civicrm_relationship`
+  will have two records in `civicrm_relationship_cache`, one for each
+  orientation.
+
 - **Remove ORDER BY and GROUP BY from alphabetQuery to improve performance
   ([16877](https://github.com/civicrm/civicrm-core/pull/16877))**
 
 - **Differentiate smart group from regular group using icon in select2 field
   ([dev/core#785](https://lab.civicrm.org/dev/core/-/issues/785):
-  [17927](https://github.com/civicrm/civicrm-core/pull/17927) and
-  [13958](https://github.com/civicrm/civicrm-core/pull/13958))**
+  [17927](https://github.com/civicrm/civicrm-core/pull/17927))**
 
   Improves Group's select2 by adding icon next to smart groups.
 
@@ -83,6 +172,65 @@ Released September 2, 2020
 
   Makes it so sites can use ssl to connect to mysql.
 
+- **Add in hook to allow for altering of Profile Schemas
+  ([dev/core#1913](https://lab.civicrm.org/dev/core/-/issues/1913):
+  [17986](https://github.com/civicrm/civicrm-core/pull/17986))**
+
+  Extensions that allow additional fields to be added to profiles can now add
+  schemas so that fields can be added from new entities.
+
+- **Why not make the buttons flat?
+  ([18054](https://github.com/civicrm/civicrm-core/pull/18054))**
+
+  Buttons no longer have a gradient background.
+
+- **SystemCheck: add ability to efficiently run only specified checks
+  ([17824](https://github.com/civicrm/civicrm-core/pull/17824))**
+
+  The APIv4 system check action can now filter on name, running just the
+  specified check(s).
+
+- **Change inform-icon to fa-info-circle
+  ([18001](https://github.com/civicrm/civicrm-core/pull/18001))**
+
+  The information icon is now produced with Font Awesome rather than a sprite.
+
+- **APIv4 - Add keyword to select all custom fields
+  ([17955](https://github.com/civicrm/civicrm-core/pull/17955))**
+
+  You can now use a wildcard to select all custom fields on an entity without
+  specifying each individually.
+
+- **Improve caching of current domain
+  ([17916](https://github.com/civicrm/civicrm-core/pull/17916))**
+
+  Domain information is now cached in one central place, making it more
+  straightforward to use and flush.
+
+- **APIv4 - Specify BridgeEntities to assist with joins
+  ([17808](https://github.com/civicrm/civicrm-core/pull/17808))**
+
+  Minor entities that intermediate many-to-many relationships are now specified
+  as bridge entities and extend from a new base class.  This will allow them to
+  be distinguished better in the future.
+
+- **APIv4 - Add shorthand for setCheckPermissions()
+  ([17834](https://github.com/civicrm/civicrm-core/pull/17834) and
+  [17874](https://github.com/civicrm/civicrm-core/pull/17874))**
+
+  The CRUD functions of APIv4 now accept a boolean argument that corresponds to
+  the value sent to `setCheckPermissions()`.  This provides a shorthand for a
+  very common use case.
+
+- **Add search extension
+  ([17775](https://github.com/civicrm/civicrm-core/pull/17775),
+  [17789](https://github.com/civicrm/civicrm-core/pull/17789), and
+  [17864](https://github.com/civicrm/civicrm-core/pull/17864))**
+
+  An extension that replaces Search Builder is now shipped with core, though it
+  is hidden from the extensions user interface because it is currently
+  incompatible with the default theming framework.
+
 ## <a name="bugs"></a>Bugs resolved
 
 ### Wordpress Integration
@@ -105,6 +253,10 @@ Released September 2, 2020
 - **Fix PHP notice on wordpress permissions form
   ([17758](https://github.com/civicrm/civicrm-core/pull/17758))**
 
+- **Slow down the frequency of WordPress "heartbeat" calls in CiviCRM admin
+  ([dev/wordpress#67](https://lab.civicrm.org/dev/wordpress/-/issues/67):
+  [214](https://github.com/civicrm/civicrm-wordpress/pull/214))**
+
 ### Drupal Integration
 
 - **Drupal 8 - Using Create User Record action on a contact with no email is too
@@ -122,13 +274,63 @@ Released September 2, 2020
   Skip the server variable checks if running in a CLI environment, removing an
   error when running Drush commands against Drupal 8 and Drupal 9 based sites.
 
+- **Can't find recaptcha in Drupal 8
+  ([dev/core#1871](https://lab.civicrm.org/dev/core/-/issues/1871):
+  [17822](https://github.com/civicrm/civicrm-core/pull/17822))**
+
+- **Fixed for multi-select filter
+  ([615](https://github.com/civicrm/civicrm-drupal/pull/615))**
+
+  This fixes filters for multi-select fields in Views.
+
+- **fix url for file field
+  ([608](https://github.com/civicrm/civicrm-drupal/pull/608))**
+
+  This fixes the generated URL for file fields in Views.
+
 ### CiviCase
 
 - **Fix case activity field set to allow long details to be exported
   ([17970](https://github.com/civicrm/civicrm-core/pull/17970))**
 
+- **Case export has two fields that are not what they say they are
+  ([dev/core#1916](https://lab.civicrm.org/dev/core/-/issues/1916):
+  [18043](https://github.com/civicrm/civicrm-core/pull/18043))**
+
+- **Collapsed custom field set for activities with a required radio makes case
+  activity buttons seem disabled
+  ([dev/core#1928](https://lab.civicrm.org/dev/core/-/issues/1928):
+  [18080](https://github.com/civicrm/civicrm-core/pull/18080))**
+
+- **CRM_Utils_Check_Component_Case - Guard against post-upgrade crash
+  ([17944](https://github.com/civicrm/civicrm-core/pull/17944))**
+
 ### CiviContribute
 
+- **Define the logic that sets (or not) contribution receive_date in relation to
+  payments
+  ([dev/financial#139](https://lab.civicrm.org/dev/financial/-/issues/139):
+  [17777](https://github.com/civicrm/civicrm-core/pull/17777) and
+  [18000](https://github.com/civicrm/civicrm-core/pull/18000))**
+
+  This undoes a regression where the contribution date of a pay-later
+  contribution would change when a payment completes the contribution.  The
+  contribution date is the accrual date and is distinct from the date the
+  contribution is entered and the date when all payments have been received.
+
+  In the process, this changes the "Update pending contribution status" search
+  action to be "Record payments for contributions".  The result is generally the
+  same, but the status change comes about because the payments complete the
+  contributions.  You can modify contribution statuses in bulk with a profile by
+  using the "Update multiple contributions" action.
+
+- **Disable frequency/interval fields if not required. Mark required if they are
+  so they are validated before submit
+  ([17526](https://github.com/civicrm/civicrm-core/pull/17526))**
+
+  The frequency and interval fields for recurring contributions now use jQuery
+  validation to disable or require them as appropriate.
+
 - **Paypal IPN sometimes fails to update the next scheduled payment date when
   recording the latest recurring payment
   ([dev/core#1679](https://lab.civicrm.org/dev/core/-/issues/1679):
@@ -148,17 +350,20 @@ Released September 2, 2020
   than the site's default currency, the "grand total" row shows the sign of the
   default currency instead of the filtered currency.
 
-- **Define the logic that sets (or not) contribution receive_date in relation to
-  payments
-  ([dev/financial#139](https://lab.civicrm.org/dev/financial/-/issues/139):
-  [17777](https://github.com/civicrm/civicrm-core/pull/17777))**
-
-  Ensures that the contribution receive_date does not change when payments come
-  in.
-
 - **Fix PaypalIPN single function to not receive-by-reference
   ([18044](https://github.com/civicrm/civicrm-core/pull/18044))**
 
+- **Allow Failed -> Completed status for contributions
+  ([dev/core#1906](https://lab.civicrm.org/dev/core/-/issues/1906):
+  [17943](https://github.com/civicrm/civicrm-core/pull/17943))**
+
+- **Fix currency symbol for Total Amount on contribution page
+  ([17703](https://github.com/civicrm/civicrm-core/pull/17703))**
+
+  This resolves a but where the total amount would show the default system
+  currency symbol regardless of the currency configured on the contribution
+  page.
+
 - **On behalf label / Honoree Title / Honoree Description not translatable on
   contribution page
   ([dev/core#1280](https://lab.civicrm.org/dev/core/-/issues/1280):
@@ -176,6 +381,32 @@ Released September 2, 2020
 - **Do not overwrite values saved from the repeatContribution routine
   ([17972](https://github.com/civicrm/civicrm-core/pull/17972))**
 
+- **"Contribution Source" profile field has no effect on new contribution
+  ([dev/core#1902](https://lab.civicrm.org/dev/core/-/issues/1902):
+  [17930](https://github.com/civicrm/civicrm-core/pull/17930))**
+
+- **Incorrect check for "soft_credit" after making pcp donation
+  ([dev/core#1915](https://lab.civicrm.org/dev/core/-/issues/1915):
+  [18002](https://github.com/civicrm/civicrm-core/pull/18002))**
+
+- **Total Tax Amount on the Contribution (generated in backoffice/offline) no
+  longer adds up to sum of the Tax Amount for the individual line items
+  ([dev/core#1983](https://lab.civicrm.org/dev/core/-/issues/1983):
+  [18290](https://github.com/civicrm/civicrm-core/pull/18290))**
+
+- **Downloaded Invoice activity attaches non wkhtmltopdf invoice
+  ([dev/core#1922](https://lab.civicrm.org/dev/core/-/issues/1922):
+  [18056](https://github.com/civicrm/civicrm-core/pull/18056))**
+
+  Downloading an invoice would ignore whether wkhtmltopdf was configured and
+  always use dompdf.
+
+- **Fix repeattransaction api to use custom data from the template contribution
+  ([17975](https://github.com/civicrm/civicrm-core/pull/17975))**
+
+  The Contribution.repeattransaction API will now copy custom data from the
+  template rather than the earliest related contribution.
+
 ### CiviEvent
 
 - **Can't meaningfully disable self-service transfer/cancellation once enabled
@@ -194,6 +425,13 @@ Released September 2, 2020
 
 ### CiviMail
 
+- **Remove url-tracking in mass SMS
+  ([dev/core#1843](https://lab.civicrm.org/dev/core/-/issues/1843):
+  [17700](https://github.com/civicrm/civicrm-core/pull/17700))**
+
+  Rewritten URLs were confusing and made SMS messages unnecessarily long.  There
+  also have never been SMS tracking reports to use them anyway.
+
 - **Test mailings create new contacts even when "Add Contacts" permission is not
   present. ([dev/mail#70](https://lab.civicrm.org/dev/mail/-/issues/70):
   [17867](https://github.com/civicrm/civicrm-core/pull/17867))**
@@ -201,14 +439,57 @@ Released September 2, 2020
   Ensures contacts are not created when a user without permissions to create
   contacts sends a test email.
 
+- **Mailing Subscription form does not validate reCaptcha
+  ([dev/core#1755](https://lab.civicrm.org/dev/core/-/issues/1755):
+  [17305](https://github.com/civicrm/civicrm-core/pull/17305))**
+
+- **Text version of unsubscribed email is missing the link to resubscribe
+  ([dev/core#1919](https://lab.civicrm.org/dev/core/-/issues/1919):
+  [18015](https://github.com/civicrm/civicrm-core/pull/18015))**
+
+- **Add CiviMail synchronisation frequency setting
+  (in support of [dev/core#1768](https://lab.civicrm.org/dev/core/-/issues/1768):
+  [17709](https://github.com/civicrm/civicrm-core/pull/17709))**
+
+  This adds a setting for updating how frequently the database should be updated
+  with the status of emails that have been sent.  Updating the database more
+  frequently can slow the process down, but it reduces the likelihood that a
+  recipient will be re-emailed when recovering from a stalled mailing.
+
+- **Make new email open and url routes 'public'
+  ([17813](https://github.com/civicrm/civicrm-core/pull/17813))**
+
+  This denotes the paths for open and URL tracking as "public" pages as they are
+  meant to be used by unauthenticated email clients and recipients.
+
 ### CiviMember
 
 - **Decimal Separator - Invalid value "total_amount" (NaN,N) creating or editing
   a membership ([dev/core#1113](https://lab.civicrm.org/dev/core/-/issues/1113):
   [16429](https://github.com/civicrm/civicrm-core/pull/16429))**
 
+- **Offline Membership Renewal Tax Calculation is incorrect [regression]
+  ([dev/core#1972](https://lab.civicrm.org/dev/core/-/issues/1972):
+  [18271](https://github.com/civicrm/civicrm-core/pull/18271))**
+
 ### Core CiviCRM
 
+- **CRM_Dedupe_Finder parses phone key incorrectly
+  ([dev/core#1767](https://lab.civicrm.org/dev/core/-/issues/1767):
+  [17361](https://github.com/civicrm/civicrm-core/pull/17361) and
+  [17882](https://github.com/civicrm/civicrm-core/pull/17882))**
+
+  The process to match duplicate contacts was not accurately identifying phone
+  fields, causing contacts with matching phone numbers to be treated as if they
+  didn't match.
+
+- **Dedupe: Location type is treated inconsistently
+  ([dev/core#1826](https://lab.civicrm.org/dev/core/-/issues/1826):
+  [17645](https://github.com/civicrm/civicrm-core/pull/17645))**
+
+  Duplicate matching now ignores location type for postal address fields, now
+  consistent with how it has ignored phone and email location types.
+
 - **Installing drupal 8 using civicrm-setup leads to "incorrect resource url"
   system status check errors
   ([dev/drupal#114](https://lab.civicrm.org/dev/drupal/-/issues/114) and
@@ -230,216 +511,173 @@ Released September 2, 2020
   ([dev/core#1670](https://lab.civicrm.org/dev/core/-/issues/1670):
   [17580](https://github.com/civicrm/civicrm-core/pull/17580))**
 
+- **Email template permissions
+  ([dev/core#1751](https://lab.civicrm.org/dev/core/-/issues/1751):
+  [17480](https://github.com/civicrm/civicrm-core/pull/17480))**
+
+  Users sending an email are no longer able to save or modify a template if they
+  lack the "edit message templates" permission.
+
+- **Using Parent tag in search form doesn't pull contacts marked with child tag
+  in search form result
+  ([dev/core#1795](https://lab.civicrm.org/dev/core/-/issues/1795):
+  [17513](https://github.com/civicrm/civicrm-core/pull/17513))**
+
+- **Activity Search : Tags are not working
+  ([dev/core#1827](https://lab.civicrm.org/dev/core/-/issues/1827):
+  [17655](https://github.com/civicrm/civicrm-core/pull/17655) and
+  [17755](https://github.com/civicrm/civicrm-core/pull/17755))**
 
-- **dev/core#1751: [Create Email] Only Show Update/Save Template when User has Permission to Edit Templates ([17480](https://github.com/civicrm/civicrm-core/pull/17480))**
-
-- **dev/core#1755 Fix reCaptcha on Mailing Subscribe ([17305](https://github.com/civicrm/civicrm-core/pull/17305))**
-
-- **dev/core#1767 Fix phone key parsing in CRM_Dedupe_Finder ([17361](https://github.com/civicrm/civicrm-core/pull/17361) and [17882](https://github.com/civicrm/civicrm-core/pull/17882))**
-
-- **dev/core#1768 - Add CiviMail synchronisation frequency setting. ([17709](https://github.com/civicrm/civicrm-core/pull/17709))**
-
-- **core#1795: Searchable Parent tags ([17513](https://github.com/civicrm/civicrm-core/pull/17513))**
-
-- **core#1805: Autocomplete-select custom field is not searchable ([17569](https://github.com/civicrm/civicrm-core/pull/17569))**
-
-- **dev/core#1812 Missing view when logging set in a non-US English instance ([17815](https://github.com/civicrm/civicrm-core/pull/17815))**
-
-- **core#1826: Ignore location_type_id when deduping postal address ([17645](https://github.com/civicrm/civicrm-core/pull/17645))**
-
-- **dev/core#1827 activity search - fixing search by tags ([17655](https://github.com/civicrm/civicrm-core/pull/17655) and [17755](https://github.com/civicrm/civicrm-core/pull/17755))**
-
-- **dev/core#1843 Remove url-tracking in mass sms.  ([17700](https://github.com/civicrm/civicrm-core/pull/17700))**
-
-- **dev/core#1853 - Fix validation errors when removing contact subtype ([17765](https://github.com/civicrm/civicrm-core/pull/17765))**
-
-- **dev/core#1855 - Allow different output formats for CiviReport results and untangle code ([17901](https://github.com/civicrm/civicrm-core/pull/17901))**
-
-- **dev/core#1858 Prevent Duplicate contact records being created and har… ([17769](https://github.com/civicrm/civicrm-core/pull/17769))**
-
-- **dev/core#1861 fix failure to unset location_type_id when saving uffield ([17812](https://github.com/civicrm/civicrm-core/pull/17812))**
-
-- **dev/core#1863 Downgrade checkEnvironment level and skip non-prod checks ([17807](https://github.com/civicrm/civicrm-core/pull/17807))**
-
-- **dev/core#1868 - Regression - Description field is always blank on profiles admin page and slew of E_NOTICES ([17786](https://github.com/civicrm/civicrm-core/pull/17786))**
-
-- **dev/core#1869 - Include BOM in attachment when sending CSV CiviReport via mail_report job ([17806](https://github.com/civicrm/civicrm-core/pull/17806))**
-
-- **dev/core#1871 - require_once's that include "packages/" in the path don't work on drupal 8 ([17822](https://github.com/civicrm/civicrm-core/pull/17822))**
-
-- **dev/core#1872 - Packages and vendor path calculation used in system check is outdated ([17844](https://github.com/civicrm/civicrm-core/pull/17844))**
-
-- **dev/core#1874 - Failing test for new Individual form ([17835](https://github.com/civicrm/civicrm-core/pull/17835))**
-
-- **dev/core#1880 add backticks to custom field insertions ([17848](https://github.com/civicrm/civicrm-core/pull/17848))**
-
-- **dev/core#1888 - Fix one line in PR 17888  ([17898](https://github.com/civicrm/civicrm-core/pull/17898))**
-
-- **dev/core#1888 and dev/core#1885 - Fatal error on advanced search and warnings and missing group display on contact form ([17888](https://github.com/civicrm/civicrm-core/pull/17888))**
+- **Autocomplete-select custom field is not searchable
+  ([dev/core#1805](https://lab.civicrm.org/dev/core/-/issues/1805):
+  [17569](https://github.com/civicrm/civicrm-core/pull/17569))**
 
-- **dev/core#1894 - Make CRM_Activity_Form_SearchTest::testQill less time-sensitive ([17902](https://github.com/civicrm/civicrm-core/pull/17902))**
+- **Do not allow enabling database logging when using multilingual
+  ([dev/core#1812](https://lab.civicrm.org/dev/core/-/issues/1812):
+  [17815](https://github.com/civicrm/civicrm-core/pull/17815))**
 
-- **dev/core#1895 fix first/last name adv search ([17950](https://github.com/civicrm/civicrm-core/pull/17950))**
+  This has never worked, with network errors as the result.  This prevents it
+  from being set.
 
-- **dev/core#1902: "Contribution Source" profile field has no effect ([17930](https://github.com/civicrm/civicrm-core/pull/17930))**
+- **Can't remove subtype if any required custom field is based on it
+  ([dev/core#1853](https://lab.civicrm.org/dev/core/-/issues/1853):
+  [17765](https://github.com/civicrm/civicrm-core/pull/17765))**
 
-- **dev/core#1905 force backend links for new "configure" buttons ([17942](https://github.com/civicrm/civicrm-core/pull/17942), [18088](https://github.com/civicrm/civicrm-core/pull/18088) and [18064](https://github.com/civicrm/civicrm-core/pull/18064))**
+- **User account form action not passing along contact id correctly possibly
+  leading to duplicate contacts
+  ([dev/core#1858](https://lab.civicrm.org/dev/core/-/issues/1858):
+  [17769](https://github.com/civicrm/civicrm-core/pull/17769))**
 
-- **dev/core#1906 - Allow payment create api to record payment on Failed … ([17943](https://github.com/civicrm/civicrm-core/pull/17943))**
+  When creating a user account from a contact record, the contact ID was not
+  properly passed along.  Depending upon your unsupervised duplicate matching
+  rule, it would potentially create a duplicate contact record.
 
-- **dev/core#1909 Fix E-notice when adding a field on a profile ([18006](https://github.com/civicrm/civicrm-core/pull/18006), [17962](https://github.com/civicrm/civicrm-core/pull/17962), [17964](https://github.com/civicrm/civicrm-core/pull/17964), [17959](https://github.com/civicrm/civicrm-core/pull/17959), [17985](https://github.com/civicrm/civicrm-core/pull/17985))**
+- **Cannot edit a profile field of "Email" to use the Location Type "Primary"
+  ([dev/core#1861](https://lab.civicrm.org/dev/core/-/issues/1861):
+  [17812](https://github.com/civicrm/civicrm-core/pull/17812))**
 
-- **dev/core#1913 Allow for schemas to be added by extensions if they are… ([17986](https://github.com/civicrm/civicrm-core/pull/17986))**
+  The location type would get reset to your default location type rather than
+  staying as "primary".
 
-- **dev/core#1915 - E_NOTICE when making pcp contribution ([18002](https://github.com/civicrm/civicrm-core/pull/18002))**
+- **Downgrade checkEnvironment level and skip non-prod checks (part of
+  [dev/core#1863](https://lab.civicrm.org/dev/core/-/issues/1863):
+  [17807](https://github.com/civicrm/civicrm-core/pull/17807))**
 
-- **dev/core#1916 - Fix naming of case export fields / remove ones that aren't true ([18043](https://github.com/civicrm/civicrm-core/pull/18043))**
+  In non-production environments, a system check produces a message saying so.
+  This downgrades it from an "Alert" to a more appropriate level of "Notice",
+  and it also suppresses cron and CiviMail system checks in this situation.
 
-- **dev/core#1918 - Remove dubious qfkey checking code that never runs ([18007](https://github.com/civicrm/civicrm-core/pull/18007))**
+- **Slew of E_NOTICES on Profiles admin page and description field is always
+  blank ([dev/core#1868](https://lab.civicrm.org/dev/core/-/issues/1868):
+  [17786](https://github.com/civicrm/civicrm-core/pull/17786))**
 
-- **dev/core#1919 - Missing resubscribe url in text/plain version of unsubscribe confirmation email ([18015](https://github.com/civicrm/civicrm-core/pull/18015))**
+- **CiviReport sent as email via mail_report job with a CSV attachment doesn't
+  show UTF8 characters properly in Excel
+  ([dev/core#1869](https://lab.civicrm.org/dev/core/-/issues/1869):
+  [17806](https://github.com/civicrm/civicrm-core/pull/17806))**
 
-- **dev/core#1921 [Ref] remove isoToMysql ([18025](https://github.com/civicrm/civicrm-core/pull/18025))**
+- **References to packages path in security status checks are assumed to be
+  under civicrm root
+  ([dev/core#1872](https://lab.civicrm.org/dev/core/-/issues/1872):
+  [17844](https://github.com/civicrm/civicrm-core/pull/17844))**
 
-- **dev/core#1928 Fix HTML5 error due to required attribute being set swi… ([18080](https://github.com/civicrm/civicrm-core/pull/18080))**
+  This changes how package and vendor paths are calculated in system checks
+  since (in Drupal 8 and potentially elsewhere) they may not be within the
+  CiviCRM root folder.
 
-- **dev/core#1932 - Make status-checks more polite during upgrade ([18085](https://github.com/civicrm/civicrm-core/pull/18085))**
+- **custom data insert/update error if using reserved words
+  ([dev/core#1880](https://lab.civicrm.org/dev/core/-/issues/1880):
+  [17848](https://github.com/civicrm/civicrm-core/pull/17848))**
 
-- **dev/core#1937 - Upgrade message about needing composer patching turned on and updating mysql in DSN strings ([18174](https://github.com/civicrm/civicrm-core/pull/18174))**
+- **Advanced Search (search by complete or partial name) returns all contacts
+  ([dev/core#1895](https://lab.civicrm.org/dev/core/-/issues/1895):
+  [17950](https://github.com/civicrm/civicrm-core/pull/17950))**
 
-- **dev/core#1983 Fix to tax calculation on multi-line-item ([18290](https://github.com/civicrm/civicrm-core/pull/18290))**
+  The ability to search first/last name was recently added to core. The primary
+  intent was to properly handle advanced searches that originate from
+  quicksearch first/last name filters. While that was working, a first/last name
+  search that originated directly from an advanced search was not working. This
+  fixes the issue.
 
-- **dev/core#1972 Fix tax_amount calclation on renewal form ([18271](https://github.com/civicrm/civicrm-core/pull/18271))**
+- **Miscellaneous E_NOTICES
+  ([dev/core#1909](https://lab.civicrm.org/dev/core/-/issues/1909):
+  [18006](https://github.com/civicrm/civicrm-core/pull/18006),
+  [17962](https://github.com/civicrm/civicrm-core/pull/17962),
+  [17964](https://github.com/civicrm/civicrm-core/pull/17964),
+  [17959](https://github.com/civicrm/civicrm-core/pull/17959), and
+  [17985](https://github.com/civicrm/civicrm-core/pull/17985))**
 
+- **CRM_Core_Key::valid() does backwards comparison
+  ([dev/core#1918](https://lab.civicrm.org/dev/core/-/issues/1918):
+  [18007](https://github.com/civicrm/civicrm-core/pull/18007))**
 
+  This removes legacy code that appeared to attempt to check for a valid
+  quickForm key but wasn't effectively doing so.
 
+- **Upgrade fails for 4.6 => 5.29 during status-check
+  ([dev/core#1932](https://lab.civicrm.org/dev/core/-/issues/1932):
+  [18085](https://github.com/civicrm/civicrm-core/pull/18085))**
 
-- **Installation doclinks not getting url-rewritten ([18175](https://github.com/civicrm/civicrm-core/pull/18175))**
+- **Installation doclinks not getting url-rewritten
+  ([18175](https://github.com/civicrm/civicrm-core/pull/18175))**
 
-- **Fix button name on updated form ([18000](https://github.com/civicrm/civicrm-core/pull/18000))**
+  Links to the new installation documentation are now handled in the same way as
+  other documentation sites.
 
-- **Show cron warning on Scheduled Jobs admin page ([18065](https://github.com/civicrm/civicrm-core/pull/18065))**
+- **Wrap multi record custom field inside a div
+  ([17966](https://github.com/civicrm/civicrm-core/pull/17966))**
 
-- **Use correct pdf package to generate pdf file on invoice download/email activity ([18056](https://github.com/civicrm/civicrm-core/pull/18056))**
+- **Fixed filling default values for tagssets in the advanced search form
+  ([17978](https://github.com/civicrm/civicrm-core/pull/17978))**
 
-- **Why not make the buttons flat? ([18054](https://github.com/civicrm/civicrm-core/pull/18054))**
+- **Simplify caching of status checks
+  ([17817](https://github.com/civicrm/civicrm-core/pull/17817))**
 
-- **Wrap multi record custom field inside a div ([17966](https://github.com/civicrm/civicrm-core/pull/17966))**
+- **ensure custom field checkboxes are populated in profiles
+  ([17977](https://github.com/civicrm/civicrm-core/pull/17977))**
 
-- **SystemCheck: add ability to efficiently run only specified checks ([17824](https://github.com/civicrm/civicrm-core/pull/17824))**
+- **Upgrade PEAR/mail_mime package to be compliant with PHP7.4 and deploy it
+  using composer ([17948](https://github.com/civicrm/civicrm-core/pull/17948))**
 
-- **Change inform-icon to fa-info-circle ([18001](https://github.com/civicrm/civicrm-core/pull/18001))**
+- **Setup UI - Validate that at least one "Component" is enabled
+  ([17778](https://github.com/civicrm/civicrm-core/pull/17778))**
 
-- **Fix repeattransaction api to use custom data from the template contribution ([17975](https://github.com/civicrm/civicrm-core/pull/17975))**
+  This prevents you from proceeding with installation without enabling at least
+  one component.  Not enabling any components causes a messy failed
+  installation.
 
-- **Fixed filling default values for tagssets in the advanced search form ([17978](https://github.com/civicrm/civicrm-core/pull/17978))**
-
-- **Simplify caching of status checks ([17817](https://github.com/civicrm/civicrm-core/pull/17817))**
-
-- **ensure custom field checkboxes are populated in profiles ([17977](https://github.com/civicrm/civicrm-core/pull/17977))**
-
-- **Upgrade PEAR/mail_mime package to be compliant with PHP7.4 and deploy it using composer ([17948](https://github.com/civicrm/civicrm-core/pull/17948))**
-
-- **APIv4 - Add keyword to select all custom fields ([17955](https://github.com/civicrm/civicrm-core/pull/17955))**
-
-- **CRM_Utils_Check_Component_Case - Guard against post-upgrade crash ([17944](https://github.com/civicrm/civicrm-core/pull/17944))**
-
-- **Improve caching of current domain ([17916](https://github.com/civicrm/civicrm-core/pull/17916))**
-
-- **Setup UI - Validate that at least one "Component" is enabled ([17778](https://github.com/civicrm/civicrm-core/pull/17778))**
-
-- **Member detail report: nest "in" options in parentheses ([17911](https://github.com/civicrm/civicrm-core/pull/17911))**
-
-- **Replace a load of references to the wiki with docs links ([17900](https://github.com/civicrm/civicrm-core/pull/17900))**
-
-- **Call apiv4 from Contribution create rather than fugly addActivity function ([17881](https://github.com/civicrm/civicrm-core/pull/17881))**
-
-- **APIv4 - Add BasicEntity helper class ([17899](https://github.com/civicrm/civicrm-core/pull/17899))**
-
-- **Add APIv4 and pseudoconstants for RelationshipCache ([17879](https://github.com/civicrm/civicrm-core/pull/17879))**
-
-- **Update version in the test_data_second_domain file and also update the setVersion script to update the file version as necessary ([17897](https://github.com/civicrm/civicrm-core/pull/17897))**
-
-- **Be a little less supportive to cvs ([17896](https://github.com/civicrm/civicrm-core/pull/17896))**
-
-- **APIv4 - Specify BridgeEntities to assist with joins ([17808](https://github.com/civicrm/civicrm-core/pull/17808))**
-
-- **Event Cart ext: Move menu entries to extension ([17891](https://github.com/civicrm/civicrm-core/pull/17891))**
-
-- **EventCart ext: Cleanup and move form components to ext ([17885](https://github.com/civicrm/civicrm-core/pull/17885))**
-
-- **EventCart ext: Fix autogenerated code, remove unused hooks, update readme ([17884](https://github.com/civicrm/civicrm-core/pull/17884))**
-
-- **Add eventcart shell ([17741](https://github.com/civicrm/civicrm-core/pull/17741))**
-
-- **EventCart - Resolve BAO identity and uncommitted DAO changes ([17861](https://github.com/civicrm/civicrm-core/pull/17861))**
-
-- **Move BAO and template files into event cart ([17743](https://github.com/civicrm/civicrm-core/pull/17743))**
+- **Call apiv4 from Contribution create rather than fugly addActivity function
+  ([17881](https://github.com/civicrm/civicrm-core/pull/17881))**
 
 - **Search debug ([17887](https://github.com/civicrm/civicrm-core/pull/17887))**
 
-- **Use new checkPermissions shorthand in api calls ([17874](https://github.com/civicrm/civicrm-core/pull/17874))**
-
-- **Simplify flushing group contact cache query to reduce table locking and improve performance ([17846](https://github.com/civicrm/civicrm-core/pull/17846))**
+- **Simplify flushing group contact cache query to reduce table locking and
+  improve performance
+  ([17846](https://github.com/civicrm/civicrm-core/pull/17846))**
 
-- **Disable frequency/interval fields if not required. Mark required if they are so they are validated before submit ([17526](https://github.com/civicrm/civicrm-core/pull/17526))**
+- **Make api get upgrade-safe
+  ([17729](https://github.com/civicrm/civicrm-core/pull/17729))**
 
-- **Fix currency symbol for Total Amount on contribution page ([17703](https://github.com/civicrm/civicrm-core/pull/17703))**
+  This avoids database errors when the code and database versions don't match by
+  preventing the API from accessing fields that are unsupported in the database.
 
-- **RelationshipCache - Add a high-level index to facilitate relationship queries (more fields) ([17781](https://github.com/civicrm/civicrm-core/pull/17781))**
+- **CheckEnv - Give new installs a grace period before 'Cron Not Running' msg
+  ([17800](https://github.com/civicrm/civicrm-core/pull/17800))**
 
-- **Search Ext: fix loading options and parsing custom field names ([17864](https://github.com/civicrm/civicrm-core/pull/17864))**
+  The system check will lower the severity of the "cron not running" check for
+  the first 24 hours after a site has been installed.
 
-- **Bump lodash from 4.17.15 to 4.17.19 ([17858](https://github.com/civicrm/civicrm-core/pull/17858))**
+- **Sort permittedActivityTypes
+  ([17794](https://github.com/civicrm/civicrm-core/pull/17794))**
 
+  This improves performance on filtering activity types by making it possible to
+  compare a list of permitted types with the overall list of activity type IDs.
 
-- **Update regen.sh with new & upcoming core extensions ([17839](https://github.com/civicrm/civicrm-core/pull/17839))**
-
-- **APIv4 - Add activity contacts to APIv4 field spec ([17766](https://github.com/civicrm/civicrm-core/pull/17766))**
-
-- **Adjust mysql SET NAMES in remaining places as we agreed this was the go ([17825](https://github.com/civicrm/civicrm-core/pull/17825))**
-
-- **Make new email open and url routes 'public' ([17813](https://github.com/civicrm/civicrm-core/pull/17813))**
-
-- **Make api get upgrade-safe ([17729](https://github.com/civicrm/civicrm-core/pull/17729))**
-
-- **CRM_Utils_SQL - Add "onDuplicate()" and "syncInto()" helpers ([17780](https://github.com/civicrm/civicrm-core/pull/17780))**
-
-- **CheckEnv - Give new installs a grace period before 'Cron Not Running' msg ([17800](https://github.com/civicrm/civicrm-core/pull/17800))**
-
-- **Add hidden tag to search extension ([17789](https://github.com/civicrm/civicrm-core/pull/17789))**
-
-- **Sort permittedActivityTypes ([17794](https://github.com/civicrm/civicrm-core/pull/17794))**
-
-- **Add auto-renew status to membership detail report ([17683](https://github.com/civicrm/civicrm-core/pull/17683))**
-
-- **APIv4 - Fix saving custom fields with same name ([17791](https://github.com/civicrm/civicrm-core/pull/17791))**
-
-- **Add system check to ensure WP base page exists ([17698](https://github.com/civicrm/civicrm-core/pull/17698))**
-
-- **Add search extension ([17775](https://github.com/civicrm/civicrm-core/pull/17775))**
-
-- **Status Checks - Use more specific label regarding "Domain"/"Organization" check ([17776](https://github.com/civicrm/civicrm-core/pull/17776))**
-
-- **Bump minimum upgradable version to 4.4.7 ([17750](https://github.com/civicrm/civicrm-core/pull/17750))**
-
-- **Improve efficiency of findFiles ([17745](https://github.com/civicrm/civicrm-core/pull/17745))**
-
-- **APIv4 Explorer: Improve selection of fields for HAVING ([17746](https://github.com/civicrm/civicrm-core/pull/17746))**
-
-- **Convert CRM.utils.formatDate tests to karma ([17757](https://github.com/civicrm/civicrm-core/pull/17757))**
-
-- **Teach CRM.utils.formatDate to also show time ([17684](https://github.com/civicrm/civicrm-core/pull/17684))**
-
-- **Fixed for multi-select filter ([615](https://github.com/civicrm/civicrm-drupal/pull/615))**
-
-- **fix url for file field ([608](https://github.com/civicrm/civicrm-drupal/pull/608))**
-
-- **Slow down the frequency of WordPress "heartbeat" calls in CiviCRM admin ([214](https://github.com/civicrm/civicrm-wordpress/pull/214))**
-
-- **Installation - Support "activate first" w/setup UI ([606](https://github.com/civicrm/civicrm-drupal/pull/606))**
-
+- **APIv4 - Fix saving custom fields with same name
+  ([17791](https://github.com/civicrm/civicrm-core/pull/17791))**
 
+- **Status Checks - Use more specific label regarding "Domain"/"Organization"
+  check ([17776](https://github.com/civicrm/civicrm-core/pull/17776))**
 
 - **SQL temp table not using utf8mb4 if server default already set to utf8mb4
   ([18012](https://github.com/civicrm/civicrm-core/pull/18012))**
@@ -468,11 +706,63 @@ Released September 2, 2020
 - **Fix JQuery Validation for radios
   ([17937](https://github.com/civicrm/civicrm-core/pull/17937))**
 
-- **Fix buggy placement of icons on buttons
-  ([18005](https://github.com/civicrm/civicrm-core/pull/18005))**
-
 ## <a name="misc"></a>Miscellany
 
+- **APIv4 - Add BasicEntity helper class
+  ([17899](https://github.com/civicrm/civicrm-core/pull/17899))**
+
+- **Bump minimum upgradable version to 4.4.7
+  ([17750](https://github.com/civicrm/civicrm-core/pull/17750))**
+
+- **Update version in the test_data_second_domain file and also update the
+  setVersion script to update the file version as necessary
+  ([17897](https://github.com/civicrm/civicrm-core/pull/17897))**
+
+- **Be a little less supportive to cvs
+  ([17896](https://github.com/civicrm/civicrm-core/pull/17896))**
+
+- **Replace a load of references to the wiki with docs links
+  ([17900](https://github.com/civicrm/civicrm-core/pull/17900))**
+
+- **Remove unneccessary isoToDate function
+  ([dev/core#1921](https://lab.civicrm.org/dev/core/-/issues/1921):
+  [18025](https://github.com/civicrm/civicrm-core/pull/18025))**
+
+- **CRM_Activity_Form_SearchTest::testQill can fail semi-randomly
+  ([dev/core#1894](https://lab.civicrm.org/dev/core/-/issues/1894):
+  [17902](https://github.com/civicrm/civicrm-core/pull/17902))**
+
+- **Test for fatal error on new individual form
+  ([dev/core#1874](https://lab.civicrm.org/dev/core/-/issues/1874):
+  [17835](https://github.com/civicrm/civicrm-core/pull/17835))**
+
+- **Bump lodash from 4.17.15 to 4.17.19
+  ([17858](https://github.com/civicrm/civicrm-core/pull/17858))**
+
+- **Update regen.sh with new & upcoming core extensions
+  ([17839](https://github.com/civicrm/civicrm-core/pull/17839))**
+
+- **APIv4 - Add activity contacts to APIv4 field spec
+  ([17766](https://github.com/civicrm/civicrm-core/pull/17766))**
+
+- **Adjust mysql SET NAMES in remaining places as we agreed this was the go
+  ([17825](https://github.com/civicrm/civicrm-core/pull/17825))**
+
+- **CRM_Utils_SQL - Add "onDuplicate()" and "syncInto()" helpers
+  ([17780](https://github.com/civicrm/civicrm-core/pull/17780))**
+
+- **Improve efficiency of findFiles
+  ([17745](https://github.com/civicrm/civicrm-core/pull/17745))**
+
+- **APIv4 Explorer: Improve selection of fields for HAVING
+  ([17746](https://github.com/civicrm/civicrm-core/pull/17746))**
+
+- **Convert CRM.utils.formatDate tests to karma
+  ([17757](https://github.com/civicrm/civicrm-core/pull/17757))**
+
+- **Teach CRM.utils.formatDate to also show time
+  ([17684](https://github.com/civicrm/civicrm-core/pull/17684))**
+
 - **CRM_Utils_Hook: deprecation warning and short array syntax
   ([17995](https://github.com/civicrm/civicrm-core/pull/17995))**
 
@@ -491,9 +781,6 @@ Released September 2, 2020
 - **Hooks/Dispatcher - Close loopholes that occur around "preboot" hooks
   ([17831](https://github.com/civicrm/civicrm-core/pull/17831))**
 
-- **APIv4 - Add shorthand for setCheckPermissions()
-  ([17834](https://github.com/civicrm/civicrm-core/pull/17834))**
-
 - **Use PrematureExit exception instead of weird hack in tests
   ([17870](https://github.com/civicrm/civicrm-core/pull/17870))**
 
@@ -811,7 +1098,6 @@ Released September 2, 2020
 - **Cache loader - remove legacy handling, handle null result from setting
   ([17999](https://github.com/civicrm/civicrm-core/pull/17999))**
 
-
 - **Use case id to get relationship for activity creation
   ([17256](https://github.com/civicrm/civicrm-core/pull/17256) and
   [17764](https://github.com/civicrm/civicrm-core/pull/17764))**
@@ -835,13 +1121,13 @@ Technologies - Tunbola Ogunwande; Wikimedia Foundation - Eileen McNaughton
 Most authors also reviewed code for this release; in addition, the following
 reviewers contributed their comments:
 
-Pengyi Zhang; Andrew Thompson; Artful Robot - Rich Lott; Australian Greens -
-Andrew Cormick-Dockery, John Twyman; Bastien Ho; Blackfly Solutions - Alan
-Dixon; Carlos Capote; CompuCorp - Jamie Novick; DevApp - Adam Kwiatkowski;
+Agileware - Pengyi Zhang; Andrew Thompson; Artful Robot - Rich Lott; Australian
+Greens - Andrew Cormick-Dockery, John Twyman; Bastien Ho; Blackfly Solutions -
+Alan Dixon; Carlos Capote; CompuCorp - Jamie Novick; DevApp - Adam Kwiatkowski;
 Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Greenpeace
 Central and Eastern Europe - Patrick Figel; Irene Meisel; JMA Consulting - Joe
 Murray; Korlon - Stuart Gaston; Nicol Wistreich; Rar9; Ray Wright; Semper IT -
-Karin Gerritsen; Third Sector Design - Michael McAndrew;
+Karin Gerritsen; Third Sector Design - Michael McAndrew
 
 ## <a name="feedback"></a>Feedback