| *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? | no |
+| **Fix problems installing or upgrading to a previous version?** | **yes** |
+| **Introduce features?** | **yes** |
+| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
-## <a name="bugs"></a>Bugs resolved
-
### Core CiviCRM
-- **Multi record import screen fix ([17713](https://github.com/civicrm/civicrm-core/pull/17713))**
+- **advanced search: allow searching by first/last name; pass values from
+ quicksearch ([dev/core#1722](https://lab.civicrm.org/dev/core/-/issues/1722):
+ [17118](https://github.com/civicrm/civicrm-core/pull/17118))**
+
+ Makes First and last name available on the advanced search form, and ensures
+ quick search filters are passed to the appropriate field.
-- **dev/joomla/#28 5.27 Upgrade fails ([17710](https://github.com/civicrm/civicrm-core/pull/17710))**
+- **Add more search options
+ ([17372](https://github.com/civicrm/civicrm-core/pull/17372))**
-- **dev/translation#48 Add check for PHP-Intl Extension ([17668](https://github.com/civicrm/civicrm-core/pull/17668))**
+ Improves the Individual search form by adding fields for" `organization_name`,
+ `first_name`, `nick_name` and `last_name`.
-- **handle less common dynamic reference cases ([17653](https://github.com/civicrm/civicrm-core/pull/17653))**
+- **Investigate php currency library (Work Towards
+ [dev/translation#48](https://lab.civicrm.org/dev/translation/-/issues/48):
+ [17668](https://github.com/civicrm/civicrm-core/pull/17668))**
-- **5.26.2 Release Notes ([17635](https://github.com/civicrm/civicrm-core/pull/17635))**
+ Adds a system check for a php extension (INTL) that will be required for
+ CiviCRM 5.28 and up.
-- **dev/core#1806 - Fix import of "Radio"-style custom fields using option "label" ([17632](https://github.com/civicrm/civicrm-core/pull/17632))**
+- **End of life planning for MySQL server 5.0 - 5.6
+ ([dev/core#1681](https://lab.civicrm.org/dev/core/-/issues/1681):
+ [17518](https://github.com/civicrm/civicrm-core/pull/17518) and
+ [17496](https://github.com/civicrm/civicrm-core/pull/17496))**
-- **dev/core#1816 - Legacy support for matching custom field options by label ([17628](https://github.com/civicrm/civicrm-core/pull/17628))**
+ Adds a notice about 5.28 Dropping MySQL 5.5 Support.
-- **dev/core#1822 - Fix missing newly created activity types from the dropdown on the new activity form ([17625](https://github.com/civicrm/civicrm-core/pull/17625))**
+- **Add MembershipType to Api4
+ ([17448](https://github.com/civicrm/civicrm-core/pull/17448))**
-- **Fix issue with building smart groups when is empty ([17622](https://github.com/civicrm/civicrm-core/pull/17622))**
+ Adds a Membership Type entity to APIv4.
-- **dev/core#1823 Fix building the Price Field visibility options ([17619](https://github.com/civicrm/civicrm-core/pull/17619))**
+- **Api4: Add Price api entities
+ ([17363](https://github.com/civicrm/civicrm-core/pull/17363))**
-- **Fix payment instrument bug by using correct payment instrument ([17607](https://github.com/civicrm/civicrm-core/pull/17607))**
+ Adds Price entities to APIv4.
-- **[REF] Fix unit test failures on MySQL 5.6 due to Custom Field table being created without Dynamic Row Format ([17586](https://github.com/civicrm/civicrm-core/pull/17586))**
+- **APIv4 - Improve pseudoconstant suffix support
+ ([17368](https://github.com/civicrm/civicrm-core/pull/17368) and
+ [17482](https://github.com/civicrm/civicrm-core/pull/17482))**
-- **Add in deprecation notice and status check for a money value format co… ([17577](https://github.com/civicrm/civicrm-core/pull/17577))**
+ Improves suffix support in APIv4.
-- **Dedupe performance - hard-remove financial_item from list of dymnamic refs to contact table ([17567](https://github.com/civicrm/civicrm-core/pull/17567))**
+- **APIv4 - support custom entity joins
+ ([17394](https://github.com/civicrm/civicrm-core/pull/17394))**
-- **QueueTest - Be more forgiving about slow execution ([17532](https://github.com/civicrm/civicrm-core/pull/17532))**
+ Improves APIv4 so that it supports implicit and explicit joins onto custom
+ entities.
-- **WP - Change definitions of `cms.root`, `civicrm.root` ([17360](https://github.com/civicrm/civicrm-core/pull/17360))**
+- **Add ContributionRecur crud api
+ ([17299](https://github.com/civicrm/civicrm-core/pull/17299))**
-- **CommunityMessages - Define more consistent behavior in the face of slow execution ([17529](https://github.com/civicrm/civicrm-core/pull/17529))**
+ Adds Contribution Recur to APIv4.
-- **Add release-notes/5.26.1.md ([17521](https://github.com/civicrm/civicrm-core/pull/17521))**
+- **Make reCAPTCHA settings clearer
+ ([17426](https://github.com/civicrm/civicrm-core/pull/17426))**
-- **dev/core#1681 - Copy-edits on MySQL version notices ([17518](https://github.com/civicrm/civicrm-core/pull/17518))**
+ Improves help text for reCAPTCHA settings.
-- **[REF] Start to convert Dummy processor to use PropertyBag ([17452](https://github.com/civicrm/civicrm-core/pull/17452))**
+- **Wrap separators in price field in spans with classes
+ ([dev/user-interface#18](https://lab.civicrm.org/dev/user-interface/-/issues/18):
+ [17078](https://github.com/civicrm/civicrm-core/pull/17078))**
-- **Payment PropertyBag - Fix setAmount ([17505](https://github.com/civicrm/civicrm-core/pull/17505))**
+ Improve user interface by wrapping separators in price fields in spans.
-- **dev/core#1681 Add in notice about 5.28 Dropping MySQL 5.5 Support ([17496](https://github.com/civicrm/civicrm-core/pull/17496))**
+- **Make is_archived work as a url-search parameter
+ ([17328](https://github.com/civicrm/civicrm-core/pull/17328))**
-- **[REF] Remove always NULL param modified_id ([17489](https://github.com/civicrm/civicrm-core/pull/17489))**
+ Makes it possible to send `is_archived` as a url search parameter.
-- **dev/core#1797 Fix jquery Credit card validation on front end contribu… ([17497](https://github.com/civicrm/civicrm-core/pull/17497))**
+- **Configurable logfile size and hashing
+ ([17192](https://github.com/civicrm/civicrm-core/pull/17192))**
-- **Add MembershipType to Api4 ([17448](https://github.com/civicrm/civicrm-core/pull/17448))**
+ Allows a system administrator to give logs a predictable name, allowing them
+ to be more easily ingested into other tools, and be handled by external log
+ rotation tools.
-- **Convert remaining Authorize.net test to use guzzle ([17473](https://github.com/civicrm/civicrm-core/pull/17473))**
+- **Allow for installation on Symfony 4.4
+ ([17380](https://github.com/civicrm/civicrm-core/pull/17380))**
-- **set boolean fields to false if not set. ([17494](https://github.com/civicrm/civicrm-core/pull/17494))**
+ Makes it so CiviCRM plays nicely with Symfony 4.4.
-- **[Ref] remove calls to, and deprecate, pending function ([17490](https://github.com/civicrm/civicrm-core/pull/17490))**
+- **Add in domain tokens onto the Message Template admin interface
+ ([17388](https://github.com/civicrm/civicrm-core/pull/17388))**
-- **Make reCAPTCHA settings clearer ([17426](https://github.com/civicrm/civicrm-core/pull/17426))**
+ Adds the domain tokens to the Message Template admin interface "Tokens"
+ dropdown.
-- **[NFC] Fix use of single quotes, strict operator ([17492](https://github.com/civicrm/civicrm-core/pull/17492))**
+- **Make all icons aria-hidden
+ ([17318](https://github.com/civicrm/civicrm-core/pull/17318))**
-- **Test fixes to support apiv4 add of MembershipType ([17488](https://github.com/civicrm/civicrm-core/pull/17488))**
+ Improves user experience when using a screen reader by hiding icons.
-- **dev/core/-/issues/1794, changed int to tinyint for boolean fields ([17493](https://github.com/civicrm/civicrm-core/pull/17493))**
+- **Extend icon helper support, including for formLink
+ ([17319](https://github.com/civicrm/civicrm-core/pull/17319))**
-- **5.26 ([17486](https://github.com/civicrm/civicrm-core/pull/17486))**
+ Improves `CRM_Core_Action::formLink()` so that it produces more accessible
+ icon HTML.
-- **5.26 ([17484](https://github.com/civicrm/civicrm-core/pull/17484))**
+- **Screen reader text for wrenches
+ ([17293](https://github.com/civicrm/civicrm-core/pull/17293))**
-- **APIv4 - Support pseudoconstant suffixes in orderBy clause ([17482](https://github.com/civicrm/civicrm-core/pull/17482))**
+ Improves usability for screen reader users by explaining wrench icons.
-- **[REF] Extract createFollowUpActivities ([17481](https://github.com/civicrm/civicrm-core/pull/17481))**
+- **sr-only text for relationship permissions
+ ([17294](https://github.com/civicrm/civicrm-core/pull/17294))**
-- **5.26 ([17476](https://github.com/civicrm/civicrm-core/pull/17476))**
+ Improves usability for screen reader users by descriptions for icons for
+ relationships permissions.
-- **NFC - Change array() to short syntax [] ([17470](https://github.com/civicrm/civicrm-core/pull/17470))**
+- **crmButton: support icon=0 for no icon
+ ([17303](https://github.com/civicrm/civicrm-core/pull/17303))**
-- **Remove last reference to Payment->_processorName in core & remove from processors ([17474](https://github.com/civicrm/civicrm-core/pull/17474))**
+ Makes it possible to create a button without and icon using {crmButton}.
-- **Remove unused singleton from core payment processors ([17468](https://github.com/civicrm/civicrm-core/pull/17468))**
+- **Dedupe performance - hard-remove financial_item from list of dymnamic refs
+ to contact table
+ ([17567](https://github.com/civicrm/civicrm-core/pull/17567))**
-- **[REF] Switch to an api call to get the contact details. ([17442](https://github.com/civicrm/civicrm-core/pull/17442))**
+ Improves performance when dedupping.
-- **Fixed hide show of start date ([17446](https://github.com/civicrm/civicrm-core/pull/17446))**
+### CiviContribute
-- **[REF] Remove never-passed params from function signature ([17464](https://github.com/civicrm/civicrm-core/pull/17464))**
+- **Allow to search on contribution id
+ ([dev/core#1580](https://lab.civicrm.org/dev/core/-/issues/1580):
+ [16484](https://github.com/civicrm/civicrm-core/pull/16484))**
-- **Don't allow Contribution.repeattransaction to be used without a recurring contribution ([17447](https://github.com/civicrm/civicrm-core/pull/17447))**
+ Improves the "Find Contributions" search form by adding a field to search by
+ "Contribution ID".
-- **APIv4 - Improve custom field spec gathering ([17471](https://github.com/civicrm/civicrm-core/pull/17471))**
+### CiviEvent
-- **[REF] Fix serialized membership field handling in RelationshipTest ([17469](https://github.com/civicrm/civicrm-core/pull/17469))**
+- **Replace ical and office calendar image icons
+ ([17282](https://github.com/civicrm/civicrm-core/pull/17282))**
-- **Add more search options ([17372](https://github.com/civicrm/civicrm-core/pull/17372))**
+ Changes the icons on the bottom of event info pages to use Font
+ Awesome icons instead of images.
-- **Allow bidirectional assignment of relationships from search results ([17413](https://github.com/civicrm/civicrm-core/pull/17413))**
+### CiviMail
-- **5.26 ([17467](https://github.com/civicrm/civicrm-core/pull/17467))**
+- **Extend content array of hook_civicrm_alterMailContent
+ ([dev/core#1620](https://lab.civicrm.org/dev/core/-/issues/1620):
+ [16629](https://github.com/civicrm/civicrm-core/pull/16629))**
-- **Add actual field name for processor_id to getSubscriptionDetails ([17466](https://github.com/civicrm/civicrm-core/pull/17466))**
+ Adds campaign_id to template for `alterMailContent` hook.
-- **[REF] Implement required fields database changes that have occured du… ([17465](https://github.com/civicrm/civicrm-core/pull/17465))**
+- **Migrate CiviMail "extern" scripts to conventional routes
+ ([17312](https://github.com/civicrm/civicrm-core/pull/17312))**
-- **[REF] Minor simplification ([17443](https://github.com/civicrm/civicrm-core/pull/17443))**
+ Updates CiviMail's default behavior to replace `extern/open.php` and
+ `extern/url.php` with `civicrm/mailing/open` and `civicrm/mailing/url`.
-- **Nuance cancel options for processors ([17430](https://github.com/civicrm/civicrm-core/pull/17430))**
+- **Allow click-through and open tracking to be enabled/disabled by default
+ ([17291](https://github.com/civicrm/civicrm-core/pull/17291))**
-- **dev/core#1753 - Attachments aren't deleted when deleting activity ([17298](https://github.com/civicrm/civicrm-core/pull/17298))**
+ Adds a setting to CiviMail which allows for setting the click-through and open
+ tracking defaults.
-- **[REF] Bump Pear Log version to fix compatability with Drupal 8 / Drup… ([17460](https://github.com/civicrm/civicrm-core/pull/17460))**
+### Drupal Integration
-- **Update MembershipType.name to be a required field ([17463](https://github.com/civicrm/civicrm-core/pull/17463))**
+- **CiviCRM menu toggle "adjust menu position" customisable
+ ([dev/core#1757](https://lab.civicrm.org/dev/core/-/issues/1757):
+ [17362](https://github.com/civicrm/civicrm-core/pull/17362))**
-- **5.26 to master ([17459](https://github.com/civicrm/civicrm-core/pull/17459))**
+ Hides the "adjust menu position" icon in the CiviCRM Menu for non admin users
+ to avoid confusion for users who do not have access to the Drupal admin menu.
-- **[REF] Convert one of the http calls in Authorize.net class to use guzzle. ([17449](https://github.com/civicrm/civicrm-core/pull/17449))**
+- **provide Calendar module with end_date when duration is provided
+ ([601](https://github.com/civicrm/civicrm-drupal/pull/601))**
-- **Navigation menu: fix translation of new-subtype entries ([17451](https://github.com/civicrm/civicrm-core/pull/17451))**
+ Improves display of activities in calendar views.
-- **APIv4 - Fix entity name on custom groups in schemaMapper ([17425](https://github.com/civicrm/civicrm-core/pull/17425))**
+## <a name="bugs"></a>Bugs resolved
-- **[REF] Simplify contributionIDs code ([17441](https://github.com/civicrm/civicrm-core/pull/17441))**
+### Core CiviCRM
-- **[NFC] Update Karma to be latest version ([17439](https://github.com/civicrm/civicrm-core/pull/17439))**
+- **CRM_Utils_Time::setTime and getTime() and their use in unit tests
+ ([dev/core#1781](https://lab.civicrm.org/dev/core/-/issues/1781):
+ [17414](https://github.com/civicrm/civicrm-core/pull/17414))**
-- **[REF] Simplify subject code. ([17436](https://github.com/civicrm/civicrm-core/pull/17436))**
+ CRM_Utils_Time - Allow TIME_FUNC to better isolate timing bugs.
-- **Revert Matt's fix for dev/membership#24 as it is incomplete and add a… ([17435](https://github.com/civicrm/civicrm-core/pull/17435))**
+- **Confusing popups when importing activities
+ ([dev/user-interface#17](https://lab.civicrm.org/dev/user-interface/-/issues/17):
+ [17067](https://github.com/civicrm/civicrm-core/pull/17067))**
-- **[REF] Refactor to switch from pear HTTP Request class to using Guzzle ([17420](https://github.com/civicrm/civicrm-core/pull/17420))**
+ Fixes a bug where the confirmation popup would appear when hitting the
+ back/cancel buttons, not just the import button, on most import forms.
-- **[NFC/TEST] dev/core#1784 - Unit tests for contact delete/restore ([17437](https://github.com/civicrm/civicrm-core/pull/17437))**
+- **Installing CiviCRM in another language, with civicrm-setup
+ ([dev/translation#39](https://lab.civicrm.org/dev/translation/-/issues/39):
+ [17244](https://github.com/civicrm/civicrm-core/pull/17244))**
-- **dev/core#560 Replace various CRM_Core_Error::fatal with statusBounces… ([17421](https://github.com/civicrm/civicrm-core/pull/17421))**
+ Fixes a bug when installing CiviCRM in another language with civicrm-setup.
-- **Make is_archived work as a url-search parameter ([17328](https://github.com/civicrm/civicrm-core/pull/17328))**
+- **Replace all instances of CRM_Core_Fatal with throw new CRM_Core_Exception
+ ([dev/core#560](https://lab.civicrm.org/dev/core/-/issues/560):
+ [17421](https://github.com/civicrm/civicrm-core/pull/17421),
+ [17343](https://github.com/civicrm/civicrm-core/pull/17343),
+ [17336](https://github.com/civicrm/civicrm-core/pull/17336) and
+ [17341](https://github.com/civicrm/civicrm-core/pull/17341))**
-- **dev/core#1791 - E_WARNINGS when viewing list of pledge payments ([17434](https://github.com/civicrm/civicrm-core/pull/17434))**
+- **CiviCRM 5.13.4 - smart groups with contact subtypes: subtype is not in
+ Contact Type field on edit criteria mode
+ ([dev/core#991](https://lab.civicrm.org/dev/core/-/issues/991):
+ [16541](https://github.com/civicrm/civicrm-core/pull/16541))**
-- **Make 'Pending' the default status for Contribution.repeattransaction ([17432](https://github.com/civicrm/civicrm-core/pull/17432))**
+ Fixes contact subtypes not being carried over when editing a smart group
+ created in Advanced Search.
-- **Fetch line items from correct contribution when repeating a contribution ([17220](https://github.com/civicrm/civicrm-core/pull/17220))**
+- **Unable to import relationship
+ ([dev/core#1731](https://lab.civicrm.org/dev/core/-/issues/1731):
+ [17163](https://github.com/civicrm/civicrm-core/pull/17163))**
-- **5.26 to masterr ([17431](https://github.com/civicrm/civicrm-core/pull/17431))**
+ Ensures that importing relationships works as expected.
-- **Support order_reference param in API3 Payment.create ([17278](https://github.com/civicrm/civicrm-core/pull/17278))**
+- **Apostrophes in richtext fields don't get exported properly in CiviReport
+ ([dev/core#1743](https://lab.civicrm.org/dev/core/-/issues/1743):
+ [17260](https://github.com/civicrm/civicrm-core/pull/17260))**
-- **dev/core#1650 Updated Financial Type title to Financial Type ID ([17147](https://github.com/civicrm/civicrm-core/pull/17147))**
+- **Statically added members of a smart group not found
+ ([dev/core#1745](https://lab.civicrm.org/dev/core/-/issues/1745):
+ [17419](https://github.com/civicrm/civicrm-core/pull/17419))**
-- **dev/membership#24 Don't hide disabled memberships from the contact membership tab ([17143](https://github.com/civicrm/civicrm-core/pull/17143))**
+- **Deleting an activity with attachments doesn't delete the file or entries in
+ civicrm_file/civicrm_entity_file
+ ([dev/core#1753](https://lab.civicrm.org/dev/core/-/issues/1753):
+ [17298](https://github.com/civicrm/civicrm-core/pull/17298))**
-- **dev/core#1745 Fix caching bug when adding a contact to a group ([17419](https://github.com/civicrm/civicrm-core/pull/17419))**
+- **E_WARNINGS when viewing list of pledge payments
+ ([dev/core#1791](https://lab.civicrm.org/dev/core/-/issues/1791):
+ [17434](https://github.com/civicrm/civicrm-core/pull/17434))**
-- **Configurable logfile size and hashing ([17192](https://github.com/civicrm/civicrm-core/pull/17192))**
+- **Deselected checkbox settings are not saved
+ ([dev/core#1794](https://lab.civicrm.org/dev/core/-/issues/1794):
+ [17493](https://github.com/civicrm/civicrm-core/pull/17493))**
-- **[REF] Extract getAttachments ([17405](https://github.com/civicrm/civicrm-core/pull/17405))**
+ Ensures deselected values are saved on custom fields settings forms.
-- **Remove always-true if block. ([17415](https://github.com/civicrm/civicrm-core/pull/17415))**
+- **Added activity types don't appear in the type dropdown on New Activity
+ ([dev/core#1822](https://lab.civicrm.org/dev/core/-/issues/1822):
+ [17625](https://github.com/civicrm/civicrm-core/pull/17625))**
-- **[REF] Preliminary cleanup for #17339 ([17417](https://github.com/civicrm/civicrm-core/pull/17417))**
+- **[regression](for real this time) API doesn't allow passing option values by
+ label ([dev/core#1816](https://lab.civicrm.org/dev/core/-/issues/1816):
+ [17628](https://github.com/civicrm/civicrm-core/pull/17628))**
-- **dev/core#1781 - CRM_Utils_Time - Allow TIME_FUNC to better isolate timing bugs ([17414](https://github.com/civicrm/civicrm-core/pull/17414))**
+ Updates APIv4 so that it matches based on label if name is not found.
-- **Allow for installation on Symfony 4.4 ([17380](https://github.com/civicrm/civicrm-core/pull/17380))**
+- **APIv4 - Improve custom field spec gathering
+ ([17471](https://github.com/civicrm/civicrm-core/pull/17471))**
-- **[REF] Pass params not-by-reference ([17406](https://github.com/civicrm/civicrm-core/pull/17406))**
+- **APIv4 - Remove implicit multi joins & add explicit joins
+ ([17332](https://github.com/civicrm/civicrm-core/pull/17332))**
-- **Use now instead of date for activity API3 spec ([17411](https://github.com/civicrm/civicrm-core/pull/17411))**
+- **APIv4 - Fix entity name on custom groups in schemaMapper
+ ([17425](https://github.com/civicrm/civicrm-core/pull/17425))**
-- **Typo Fix ([17409](https://github.com/civicrm/civicrm-core/pull/17409))**
+- **APIv4 - fix returning custom field values with API4
+ ([17399](https://github.com/civicrm/civicrm-core/pull/17399))**
-- **[REF] Remove unreachable block. ([17407](https://github.com/civicrm/civicrm-core/pull/17407))**
+- **[regression] Attempting to access Multi-Record Custom Field import results
+ in crash
+ ([dev/core#1841](https://lab.civicrm.org/dev/core/-/issues/1841):
+ [17713](https://github.com/civicrm/civicrm-core/pull/17713))**
-- **[REF] duplicate function. ([17400](https://github.com/civicrm/civicrm-core/pull/17400))**
+- **Fix issue with building smart groups when $contactQueries is empty
+ ([17622](https://github.com/civicrm/civicrm-core/pull/17622))**
-- **Fix logic for job log cleanup and make SQL safer ([17203](https://github.com/civicrm/civicrm-core/pull/17203))**
+- **replace deprecated money_format() fn to support PHP 7.4
+ (Work Towards [dev/core#1494](https://lab.civicrm.org/dev/core/-/issues/1494):
+ [17577](https://github.com/civicrm/civicrm-core/pull/17577))**
-- **dev/core#1731 - Unable to import relationship ([17163](https://github.com/civicrm/civicrm-core/pull/17163))**
+ Adds a deprecation notice and a status check for a money value format
+ configuration other than the default.
-- **APIv4 - fix returning custom field values with API4 ([17399](https://github.com/civicrm/civicrm-core/pull/17399))**
+- **QueueTest - Be more forgiving about slow execution
+ ([17532](https://github.com/civicrm/civicrm-core/pull/17532))**
-- **Remove $_REQUEST passed into CRM_Utils_Request::retrieve NFC ([17377](https://github.com/civicrm/civicrm-core/pull/17377))**
+- **CommunityMessages - Define more consistent behavior in the face of slow
+ execution ([17529](https://github.com/civicrm/civicrm-core/pull/17529))**
-- **Fix core#1773 unsubscribe form causes errors if submitted twice ([17402](https://github.com/civicrm/civicrm-core/pull/17402))**
+- **set boolean fields to false if not set.
+ ([17494](https://github.com/civicrm/civicrm-core/pull/17494))**
-- **5.26 to master ([17404](https://github.com/civicrm/civicrm-core/pull/17404))**
+- **Allow bidirectional assignment of relationships from search results
+ ([17413](https://github.com/civicrm/civicrm-core/pull/17413))**
-- **dev/core#1620 - Add campaign_id to template for alterMailContent hook ([16629](https://github.com/civicrm/civicrm-core/pull/16629))**
+- **Navigation menu: fix translation of new-subtype entries
+ ([17451](https://github.com/civicrm/civicrm-core/pull/17451))**
-- **[REF] Code simplification & unit test on suppressed emails in task ([17393](https://github.com/civicrm/civicrm-core/pull/17393))**
+- **utf8mb4 - If strict mode enabled query will fail if KEY_BLOCK_SIZE is not 0
+ ([17253](https://github.com/civicrm/civicrm-core/pull/17253))**
-- **NFC Add a bit more clarity to createEmailActivity function ([17391](https://github.com/civicrm/civicrm-core/pull/17391))**
+- **Update DAO and L10n Schema file
+ ([17395](https://github.com/civicrm/civicrm-core/pull/17395))**
-- **Add in domain tokens onto the Message Template admin interface ([17388](https://github.com/civicrm/civicrm-core/pull/17388))**
+- **Fix adding languages in multilingual
+ ([17228](https://github.com/civicrm/civicrm-core/pull/17228))**
-- **utf8mb4 - If strict mode enabled query will fail if KEY_BLOCK_SIZE is not 0 ([17253](https://github.com/civicrm/civicrm-core/pull/17253))**
+- **Don't exclude deleted contacts from ACL cache when user has permission
+ ([17379](https://github.com/civicrm/civicrm-core/pull/17379))**
-- **Simplify recurring contribution template inheritance ([17178](https://github.com/civicrm/civicrm-core/pull/17178))**
+- **SMTP page appears broken when language is French (JS issue)
+ ([dev/core#1760](https://lab.civicrm.org/dev/core/-/issues/1760):
+ [17317](https://github.com/civicrm/civicrm-core/pull/17317))**
-- **[REF] Pass an array of correct params to the function to create a recurring contribution. ([17398](https://github.com/civicrm/civicrm-core/pull/17398))**
+- **Trigger fatalErrorHandler for PEAR errors and for logs with severity ERROR
+ or higher ([17277](https://github.com/civicrm/civicrm-core/pull/17277))**
-- **Update DAO and L10n Schema file ([17395](https://github.com/civicrm/civicrm-core/pull/17395))**
+- **Add serialize column to civicrm_custom_field, remove "Multi-Select" html
+ type ([16992](https://github.com/civicrm/civicrm-core/pull/16992))**
-- **APIv4 - support custom entity joins ([17394](https://github.com/civicrm/civicrm-core/pull/17394))**
+ Work towards making custom select and multi-select fields more similar to
+ core select/multi-select fields.
-- **Api4: Add Price api entities ([17363](https://github.com/civicrm/civicrm-core/pull/17363))**
+- **Fix PHP notice when is_override is not set
+ ([17273](https://github.com/civicrm/civicrm-core/pull/17273))**
-- **dev/core#1722 Allow for first name and last name to be searched on ([17118](https://github.com/civicrm/civicrm-core/pull/17118))**
+- **respect file fields that have been configured as view only in profiles
+ ([17079](https://github.com/civicrm/civicrm-core/pull/17079))**
-- **dev/translation#39 - Fix `core:install --lang`. Realign boot plugins. ([17244](https://github.com/civicrm/civicrm-core/pull/17244))**
+- **Tag create: respect created_date and created_id params
+ ([17257](https://github.com/civicrm/civicrm-core/pull/17257))**
-- **Remove unused 'reset' param, other NFC tidy up: ([17392](https://github.com/civicrm/civicrm-core/pull/17392))**
+- **Add propertyBag handling for getEmail when incoming uses email-5
+ ([17267](https://github.com/civicrm/civicrm-core/pull/17267))**
-- **Fix pricefield pseudoconstant. ([17364](https://github.com/civicrm/civicrm-core/pull/17364))**
+- **Public status messages should show correct class/icon like error
+ ([17376](https://github.com/civicrm/civicrm-core/pull/17376))**
-- **Set default using spec for activity_date_time ([17390](https://github.com/civicrm/civicrm-core/pull/17390))**
+- **Accordion open-close with Font Awesome icons
+ ([17296](https://github.com/civicrm/civicrm-core/pull/17296))**
-- **dev/core#1775 Fix fee amount reversals when doing a change of financi… ([17386](https://github.com/civicrm/civicrm-core/pull/17386))**
+ Use Font Awesome icons instead of triangle gifs to indicate Accordion
+ open-close.
-- **Use apiv4, cache infra for basicTypes ([17387](https://github.com/civicrm/civicrm-core/pull/17387))**
+- **Comm prefs: add condition param for {privacyFlag}
+ ([17307](https://github.com/civicrm/civicrm-core/pull/17307))**
-- **Fix adding languages in multilingual ([17228](https://github.com/civicrm/civicrm-core/pull/17228))**
+ Makes the {privacyFlag} icon usage more consistent.
-- **Various BAO create/add cleanups to use writeRecord() ([17308](https://github.com/civicrm/civicrm-core/pull/17308))**
+- **Member tab: auto-renew status was hidden from screen readers
+ ([17310](https://github.com/civicrm/civicrm-core/pull/17310))**
-- **Remove instantiation of transaction from payment express ipn class ([17348](https://github.com/civicrm/civicrm-core/pull/17348))**
+- **No rendered icons in data source
+ ([17285](https://github.com/civicrm/civicrm-core/pull/17285))**
-- **Remove null code ([17381](https://github.com/civicrm/civicrm-core/pull/17381))**
+- **Simplify admin console and remove superfluous icons
+ ([17284](https://github.com/civicrm/civicrm-core/pull/17284))**
-- **Remove validation bypass ([17384](https://github.com/civicrm/civicrm-core/pull/17384))**
+- **Replace stop-icon.png with fa-ban over a relevant icon for privacy
+ ([17283](https://github.com/civicrm/civicrm-core/pull/17283))**
-- **[NFC] Remove some more of the old cvs blocks ([17383](https://github.com/civicrm/civicrm-core/pull/17383))**
+- **Replace all instances of copy.png with font awesome
+ ([17280](https://github.com/civicrm/civicrm-core/pull/17280))**
-- **[TEST] Fix test failure on Drupal 8 E2E PrevNextTest by only includin… ([17358](https://github.com/civicrm/civicrm-core/pull/17358))**
+- **Remove most uses of check.gif
+ ([17279](https://github.com/civicrm/civicrm-core/pull/17279))**
-- **#991 subtypes not filled in when editing a smart group ([16541](https://github.com/civicrm/civicrm-core/pull/16541))**
+- **Replace geotag_16.png with fa-map-marker
+ ([17281](https://github.com/civicrm/civicrm-core/pull/17281))**
-- **Don't exclude deleted contacts from ACL cache when user has permission ([17379](https://github.com/civicrm/civicrm-core/pull/17379))**
+- **Decorative chevrons should be icons not angle quotes
+ ([17245](https://github.com/civicrm/civicrm-core/pull/17245))**
-- **Make all icons aria-hidden ([17318](https://github.com/civicrm/civicrm-core/pull/17318))**
+- **A/B test: icon should be Erlenmeyer flask, not bar chart
+ ([17316](https://github.com/civicrm/civicrm-core/pull/17316))**
-- **CiviEvent Dashboard and Manage Events: clean up disused url template vars ([17378](https://github.com/civicrm/civicrm-core/pull/17378))**
+- **Proceeding to confirmation page should be a "next" button not a check
+ ([17246](https://github.com/civicrm/civicrm-core/pull/17246))**
-- **Replace ical and office calendar image icons ([17282](https://github.com/civicrm/civicrm-core/pull/17282))**
+- **Replaced more> icon with Font Awesome
+ ([17295](https://github.com/civicrm/civicrm-core/pull/17295))**
-- **Preliminary cleanup on form ([17345](https://github.com/civicrm/civicrm-core/pull/17345))**
+- **Icon helper: replace quotes in html title.
+ ([17289](https://github.com/civicrm/civicrm-core/pull/17289))**
-- **Public status messages should show correct class/icon like error ([17376](https://github.com/civicrm/civicrm-core/pull/17376))**
+- **Removed last TreePlus.gif and TreeMinus.gif spots
+ ([17297](https://github.com/civicrm/civicrm-core/pull/17297))**
-- **[REF] Minor code simplification ([17373](https://github.com/civicrm/civicrm-core/pull/17373))**
+ Improves the UI by using icons instead of the black triangle gifs.
-- **[REF] Call completeOrder directly from event status update form ([17346](https://github.com/civicrm/civicrm-core/pull/17346))**
+### CiviCase
-- **Undo variable variable. ([17371](https://github.com/civicrm/civicrm-core/pull/17371))**
+- **case activity: follow-up activity assignee does not receive email
+ ([dev/core#1721](https://lab.civicrm.org/dev/core/-/issues/1721):
+ [17116](https://github.com/civicrm/civicrm-core/pull/17116))**
-- **Use non-deprecated method ([17370](https://github.com/civicrm/civicrm-core/pull/17370))**
+ Ensures when a follow up case activity is created the assignee is sent an
+ email.
-- **APIv4 - Improve pseudoconstant suffix support ([17368](https://github.com/civicrm/civicrm-core/pull/17368))**
+### CiviContribute
-- **Migrate CiviMail "extern" scripts to conventional routes ([17312](https://github.com/civicrm/civicrm-core/pull/17312))**
+- **Custom fields disappear on page refresh
+ ([dev/core#1728](https://lab.civicrm.org/dev/core/-/issues/1728):
+ [17301](https://github.com/civicrm/civicrm-core/pull/17301))**
-- **dev/core#1757 hide menu toggle when D7 toolbar is absent ([17362](https://github.com/civicrm/civicrm-core/pull/17362))**
+ Ensures that financial type specific custom fields are displayed on the
+ backend contribution form on refresh.
-- **5.26 to master ([17369](https://github.com/civicrm/civicrm-core/pull/17369))**
+- **Fix pricefield pseudoconstant.
+ ([17364](https://github.com/civicrm/civicrm-core/pull/17364))**
-- **Fix setLanguage docblock, other nfc changes ([17356](https://github.com/civicrm/civicrm-core/pull/17356))**
+ Fixes `PriceField` entity to build options for the `price_set_id`
+ pseudoconstant field.
-- **Improve js escaping in smarty {ts} ([17317](https://github.com/civicrm/civicrm-core/pull/17317))**
+- **Nuance cancel options for processors
+ ([17430](https://github.com/civicrm/civicrm-core/pull/17430))**
-- **Fix for dev/core#1608: correct date format for trxn_date. ([17355](https://github.com/civicrm/civicrm-core/pull/17355))**
+- **[regression] Contribution amount choices don't appear for anonymous users
+ ([dev/core#1823](https://lab.civicrm.org/dev/core/-/issues/1823):
+ [17619](https://github.com/civicrm/civicrm-core/pull/17619))**
-- **APIv4 - Remove implicit multi joins & add explicit joins ([17332](https://github.com/civicrm/civicrm-core/pull/17332))**
+- **Import Contribution of custom fields only accepts "Numeric Value" rather
+ than "Label" ([dev/core#1806](https://lab.civicrm.org/dev/core/-/issues/1806):
+ [17632](https://github.com/civicrm/civicrm-core/pull/17632))**
-- **[REF] [Reports] Ensure that all contribution pages including disabled ones are return… ([17357](https://github.com/civicrm/civicrm-core/pull/17357))**
+- **"Financial Type" listed twice in contribution export
+ ([dev/core#1650](https://lab.civicrm.org/dev/core/-/issues/1650):
+ [17147](https://github.com/civicrm/civicrm-core/pull/17147))**
-- **[TEST] Update test to support for 8.0.19 change ([17354](https://github.com/civicrm/civicrm-core/pull/17354))**
+- **Record Payment does not update check_number & trxn id on main contribution.
+ ([dev/core#1758](https://lab.civicrm.org/dev/core/-/issues/1758):
+ [17314](https://github.com/civicrm/civicrm-core/pull/17314))**
-- **[REF] Cleanup and extract string functions specific to entity names. ([17330](https://github.com/civicrm/civicrm-core/pull/17330))**
+- **civicrm_financial_trxn.fee_amount reversals mixed up
+ ([dev/core#1775](https://lab.civicrm.org/dev/core/-/issues/1775):
+ [17386](https://github.com/civicrm/civicrm-core/pull/17386))**
-- **Switch docblock code to use markdown syntax. ([17304](https://github.com/civicrm/civicrm-core/pull/17304))**
+- **jquery validation type error on the credit card field
+ ([dev/core#1797](https://lab.civicrm.org/dev/core/-/issues/1797):
+ [17497](https://github.com/civicrm/civicrm-core/pull/17497))**
-- **[REF] Stop passing by reference. ([17349](https://github.com/civicrm/civicrm-core/pull/17349))**
+ Fixes a jQuery error when submitting a front end contribution form with a
+ credit card field.
-- **Call completeOrder directly from contribute status update form ([17347](https://github.com/civicrm/civicrm-core/pull/17347))**
+- **Fix payment instrument bug by using correct payment instrument
+ ([17607](https://github.com/civicrm/civicrm-core/pull/17607))**
-- **Use status bounces, not fatal, in front end contribution form base class ([17343](https://github.com/civicrm/civicrm-core/pull/17343))**
+- **Payment PropertyBag - Fix setAmount
+ ([17505](https://github.com/civicrm/civicrm-core/pull/17505))**
-- **dev/core#560 Replace deprecated CRM_Core_Error::fatal with either sta… ([17341](https://github.com/civicrm/civicrm-core/pull/17341))**
+ Ensures "Amount" is set correctly on PropertyBag.
-- **Remove code that still seems unnecessary. ([17342](https://github.com/civicrm/civicrm-core/pull/17342))**
+- **Fixed hide show of start date
+ ([17446](https://github.com/civicrm/civicrm-core/pull/17446))**
-- **[TEST] dev/core#1766 - Remove flakiness from testGetFromTo tests ([17338](https://github.com/civicrm/civicrm-core/pull/17338))**
+ Fix hide/show of receive date for recurring contributions.
-- **[NFC] Add comment that deprecated code is actually still reachable ([17340](https://github.com/civicrm/civicrm-core/pull/17340))**
+- **Don't allow Contribution.repeattransaction to be used without a recurring
+ contribution ([17447](https://github.com/civicrm/civicrm-core/pull/17447))**
-- **dev/core#560 Replace some instances of CRM_Core_Error::fatal with an … ([17336](https://github.com/civicrm/civicrm-core/pull/17336))**
+- **Add actual field name for processor_id to getSubscriptionDetails
+ ([17466](https://github.com/civicrm/civicrm-core/pull/17466))**
-- **Extend icon helper support, including for formLink ([17319](https://github.com/civicrm/civicrm-core/pull/17319))**
+- **Make 'Pending' the default status for Contribution.repeattransaction
+ ([17432](https://github.com/civicrm/civicrm-core/pull/17432))**
-- **Removed last TreePlus.gif and TreeMinus.gif spots ([17297](https://github.com/civicrm/civicrm-core/pull/17297))**
+- **Fetch line items from correct contribution when repeating a contribution
+ ([17220](https://github.com/civicrm/civicrm-core/pull/17220))**
-- **5.26 ([17337](https://github.com/civicrm/civicrm-core/pull/17337))**
+- **Support order_reference param in API3 Payment.create
+ ([17278](https://github.com/civicrm/civicrm-core/pull/17278))**
-- **[REF] CRM_Core_DAO_AllCoreTables::getBriefName to accept BAO name ([17331](https://github.com/civicrm/civicrm-core/pull/17331))**
+### CiviMail
-- **[REF] Missing semicolon on smtp settings page, code cleanup in file-on-case, add test ([17335](https://github.com/civicrm/civicrm-core/pull/17335))**
+- **Don't log subscription_history
+ ([dev/core#1762](https://lab.civicrm.org/dev/core/-/issues/1762):
+ [17323](https://github.com/civicrm/civicrm-core/pull/17323))**
-- **Allow click-through and open tracking to be enabled/disabled by default ([17291](https://github.com/civicrm/civicrm-core/pull/17291))**
+- **Unsubscribe generates 500 server error responses, logs say "missing
+ parameters" ([dev/core#1773](https://lab.civicrm.org/dev/core/-/issues/1773):
+ [17402](https://github.com/civicrm/civicrm-core/pull/17402))**
-- **dev/core#1762 Don't log subscription_history ([17323](https://github.com/civicrm/civicrm-core/pull/17323))**
+ Ensures the unsubscribe form can only be submitted once.
-- **Accordion open-close with Font Awesome icons ([17296](https://github.com/civicrm/civicrm-core/pull/17296))**
+### CiviMember
-- **[NFC] Add comment regarding lower case for Polish states ([17327](https://github.com/civicrm/civicrm-core/pull/17327))**
+- **Recurring contribution fails with "ipn_payment_callback_exception", for
+ membership auto-renewal via PayPalPro.
+ ([dev/core#1608](https://lab.civicrm.org/dev/core/-/issues/1608):
+ [17355](https://github.com/civicrm/civicrm-core/pull/17355))**
-- **5.26 ([17329](https://github.com/civicrm/civicrm-core/pull/17329))**
+- **Memberships of disabled membership types do not appear on the membership tab
+ BUT do throw duplicate Membership Warning
+ ([dev/membership#24](https://lab.civicrm.org/dev/membership/-/issues/24):
+ [17143](https://github.com/civicrm/civicrm-core/pull/17143) and
+ [17435](https://github.com/civicrm/civicrm-core/pull/17435))**
-- **Trigger fatalErrorHandler for PEAR errors and for logs with severity ERROR or higher ([17277](https://github.com/civicrm/civicrm-core/pull/17277))**
+ Adds a unit test to lock in the correct behavior.
-- **Comm prefs: add condition param for {privacyFlag} ([17307](https://github.com/civicrm/civicrm-core/pull/17307))**
+- **Update MembershipType.name to be a required field
+ ([17463](https://github.com/civicrm/civicrm-core/pull/17463))**
-- **Member tab: auto-renew status was hidden from screen readers ([17310](https://github.com/civicrm/civicrm-core/pull/17310))**
+### Joomla Integration
-- **Remove unneeded parameters in {ts} on membership form ([17326](https://github.com/civicrm/civicrm-core/pull/17326))**
+- **Upgrade from 5.26.2 to 5.27 RC Fails
+ ([dev/joomla/#28](https://lab.civicrm.org/dev/joomla/-/issues/28):
+ [17710](https://github.com/civicrm/civicrm-core/pull/17710))**
-- **(NFC) CRM_Utils_Url - Fix declared type ([17320](https://github.com/civicrm/civicrm-core/pull/17320))**
+### WordPress Integration
-- **(NFC) Remove some cvs docblock help ([17322](https://github.com/civicrm/civicrm-core/pull/17322))**
+- **Styling issues after upgrade to WordPress 5.3
+ ([dev/wordpress#46](https://lab.civicrm.org/dev/wordpress/-/issues/46):
+ [16967](https://github.com/civicrm/civicrm-core/pull/16967))**
-- **Add serialize column to civicrm_custom_field, remove "Multi-Select" html type ([16992](https://github.com/civicrm/civicrm-core/pull/16992))**
+- **WP - Change definitions of `cms.root`, `civicrm.root`
+ ([17360](https://github.com/civicrm/civicrm-core/pull/17360))**
-- **dev/core#1758 - Fix check number and trxn id values on record payment… ([17314](https://github.com/civicrm/civicrm-core/pull/17314))**
+ The base logic for computing path/URL defaults is in Civi/Core/Paths.php.
-- **No rendered icons in data source ([17285](https://github.com/civicrm/civicrm-core/pull/17285))**
+ For Civi-WP, certain variables (which are easier to compute via WP APIs) are
+ overridden in CRM/Utils/System/WordPress.php.
-- **crmButton: support icon=0 for no icon ([17303](https://github.com/civicrm/civicrm-core/pull/17303))**
+ On WP, the path/URL logic for has been split: One codepath for normal Civi
+ pages - based on WP APIs and another codepath for older, standalone extern
+ scripts - based on the same logic as before
-- **Cleanup PriceFieldValue BAO ([17306](https://github.com/civicrm/civicrm-core/pull/17306))**
+- **Declare Minimum WP and PHP versions required for installation
+ ([201](https://github.com/civicrm/civicrm-wordpress/pull/201))**
-- **Ui 18 ([17078](https://github.com/civicrm/civicrm-core/pull/17078))**
+- **wp-rest - Adjust extern URL. Be more defensive about 'query' part.
+ ([192](https://github.com/civicrm/civicrm-wordpress/pull/192))**
-- **dev/core#1721 send email to case follow-up activity assignees ([17116](https://github.com/civicrm/civicrm-core/pull/17116))**
+## <a name="misc"></a>Miscellany
-- **Clarify definition of amount field in civicrm_contribution_recur table. ([17311](https://github.com/civicrm/civicrm-core/pull/17311))**
+- **handle less common dynamic reference cases
+ ([17653](https://github.com/civicrm/civicrm-core/pull/17653))**
-- **5.26 ([17313](https://github.com/civicrm/civicrm-core/pull/17313))**
+- **Use apiv4, cache infra for basicTypes
+ ([17387](https://github.com/civicrm/civicrm-core/pull/17387))**
-- **A/B test: icon should be Erlenmeyer flask, not bar chart ([17316](https://github.com/civicrm/civicrm-core/pull/17316))**
+- **Cleanup PriceFieldValue BAO
+ ([17306](https://github.com/civicrm/civicrm-core/pull/17306))**
-- **[REF] Cleanup MailingAB BAO ([17309](https://github.com/civicrm/civicrm-core/pull/17309))**
+- **Clarify definition of amount field in civicrm_contribution_recur table.
+ ([17311](https://github.com/civicrm/civicrm-core/pull/17311))**
-- **Screen reader text for wrenches ([17293](https://github.com/civicrm/civicrm-core/pull/17293))**
+- **Call completeOrder directly from contribute status update form
+ ([17347](https://github.com/civicrm/civicrm-core/pull/17347))**
-- **sr-only text for relationship permissions ([17294](https://github.com/civicrm/civicrm-core/pull/17294))**
+- **Switch docblock code to use markdown syntax.
+ ([17304](https://github.com/civicrm/civicrm-core/pull/17304))**
-- **dev/core#1728 Ensure that custom fields that extend specified financi… ([17301](https://github.com/civicrm/civicrm-core/pull/17301))**
+- **Preliminary cleanup on form
+ ([17345](https://github.com/civicrm/civicrm-core/pull/17345))**
-- **[REF] Minor tidy up ([17302](https://github.com/civicrm/civicrm-core/pull/17302))**
+- **Add getBAOClassName utiltiy function
+ ([17268](https://github.com/civicrm/civicrm-core/pull/17268))**
-- **Proceeding to confirmation page should be a "next" button not a check ([17246](https://github.com/civicrm/civicrm-core/pull/17246))**
+- **CRM/Logging - Remove obsolete cache static clear in test
+ ([17269](https://github.com/civicrm/civicrm-core/pull/17269))**
-- **Add ContributionRecur crud api ([17299](https://github.com/civicrm/civicrm-core/pull/17299))**
+- **Remove incorrect retrievals of tax-term setting
+ ([17183](https://github.com/civicrm/civicrm-core/pull/17183))**
-- **Replaced more> icon with Font Awesome ([17295](https://github.com/civicrm/civicrm-core/pull/17295))**
+- **CiviEvent Dashboard and Manage Events: clean up disused url template vars
+ ([17378](https://github.com/civicrm/civicrm-core/pull/17378))**
-- **Icon helper: replace quotes in html title. ([17289](https://github.com/civicrm/civicrm-core/pull/17289))**
+- **Set default using spec for activity_date_time
+ ([17390](https://github.com/civicrm/civicrm-core/pull/17390))**
-- **Fix PHP notice when is_override is not set ([17273](https://github.com/civicrm/civicrm-core/pull/17273))**
+- **Convert remaining Authorize.net test to use guzzle
+ ([17473](https://github.com/civicrm/civicrm-core/pull/17473))**
-- **dev/wp#46 - Fix overlarge select2 elements in WordPress 5.3+ ([16967](https://github.com/civicrm/civicrm-core/pull/16967))**
+- **Various BAO create/add cleanups to use writeRecord()
+ ([17308](https://github.com/civicrm/civicrm-core/pull/17308))**
-- **Simplify admin console and remove superfluous icons ([17284](https://github.com/civicrm/civicrm-core/pull/17284))**
+- **Remove instantiation of transaction from payment express ipn class
+ ([17348](https://github.com/civicrm/civicrm-core/pull/17348))**
-- **Replace stop-icon.png with fa-ban over a relevant icon for privacy ([17283](https://github.com/civicrm/civicrm-core/pull/17283))**
+- **Remove null code
+ ([17381](https://github.com/civicrm/civicrm-core/pull/17381))**
-- **[REF] Add contribution_id field to search using metadata instead of h… ([17286](https://github.com/civicrm/civicrm-core/pull/17286))**
+- **Remove validation bypass
+ ([17384](https://github.com/civicrm/civicrm-core/pull/17384))**
-- **Replace all instances of copy.png with font awesome ([17280](https://github.com/civicrm/civicrm-core/pull/17280))**
+- **Simplify recurring contribution template inheritance
+ ([17178](https://github.com/civicrm/civicrm-core/pull/17178))**
-- **Remove most uses of check.gif ([17279](https://github.com/civicrm/civicrm-core/pull/17279))**
+- **Remove $_REQUEST passed into CRM_Utils_Request::retrieve NFC
+ ([17377](https://github.com/civicrm/civicrm-core/pull/17377))**
-- **NFC Change hardcoded ID to constant ([17275](https://github.com/civicrm/civicrm-core/pull/17275))**
+- **Use now instead of date for activity API3 spec
+ ([17411](https://github.com/civicrm/civicrm-core/pull/17411))**
-- **Replace geotag_16.png with fa-map-marker ([17281](https://github.com/civicrm/civicrm-core/pull/17281))**
+- **Typo Fix ([17409](https://github.com/civicrm/civicrm-core/pull/17409))**
-- **(dev/core#1580) Allow to search on contribution id ([16484](https://github.com/civicrm/civicrm-core/pull/16484))**
+- **Fix logic for job log cleanup and make SQL safer
+ ([17203](https://github.com/civicrm/civicrm-core/pull/17203))**
-- **dev/user-interface#17 Fix popup confirmation on import forms ([17067](https://github.com/civicrm/civicrm-core/pull/17067))**
+- **Remove always-true if block.
+ ([17415](https://github.com/civicrm/civicrm-core/pull/17415))**
-- **Merge code - remove UPDATE IGNORE+Delete & just use reliable update ([17072](https://github.com/civicrm/civicrm-core/pull/17072))**
+- **Remove No longer required HTTP_Request Package
+ ([293](https://github.com/civicrm/civicrm-packages/pull/293))**
-- **respect file fields that have been configured as view only in profiles ([17079](https://github.com/civicrm/civicrm-core/pull/17079))**
+- **Remove code that still seems unnecessary.
+ ([17342](https://github.com/civicrm/civicrm-core/pull/17342))**
-- **dev/core#1743 - Fix decoding of apostrophes in csv export from CiviReports ([17260](https://github.com/civicrm/civicrm-core/pull/17260))**
+- **Undo variable variable.
+ ([17371](https://github.com/civicrm/civicrm-core/pull/17371))**
-- **Decorative chevrons should be icons not angle quotes ([17245](https://github.com/civicrm/civicrm-core/pull/17245))**
+- **Use non-deprecated method
+ ([17370](https://github.com/civicrm/civicrm-core/pull/17370))**
-- **Tag create: respect created_date and created_id params ([17257](https://github.com/civicrm/civicrm-core/pull/17257))**
+- **Remove last reference to Payment->_processorName in core & remove from
+ processors ([17474](https://github.com/civicrm/civicrm-core/pull/17474))**
-- **Add getBAOClassName utiltiy function ([17268](https://github.com/civicrm/civicrm-core/pull/17268))**
+- **Remove unused singleton from core payment processors
+ ([17468](https://github.com/civicrm/civicrm-core/pull/17468))**
-- **CRM/Logging - Remove obsolete cache static clear in test ([17269](https://github.com/civicrm/civicrm-core/pull/17269))**
+- **Test fixes to support apiv4 add of MembershipType
+ ([17488](https://github.com/civicrm/civicrm-core/pull/17488))**
-- **Add propertyBag handling for getEmail when incoming uses email-5 ([17267](https://github.com/civicrm/civicrm-core/pull/17267))**
+- **Merge code - remove UPDATE IGNORE+Delete & just use reliable update
+ ([17072](https://github.com/civicrm/civicrm-core/pull/17072))**
-- **(NFC) RegionTest - Small cleanups ([17270](https://github.com/civicrm/civicrm-core/pull/17270))**
+- **Remove unneeded parameters in {ts} on membership form
+ ([17326](https://github.com/civicrm/civicrm-core/pull/17326))**
-- **5.26 ([17263](https://github.com/civicrm/civicrm-core/pull/17263))**
+- **Remove unused 'reset' param, other NFC tidy up:
+ ([17392](https://github.com/civicrm/civicrm-core/pull/17392))**
-- **[REF] Grant BAO cleanup ([17264](https://github.com/civicrm/civicrm-core/pull/17264))**
+- **Fix setLanguage docblock, other nfc changes
+ ([17356](https://github.com/civicrm/civicrm-core/pull/17356))**
-- **[NFC] Add sr-only class for content only for screen readers ([17255](https://github.com/civicrm/civicrm-core/pull/17255))**
+- **[REF] Simplify contributionIDs code
+ ([17441](https://github.com/civicrm/civicrm-core/pull/17441))**
-- **Remove incorrect retrievals of tax-term setting ([17183](https://github.com/civicrm/civicrm-core/pull/17183))**
+- **[REF] Extract getAttachments
+ ([17405](https://github.com/civicrm/civicrm-core/pull/17405))**
-- **provide Calendar module with end_date when duration is provided ([601](https://github.com/civicrm/civicrm-drupal/pull/601))**
+- **[REF] Preliminary cleanup for #17339
+ ([17417](https://github.com/civicrm/civicrm-core/pull/17417))**
-- **Declare Minimum WP and PHP versions required for installation ([201](https://github.com/civicrm/civicrm-wordpress/pull/201))**
+- **[REF] Remove unreachable block.
+ ([17407](https://github.com/civicrm/civicrm-core/pull/17407))**
-- **5.26 ([200](https://github.com/civicrm/civicrm-wordpress/pull/200))**
+- **[REF] Pass an array of correct params to the function to create a recurring
+ contribution. ([17398](https://github.com/civicrm/civicrm-core/pull/17398))**
-- **wp-rest - Adjust extern URL. Be more defensive about 'query' part. ([192](https://github.com/civicrm/civicrm-wordpress/pull/192))**
+- **[REF] Code simplification & unit test on suppressed emails in task
+ ([17393](https://github.com/civicrm/civicrm-core/pull/17393))**
-- **5.26 ([198](https://github.com/civicrm/civicrm-wordpress/pull/198))**
+- **[REF] duplicate function.
+ ([17400](https://github.com/civicrm/civicrm-core/pull/17400))**
-- **5.26 to master ([197](https://github.com/civicrm/civicrm-wordpress/pull/197))**
+- **[REF] Pass params not-by-reference
+ ([17406](https://github.com/civicrm/civicrm-core/pull/17406))**
-- **Remove No longer required HTTP_Request Package ([293](https://github.com/civicrm/civicrm-packages/pull/293))**
+- **[REF] Refactor to switch from pear HTTP Request class to using Guzzle
+ ([17420](https://github.com/civicrm/civicrm-core/pull/17420))**
-## <a name="misc"></a>Miscellany
+- **[REF] [Reports] Ensure that all contribution pages including disabled ones
+ are return… ([17357](https://github.com/civicrm/civicrm-core/pull/17357))**
+
+- **[REF] Cleanup and extract string functions specific to entity names.
+ ([17330](https://github.com/civicrm/civicrm-core/pull/17330))**
+
+- **[REF] Stop passing by reference.
+ ([17349](https://github.com/civicrm/civicrm-core/pull/17349))**
+
+- **[REF] Simplify subject code.
+ ([17436](https://github.com/civicrm/civicrm-core/pull/17436))**
+
+- **[REF] Implement required fields database changes that have occured du…
+ ([17465](https://github.com/civicrm/civicrm-core/pull/17465))**
+
+- **[REF] Bump Pear Log version to fix compatability with Drupal 8 / Drup…
+ ([17460](https://github.com/civicrm/civicrm-core/pull/17460))**
+
+- **[REF] Convert one of the http calls in Authorize.net class to use guzzle.
+ ([17449](https://github.com/civicrm/civicrm-core/pull/17449))**
+
+- **[REF] Minor simplification
+ ([17443](https://github.com/civicrm/civicrm-core/pull/17443))**
+
+- **[REF] Grant BAO cleanup
+ ([17264](https://github.com/civicrm/civicrm-core/pull/17264))**
+
+- **[REF] CRM_Core_DAO_AllCoreTables::getBriefName to accept BAO name
+ ([17331](https://github.com/civicrm/civicrm-core/pull/17331))**
+
+- **[REF] Missing semicolon on smtp settings page, code cleanup in file-on-case,
+ add test ([17335](https://github.com/civicrm/civicrm-core/pull/17335))**
+
+- **[REF] Extract createFollowUpActivities
+ ([17481](https://github.com/civicrm/civicrm-core/pull/17481))**
+
+- **[REF] Switch to an api call to get the contact details.
+ ([17442](https://github.com/civicrm/civicrm-core/pull/17442))**
+
+- **[REF] Minor code simplification
+ ([17373](https://github.com/civicrm/civicrm-core/pull/17373))**
+
+- **[REF] Call completeOrder directly from event status update form
+ ([17346](https://github.com/civicrm/civicrm-core/pull/17346))**
+
+- **[REF] Remove never-passed params from function signature
+ ([17464](https://github.com/civicrm/civicrm-core/pull/17464))**
+
+- **[REF] Fix serialized membership field handling in RelationshipTest
+ ([17469](https://github.com/civicrm/civicrm-core/pull/17469))**
+
+- **[REF] Minor tidy up
+ ([17302](https://github.com/civicrm/civicrm-core/pull/17302))**
+
+- **[REF] Remove always NULL param modified_id
+ ([17489](https://github.com/civicrm/civicrm-core/pull/17489))**
+
+- **[REF] Add contribution_id field to search using metadata instead of h…
+ ([17286](https://github.com/civicrm/civicrm-core/pull/17286))**
+
+- **[REF] Fix unit test failures on MySQL 5.6 due to Custom Field table being
+ created without Dynamic Row Format
+ ([17586](https://github.com/civicrm/civicrm-core/pull/17586))**
+
+- **[REF] Start to convert Dummy processor to use PropertyBag
+ ([17452](https://github.com/civicrm/civicrm-core/pull/17452))**
+
+- **[Ref] remove calls to, and deprecate, pending function
+ ([17490](https://github.com/civicrm/civicrm-core/pull/17490))**
+
+- **[REF] Cleanup MailingAB BAO
+ ([17309](https://github.com/civicrm/civicrm-core/pull/17309))**
+
+- **[TEST] Update test to support for 8.0.19 change
+ ([17354](https://github.com/civicrm/civicrm-core/pull/17354))**
+
+- **[TEST] Fix test failure on Drupal 8 E2E PrevNextTest by only includin…
+ ([17358](https://github.com/civicrm/civicrm-core/pull/17358))**
+
+- **[TEST] dev/core#1766 - Remove flakiness from testGetFromTo tests
+ ([dev/core#1766](https://lab.civicrm.org/dev/core/-/issues/1766):
+ [17338](https://github.com/civicrm/civicrm-core/pull/17338))**
+
+- **[NFC/TEST] dev/core#1784 - Unit tests for contact delete/restore
+ ([dev/core#1784](https://lab.civicrm.org/dev/core/-/issues/1784):
+ [17437](https://github.com/civicrm/civicrm-core/pull/17437))**
+
+- **NFC - Change array() to short syntax []
+ ([17470](https://github.com/civicrm/civicrm-core/pull/17470))**
+
+- **[NFC] Update Karma to be latest version
+ ([17439](https://github.com/civicrm/civicrm-core/pull/17439))**
+
+- **(NFC) CRM_Utils_Url - Fix declared type
+ ([17320](https://github.com/civicrm/civicrm-core/pull/17320))**
+
+- **[NFC] Remove some more of the old cvs blocks
+ ([17383](https://github.com/civicrm/civicrm-core/pull/17383))**
+
+- **NFC Add a bit more clarity to createEmailActivity function
+ ([17391](https://github.com/civicrm/civicrm-core/pull/17391))**
+
+- **[NFC] Add comment that deprecated code is actually still reachable
+ ([17340](https://github.com/civicrm/civicrm-core/pull/17340))**
+
+- **(NFC) Remove some cvs docblock help
+ ([17322](https://github.com/civicrm/civicrm-core/pull/17322))**
+
+- **[NFC] Add comment regarding lower case for Polish states
+ ([17327](https://github.com/civicrm/civicrm-core/pull/17327))**
+
+- **(NFC) RegionTest - Small cleanups
+ ([17270](https://github.com/civicrm/civicrm-core/pull/17270))**
+
+- **[NFC] Add sr-only class for content only for screen readers
+ ([17255](https://github.com/civicrm/civicrm-core/pull/17255))**
+
+- **NFC Change hardcoded ID to constant
+ ([17275](https://github.com/civicrm/civicrm-core/pull/17275))**
+
+- **[NFC] Fix use of single quotes, strict operator
+ ([17492](https://github.com/civicrm/civicrm-core/pull/17492))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
-a-n The Artists Information Company - William Mortada; AGH Strategies - Alice Frumin, Andrew Hunt; Andrei Mondoc; British Humanist Association - Andrew West; Caltha - Tomasz Pietrzkowski; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - René Olivo; Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark Burdett; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick Figel; JMA Consulting - Edsel Lopez, Seamus Lee; jmdh; John Kingsnorth; Joinery - Allen Shaw; Kartik Kathuria; Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; Palante Technology Cooperative - Morgan Robinson; Semper IT - Karin Gerritsen; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton
+a-n The Artists Information Company - William Mortada; AGH Strategies - Alice
+Frumin, Andrew Hunt; Andrei Mondoc; British Humanist Association - Andrew West;
+Caltha - Tomasz Pietrzkowski; Christian Wach; Circle Interactive - Pradeep
+Nayak; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku;
+CompuCorp - René Olivo; Coop SymbioTIC - Mathieu Lutfy; Dave D; Dominic Hargreaves;
+Electronic Frontier Foundation - Mark Burdett; Freeform Solutions - Herb van den
+Dool; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick
+Figel; JMA Consulting - Edsel Lopez, Seamus Lee; John Kingsnorth; Joinery -
+Allen Shaw; Kartik Kathuria; Lighthouse Design and Consulting - Brian
+Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey
+O'Toole; MJW Consulting - Matthew Wire; Palante Technology Cooperative - Morgan
+Robinson; Semper IT - Karin Gerritsen; Tadpole Collective - Kevin Cristiano;
+Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
-a-n The Artists Information Company - William Mortada; AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Justin Freeman; Artful Robot - Rich Lott; Betty Dolfing; British Humanist Association - Andrew West; Christian Wach; Circle Interactive - Pradeep Nayak; civibot[bot]; CiviCoop - Jaap Jansma; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - René Olivo; Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark Burdett; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick Figel; iXiam - Luciano Spiegel; JMA Consulting - Monish Deb, Seamus Lee; John Kingsnorth; Joinery - Allen Shaw; Kartik Kathuria; Korlon - Stuart Gaston; megaphonetech-dennis; Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; Palante Technology Cooperative - Morgan Robinson; Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton
+Agileware - Justin Freeman; Artful Robot - Rich Lott; Betty Dolfing; CiviCoop -
+Jaap Jansma; iXiam - Luciano Spiegel; JMA Consulting - Monish Deb; Kartik
+Kathuria; Korlon - Stuart Gaston; Megaphone Technology Consulting - Dennis P.
+Osorio; Squiffle Consulting - Aidan Saunders;
## <a name="feedback"></a>Feedback