| *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? | no |
+| **Introduce features?** | **yes** |
+| **Fix bugs?** | **yes** |
-## <a name="features"></a>Features
-## <a name="bugs"></a>Bugs resolved
+## <a name="features"></a>Features
### Core CiviCRM
-- **dev/core#4780 handle bounce processing when verp unverified ([28192](https://github.com/civicrm/civicrm-core/pull/28192))**
+- **Allow blank message templates
+ ([27806](https://github.com/civicrm/civicrm-core/pull/27806))**
-- **SearchKit - Fix missing label on group concat distinct dropdown ([28187](https://github.com/civicrm/civicrm-core/pull/28187))**
+ Makes it so one can have empty message templates.
-- **dev/core#4783 Fix ability to clone and delete Contribution Pages when AdminUI enabled ([28189](https://github.com/civicrm/civicrm-core/pull/28189))**
+- **Blank out the text version of the offline receipt template
+ ([27733](https://github.com/civicrm/civicrm-core/pull/27733) and
+ [27739](https://github.com/civicrm/civicrm-core/pull/27739))**
-- **Fix tax total not showing on thank you ([28171](https://github.com/civicrm/civicrm-core/pull/28171))**
+ Discontinues the text version of the offline event receipt. Instead of having
+ the end user enter an html and text version of the same email, the text
+ version is now autogenerated based on the html version. Adds a upgrade message
+ to warn the end user about this change.
-- **(NFC) setting-admin@1 - Fix the `@since` metadata ([28170](https://github.com/civicrm/civicrm-core/pull/28170))**
+- **Add custom field type Hidden
+ ([27235](https://github.com/civicrm/civicrm-core/pull/27235))**
-- **APIv4 - Fix index interfering with HAVING ([28137](https://github.com/civicrm/civicrm-core/pull/28137))**
+ Adds a "hidden" custom field type which can collect data on forms without
+ being seen (e.g. by storing a value from the url or set by javascript)
-- **dev/core#4778 - php notice causes civi menu to go missing ([28153](https://github.com/civicrm/civicrm-core/pull/28153))**
+- **QuickSearch - Add Current Employer option
+ ([27766](https://github.com/civicrm/civicrm-core/pull/27766))**
-- **dev/core#4740 - Fix missing tagsets when label doesn't match name ([28145](https://github.com/civicrm/civicrm-core/pull/28145))**
+ Adds a "Current Employer" search option to QuickSearch.
-- **dev/core#4769 APIv4 - Fix access to case activities for administrators ([28133](https://github.com/civicrm/civicrm-core/pull/28133))**
+- **Feature request: New contact buttons on the API 4 autocomplete widget
+ ([dev/core#4484](https://lab.civicrm.org/dev/core/-/issues/4484):
+ [27754](https://github.com/civicrm/civicrm-core/pull/27754))**
-- **Update the parameters passed to the hook_QueueTaskError ([28130](https://github.com/civicrm/civicrm-core/pull/28130))**
+ Adds the option to include create contact functionality when configuring an
+ APIv4 autocomplete widget.
-- **dev/core#4768 Fix validating contact when using checksum url ([28128](https://github.com/civicrm/civicrm-core/pull/28128))**
+- **Allow to specify API4 job entity in Edit Job form
+ ([27849](https://github.com/civicrm/civicrm-core/pull/27849))**
-- **dev/core#4773 - Fix APIv4 query regression ([28124](https://github.com/civicrm/civicrm-core/pull/28124))**
+ Changes the edit scheduled job form entity field from a magic field to a text
+ field.
-- **dev/core#4759 - Respect Autocomplete Contact Search preferences in menubar quicksearch ([28121](https://github.com/civicrm/civicrm-core/pull/28121))**
+- **🔡 SearchKit, add case-sensitive pattern matching search operators using
+ REGEXP BINARY and NOT REGEXP BINARY
+ ([27511](https://github.com/civicrm/civicrm-core/pull/27511))**
-- **APIv4 - Fix missing tag filer on Individual,Organization,Household ([28103](https://github.com/civicrm/civicrm-core/pull/28103))**
+ Makes it so one can use case-sensitive pattern matching search operators in
+ SearchKit using REGEXP BINARY and NOT REGEXP BINARY.
-- **Schedule Job fails with a fatal error if configured with an absolute date ([28113](https://github.com/civicrm/civicrm-core/pull/28113))**
+- **SearchKit - Optionally remember filter values when user revisits search
+ ([27737](https://github.com/civicrm/civicrm-core/pull/27737))**
-- **Fix rc-unreleased regression - tax amount not loading ([28099](https://github.com/civicrm/civicrm-core/pull/28099))**
+ Adds a "Remember Filters" SearchKit administrator setting which when checked
+ saves end user filter values.
-- **Add weights to CRM_Mailing_BAO_Mailing::getContactMailingSelector ([28085](https://github.com/civicrm/civicrm-core/pull/28085))**
+- **SearchKit - Increase date range for in-place edit
+ ([27935](https://github.com/civicrm/civicrm-core/pull/27935))**
-- **Fix source html displaying when editing price option ([28090](https://github.com/civicrm/civicrm-core/pull/28090))**
+ Increases min/max datepicker limits in SearchKit.
-- **QuickSearch - Fix redirect to adv search with prepopulated criteria ([28072](https://github.com/civicrm/civicrm-core/pull/28072))**
+- **Expose URL for mailing trackable link for filters in FormBuilder
+ ([27723](https://github.com/civicrm/civicrm-core/pull/27723))**
-- **Ensure api/v3/utils.php required before civicrm_api3_create_error 5.68 ([28079](https://github.com/civicrm/civicrm-core/pull/28079))**
+ Improves FormBuilder by exposing the mailing trackable link url.
-- **(NFC) MenuXmlTest - Improve debug output. Use richer helpers. ([28073](https://github.com/civicrm/civicrm-core/pull/28073))**
+- **ManagedEntity - Replicate multi-domain entities when multisite is enabled
+ ([27876](https://github.com/civicrm/civicrm-core/pull/27876))**
-- **dev/core#4554 Delete related Queue when user job deleted ([28051](https://github.com/civicrm/civicrm-core/pull/28051))**
+ Makes it easier to add menu items from extensions (multisite or not).
-- **[NFC] More descriptive deprecation notice for Angular settings ([28040](https://github.com/civicrm/civicrm-core/pull/28040))**
+- **Setting Admin - Add mixin to autogenerate a settings form
+ ([27569](https://github.com/civicrm/civicrm-core/pull/27569))**
-- **dev/core#4755 - typo causes activity type to go missing on case activity edit ([28036](https://github.com/civicrm/civicrm-core/pull/28036))**
+ Makes it easier for extension developers to add a settings form to an
+ extension.
-- **SearchKit - Fix field transformation UI to handle number 0 ([28018](https://github.com/civicrm/civicrm-core/pull/28018))**
+- **Update civicrm_state_province.tpl
+ ([27784](https://github.com/civicrm/civicrm-core/pull/27784) and
+ [27799](https://github.com/civicrm/civicrm-core/pull/27799))**
-- **Add check for deprecated token in event online receipt ([28029](https://github.com/civicrm/civicrm-core/pull/28029))**
+ Updates Norwegian provinces.
-- **Fix unreleased regression - notice on undefined variable ([28010](https://github.com/civicrm/civicrm-core/pull/28010))**
+- **Add translation tags
+ ([27767](https://github.com/civicrm/civicrm-core/pull/27767))**
-- **Smarty3 - fix space breaking syntax ([28002](https://github.com/civicrm/civicrm-core/pull/28002))**
+ Adds translation tags to MessageTemplate.
-- **Fix 5.68 unreleased regression - repeattransaction fails if CiviMember not installed ([28004](https://github.com/civicrm/civicrm-core/pull/28004))**
+- **Tags - Add label field, enable tags as Managed Entities
+ ([27752](https://github.com/civicrm/civicrm-core/pull/27752))**
-- **standaloneusers: remove property type declarations to make php7.3 compat ([27992](https://github.com/civicrm/civicrm-core/pull/27992))**
+ Adds a label field to the tag entity.
-- **[REF] dev/core#4747 Fix Binary Regex by casting field to Binary ([27990](https://github.com/civicrm/civicrm-core/pull/27990))**
+- **demo data needs updating for tag changes
+ ([dev/core#4710](https://lab.civicrm.org/dev/core/-/issues/4710):
+ [27866](https://github.com/civicrm/civicrm-core/pull/27866))**
-- **Releaser - Only update core extensions for stable versions ([27922](https://github.com/civicrm/civicrm-core/pull/27922))**
+ Updates tag demo data to have labels.
-- **APIv4 - Ensure 'search_fields' defaults to 'label_field' for Entity.get ([27993](https://github.com/civicrm/civicrm-core/pull/27993))**
+- **Basic/Advanced search and CiviReport filters showing `name` in tag dropdown
+ instead of `label`
+ ([dev/core#4727](https://lab.civicrm.org/dev/core/-/issues/4727):
+ [27924](https://github.com/civicrm/civicrm-core/pull/27924))**
-- **PHP 8.x: fix TypeError in config hook ([27996](https://github.com/civicrm/civicrm-core/pull/27996))**
+ Ensures search and report filters show tag label instead of name.
-- **Fix master-only-over-aggressive escaping ([27982](https://github.com/civicrm/civicrm-core/pull/27982))**
+- **Add user_dashboard core extension (alpha)
+ ([27792](https://github.com/civicrm/civicrm-core/pull/27792))**
-- **Notice fixes on price field options ([27984](https://github.com/civicrm/civicrm-core/pull/27984))**
+ Adds a `user dashboard` extension. If you enable the new "User Dashboard"
+ extension, `civicrm/user` gives you an Afform of configurable Search Displays.
-- **Improve template handling in report ([27912](https://github.com/civicrm/civicrm-core/pull/27912))**
+- **Civi-Import change the description
+ ([dev/core#4714](https://lab.civicrm.org/dev/core/-/issues/4714):
+ [27933](https://github.com/civicrm/civicrm-core/pull/27933))**
-- **Improve Geocoding for addresses ([27977](https://github.com/civicrm/civicrm-core/pull/27977))**
+ Improves wording of the CiviImport extension description.
-- **Add label & color to CiviPetition 'Unconfirmed' tag ([27979](https://github.com/civicrm/civicrm-core/pull/27979))**
+### CiviEvent
-- **dev/core#4731 - Fix column index error in SearchKit download ([27943](https://github.com/civicrm/civicrm-core/pull/27943))**
+- **Add event.self_cancel_xfer tokens
+ ([27785](https://github.com/civicrm/civicrm-core/pull/27785))**
-- **dev/core#4727 - Tags displaying name instead of label in various places ([27924](https://github.com/civicrm/civicrm-core/pull/27924))**
+ Makes `{event.allow_selfcancelxfer}` token available (can be used as
+ `{event.allow_selfcancelxfer|boolean}`.
-- **Move participant-form-specific defaults back to participant form ([27613](https://github.com/civicrm/civicrm-core/pull/27613))**
+- **SearchKit - Add Event.remaining_participants calculated field
+ ([27839](https://github.com/civicrm/civicrm-core/pull/27839))**
-- **5.67 ([27987](https://github.com/civicrm/civicrm-core/pull/27987))**
+ Adds calculated field `Event.remaining_participants` to SearchKit.
-- **CRM_Campaign_BAO_Petition::confirmSignature: call pre/post hooks ([27978](https://github.com/civicrm/civicrm-core/pull/27978))**
+### CiviMail
-- **Afform - Quick add links for Autocomplete fields ([27754](https://github.com/civicrm/civicrm-core/pull/27754))**
+- **CiviMail - Speed up generation of VERP URLs
+ ([27652](https://github.com/civicrm/civicrm-core/pull/27652))**
-- **Standardise deprecations ([27976](https://github.com/civicrm/civicrm-core/pull/27976))**
+ Performance improvement when generating VERP urls.
-- **CiviMail - Update path metadata ([27962](https://github.com/civicrm/civicrm-core/pull/27962))**
+### CiviPetition
-- **CustomGroup - Allow increasing max_multiple ([27916](https://github.com/civicrm/civicrm-core/pull/27916))**
+- **Add label & color to CiviPetition 'Unconfirmed' tag
+ ([27979](https://github.com/civicrm/civicrm-core/pull/27979))**
-- **Fix offline contribution page handling of money fields ([27952](https://github.com/civicrm/civicrm-core/pull/27952))**
+ Adds translation and color to CiviPetition 'Unconfirmed' tag.
-- **Suppress pay now on user dashboard if none configured ([27954](https://github.com/civicrm/civicrm-core/pull/27954))**
+- **CRM_Campaign_BAO_Petition::confirmSignature: call pre/post hooks
+ ([27978](https://github.com/civicrm/civicrm-core/pull/27978))**
-- **Move the locale default getting from the money() function to the getFormatter function ([27970](https://github.com/civicrm/civicrm-core/pull/27970))**
+ Makes it so extension developers can hook into the `confirmSignature` process.
-- **Fix Smarty3 support & Smarty-any notices in pledge search/dashboard ([27963](https://github.com/civicrm/civicrm-core/pull/27963))**
+### Joomla Integration
-- **5.67 ([27972](https://github.com/civicrm/civicrm-core/pull/27972))**
+- **Remove sidebar (at least for Joomla 4)
+ ([dev/joomla#45](https://lab.civicrm.org/dev/joomla/-/issues/45):
+ [27252](https://github.com/civicrm/civicrm-core/pull/27252))**
-- **fixes core#4724 - on behalf of addresses crash with missing state/province ([27896](https://github.com/civicrm/civicrm-core/pull/27896))**
+ Makes the Joomla sidebar default to closed.
-- **dev/core#4730 - Case tagsets showing name instead of label ([27968](https://github.com/civicrm/civicrm-core/pull/27968))**
+## <a name="bugs"></a>Bugs resolved
-- **E_WARNING for "file" on civicontribute component settings ([27969](https://github.com/civicrm/civicrm-core/pull/27969))**
+### Core CiviCRM
-- **Update the list of required extensions to install during test db populate ([27961](https://github.com/civicrm/civicrm-core/pull/27961))**
+- **Number field input validation does not respect decimal separator setting
+ ([dev/core#4154](https://lab.civicrm.org/dev/core/-/issues/4154):
+ [27958](https://github.com/civicrm/civicrm-core/pull/27958) and
+ [27917](https://github.com/civicrm/civicrm-core/pull/27917))**
-- **Further fixes to ContributionPageTest ([27948](https://github.com/civicrm/civicrm-core/pull/27948))**
+ Fixes locale-formatted number custom field inputs.
-- **Fix dev/core#4737 - APIv4 getFields crashes with no tags ([27966](https://github.com/civicrm/civicrm-core/pull/27966))**
+- **Afform: Adding forms to menu is not compatible with Customize Navigation
+ Menu (Work Towards
+ [dev/core#4364](https://lab.civicrm.org/dev/core/-/issues/4364):
+ [27832](https://github.com/civicrm/civicrm-core/pull/27832) and
+ [27814](https://github.com/civicrm/civicrm-core/pull/27814))**
-- **dev/core#4736 - fix on-the-fly popup ([27960](https://github.com/civicrm/civicrm-core/pull/27960))**
+ Ensure navigation menu weights don't reset weights when updating a managed
+ entity.
-- **Provide utility methods for creating an iCal file ([26980](https://github.com/civicrm/civicrm-core/pull/26980))**
+- **Searchkit column styles and icons not working properly with all conditionals
+ for custom fields
+ ([dev/core#4638](https://lab.civicrm.org/dev/core/-/issues/4638):
+ [27863](https://github.com/civicrm/civicrm-core/pull/27863))**
-- **Switch templates to use correctly named variable ([27498](https://github.com/civicrm/civicrm-core/pull/27498))**
+- **Custom Field display code assumes option values are numeric
+ ([dev/core#4709](https://lab.civicrm.org/dev/core/-/issues/4709):
+ [27865](https://github.com/civicrm/civicrm-core/pull/27865))**
-- **Switch all participant token listing to TokenProcessor, add deprecation ([27543](https://github.com/civicrm/civicrm-core/pull/27543))**
+- **Menu missing - error in console
+ ([dev/core#4729](https://lab.civicrm.org/dev/core/-/issues/4729):
+ [27921](https://github.com/civicrm/civicrm-core/pull/27921))and
+ [dev/core#4778](https://lab.civicrm.org/dev/core/-/issues/4778):
+ [28153](https://github.com/civicrm/civicrm-core/pull/28153))**
-- **Fix online contribution form Confirm page to get text from processor ([27848](https://github.com/civicrm/civicrm-core/pull/27848))**
+- **SearchKit/Form Builder: re-positioning menu links column in table display
+ breaks csv download
+ ([dev/core#4731](https://lab.civicrm.org/dev/core/-/issues/4731):
+ [27943](https://github.com/civicrm/civicrm-core/pull/27943))**
-- **Stop weird action override on confirm form ([27891](https://github.com/civicrm/civicrm-core/pull/27891))**
+- **New individual popup to create one on-the-fly is popping up the cms user
+ account creation form not the usual profile popup
+ ([dev/core#4736](https://lab.civicrm.org/dev/core/-/issues/4736):
+ [27960](https://github.com/civicrm/civicrm-core/pull/27960))**
-- **dev/core#4154 Fix locale-formatted number custom field inputs (case activities) ([27958](https://github.com/civicrm/civicrm-core/pull/27958))**
+- **Activity.getFields crashes
+ ([dev/core#4737](https://lab.civicrm.org/dev/core/-/issues/4737):
+ [27966](https://github.com/civicrm/civicrm-core/pull/27966))**
-- **Add @deprecated annotation to CRM_Utils_Array::value ([27959](https://github.com/civicrm/civicrm-core/pull/27959))**
+ APIv4 getFields crashes with no tags.
-- **Minor clean up in test class, add initial ContributionFormTrait ([27947](https://github.com/civicrm/civicrm-core/pull/27947))**
+- **Ability to assign a tagset tag to a contact has gone missing if label is
+ different from name
+ ([dev/core#4740](https://lab.civicrm.org/dev/core/-/issues/4740):
+ [28145](https://github.com/civicrm/civicrm-core/pull/28145))**
-- **Remove test call to PaypalPro sandbox from tests ([27953](https://github.com/civicrm/civicrm-core/pull/27953))**
+- **Activity type label has gone missing when editing case activity
+ ([dev/core#4755](https://lab.civicrm.org/dev/core/-/issues/4755):
+ [28036](https://github.com/civicrm/civicrm-core/pull/28036))**
-- **dev/core#4154 Fix locale-formatted number custom field inputs ([27917](https://github.com/civicrm/civicrm-core/pull/27917))**
+- **Search Preferences -> Autocomplete Contact Search selections not respected
+ ([dev/core#4759](https://lab.civicrm.org/dev/core/-/issues/4759):
+ [28121](https://github.com/civicrm/civicrm-core/pull/28121))**
-- **5.67 to master ([27957](https://github.com/civicrm/civicrm-core/pull/27957))**
+ Ensures "Autocomplete Contact Search" preferences are respected in menubar
+ quicksearch.
-- **Smarty3 & php8.x fixes on New Contact (organization) ([27951](https://github.com/civicrm/civicrm-core/pull/27951))**
+- **ACL revamp causes crashes on many SearchKit queries in 5.67
+ ([dev/core#4773](https://lab.civicrm.org/dev/core/-/issues/4773):
+ [28124](https://github.com/civicrm/civicrm-core/pull/28124))**
-- **Fix master-only regression on price fields not loading ([27946](https://github.com/civicrm/civicrm-core/pull/27946))**
+- **SearchKit - Fix field transformation UI to handle number 0
+ ([28018](https://github.com/civicrm/civicrm-core/pull/28018))**
-- **5.67 to master ([27956](https://github.com/civicrm/civicrm-core/pull/27956))**
+- **SearchKit - Fix missing label on group concat distinct dropdown
+ ([28187](https://github.com/civicrm/civicrm-core/pull/28187))**
-- **[REF] Remove domain references from managed entities ([27915](https://github.com/civicrm/civicrm-core/pull/27915))**
+- **APIv4 - Prevent fatal errors when getOptions returns an empty array
+ ([27793](https://github.com/civicrm/civicrm-core/pull/27793))**
-- **CRM_Core_DAO::copyValues() deduplicate pseudo-constant fields ([27762](https://github.com/civicrm/civicrm-core/pull/27762))**
+- **APIv4 - Allow is_active field to default to '0'
+ ([27853](https://github.com/civicrm/civicrm-core/pull/27853))**
-- **APIv4 - Smarter matching params in Managed export action ([27942](https://github.com/civicrm/civicrm-core/pull/27942))**
+- **APIv4 - Fix index interfering with HAVING
+ ([28137](https://github.com/civicrm/civicrm-core/pull/28137))**
-- **[REF] Civi - Refactor unnecessary uses of CRM_Utils_Array::value ([27895](https://github.com/civicrm/civicrm-core/pull/27895))**
+- **APIv4 - Fix missing tag filer on Individual,Organization,Household
+ ([28103](https://github.com/civicrm/civicrm-core/pull/28103))**
-- **Use purify over escape for price set fields ([27938](https://github.com/civicrm/civicrm-core/pull/27938))**
+- **APIv4 - Ensure 'search_fields' defaults to 'label_field' for Entity.get
+ ([27993](https://github.com/civicrm/civicrm-core/pull/27993))**
-- **karma.conf.js - Switch from PhantomJS to ChromeHeadless ([27941](https://github.com/civicrm/civicrm-core/pull/27941))**
+- **APIv4 - Smarter matching params in Managed export action
+ ([27942](https://github.com/civicrm/civicrm-core/pull/27942))**
-- **SearchKit - Increase date range for in-place edit ([27935](https://github.com/civicrm/civicrm-core/pull/27935))**
+ Does a better job of setting the match param when exporting managed
+ entities.
-- **5.67 to master ([27940](https://github.com/civicrm/civicrm-core/pull/27940))**
+- **Afform - Remove redundant status checks
+ ([27927](https://github.com/civicrm/civicrm-core/pull/27927))**
-- **dev/core#4714 Improved wording of CiviImport extension description ([27933](https://github.com/civicrm/civicrm-core/pull/27933))**
+- **Afform - Improve error handling during form submission
+ ([27899](https://github.com/civicrm/civicrm-core/pull/27899))**
-- **Move pledge block function back to the only form that calls it ([27936](https://github.com/civicrm/civicrm-core/pull/27936))**
+- **Afform - Add default values to metadata
+ ([27861](https://github.com/civicrm/civicrm-core/pull/27861))**
-- **Fix test on secondary membership contribution to use full form flow ([27928](https://github.com/civicrm/civicrm-core/pull/27928))**
+- **Update the parameters passed to the hook_QueueTaskError
+ ([28130](https://github.com/civicrm/civicrm-core/pull/28130))**
-- **5.67 ([27937](https://github.com/civicrm/civicrm-core/pull/27937))**
+- **Ensure api/v3/utils.php required before civicrm_api3_create_error 5.68
+ ([28079](https://github.com/civicrm/civicrm-core/pull/28079))**
-- **Afform - Improve error handling during form submission ([27899](https://github.com/civicrm/civicrm-core/pull/27899))**
+- **Releaser - Only update core extensions for stable versions
+ ([27922](https://github.com/civicrm/civicrm-core/pull/27922))**
-- **Make function private,non static, after universe search ([27929](https://github.com/civicrm/civicrm-core/pull/27929))**
+- **Improve template handling in report
+ ([27912](https://github.com/civicrm/civicrm-core/pull/27912))**
-- **Fix master-only regression on auto_renew ([27920](https://github.com/civicrm/civicrm-core/pull/27920))**
+ xss bug fix.
-- **Afform - Remove redundant status checks ([27927](https://github.com/civicrm/civicrm-core/pull/27927))**
+- **CustomGroup - Allow increasing max_multiple
+ ([27916](https://github.com/civicrm/civicrm-core/pull/27916))**
-- **Tweak money/numeric error messages to not mention point (could be a comma) ([27881](https://github.com/civicrm/civicrm-core/pull/27881))**
+ Fixes a bug in the CustomGroup form code that wouldn't allow max_mutliple to
+ be increased for multi-record custom groups.
-- **Fix use of `$form` for `$this` in previously shared, previously static function ([27925](https://github.com/civicrm/civicrm-core/pull/27925))**
+- **Switch templates to use correctly named variable
+ ([27498](https://github.com/civicrm/civicrm-core/pull/27498))**
-- **dev/core#4729 - Menu doesn't build because wrong array key ([27921](https://github.com/civicrm/civicrm-core/pull/27921))**
+- **CRM_Core_DAO::copyValues() deduplicate pseudo-constant fields
+ ([27762](https://github.com/civicrm/civicrm-core/pull/27762))**
-- **Remove always-true if ([27919](https://github.com/civicrm/civicrm-core/pull/27919))**
+- **Use purify over escape for price set fields
+ ([27938](https://github.com/civicrm/civicrm-core/pull/27938))**
-- **Core/ext - Update releaseDate when setting new version ([27914](https://github.com/civicrm/civicrm-core/pull/27914))**
+- **Tweak money/numeric error messages to not mention point (could be a comma)
+ ([27881](https://github.com/civicrm/civicrm-core/pull/27881))**
-- **ManagedEntity - Replicate multi-domain entities when multisite is enabled ([27876](https://github.com/civicrm/civicrm-core/pull/27876))**
+- **Remove discussion about format from html box on email form
+ ([27734](https://github.com/civicrm/civicrm-core/pull/27734))**
-- **fixes core#2929: Don't crash a contribution because of a geocoding failure ([27897](https://github.com/civicrm/civicrm-core/pull/27897))**
+- **CRM_Core_BAO_Domain - Deprecate unused functions
+ ([27875](https://github.com/civicrm/civicrm-core/pull/27875))**
-- **event title xss fix ([27911](https://github.com/civicrm/civicrm-core/pull/27911))**
+- **SearchUI - Move 'Experimental' menu from top level to underneath 'Search'
+ ([27871](https://github.com/civicrm/civicrm-core/pull/27871))**
-- **5.67 ([27908](https://github.com/civicrm/civicrm-core/pull/27908))**
+- **Make civicrm_acl.is_active required and default=1
+ ([27846](https://github.com/civicrm/civicrm-core/pull/27846))**
-- **Use api to get price set metadata - Online Contribution Page ([27902](https://github.com/civicrm/civicrm-core/pull/27902))**
+- **ManagedEntities - Recreate deleted records at discretion of update policy
+ ([27844](https://github.com/civicrm/civicrm-core/pull/27844))**
-- **Remove non-variable variables from previously-shared code ([27905](https://github.com/civicrm/civicrm-core/pull/27905))**
+- **Remove es6 polyfill
+ ([27648](https://github.com/civicrm/civicrm-core/pull/27648))**
-- **Remove unreachable code from previously shared function ([27906](https://github.com/civicrm/civicrm-core/pull/27906))**
+- **Move assigning customGroup to offline participant template out of the form
+ layer ([27596](https://github.com/civicrm/civicrm-core/pull/27596))**
-- **Minor variable consolidation, reduce notices ([27901](https://github.com/civicrm/civicrm-core/pull/27901))**
+- **Searchdisplay issue with contact join activity and _ on the end of custom
+ field ([27666](https://github.com/civicrm/civicrm-core/pull/27666))**
-- **Stop assigning ispricelifetime - used in previously shared usage ([27890](https://github.com/civicrm/civicrm-core/pull/27890))**
+- **Email attachments with unicode filename get munged
+ ([dev/core#4700](https://lab.civicrm.org/dev/core/-/issues/4700):
+ [27791](https://github.com/civicrm/civicrm-core/pull/27791))**
-- **Fix MainTest to test form metadata function, not old unused function ([27900](https://github.com/civicrm/civicrm-core/pull/27900))**
+- **Update smarty localize for Smarty3
+ ([27776](https://github.com/civicrm/civicrm-core/pull/27776))**
-- **[REF] Apiv3 - Refactor unnecessary uses of CRM_Utils_Array::value ([27898](https://github.com/civicrm/civicrm-core/pull/27898))**
+- **Trim text emails when checking if empty
+ ([27738](https://github.com/civicrm/civicrm-core/pull/27738))**
-- **[REF] CRM/Report - Refactor unnecessary uses of CRM_Utils_Array::value ([27816](https://github.com/civicrm/civicrm-core/pull/27816))**
+- **Clarify access of `buildComponentForm`
+ ([27845](https://github.com/civicrm/civicrm-core/pull/27845))**
-- **Report notice fix - batch id ([27885](https://github.com/civicrm/civicrm-core/pull/27885))**
+- **Managed - Minor schema fixes
+ ([27835](https://github.com/civicrm/civicrm-core/pull/27835))**
-- **Extract addOnBehalfFields, ensure variables always assigned ([27851](https://github.com/civicrm/civicrm-core/pull/27851))**
+- **Stop weird action override on confirm form
+ ([27891](https://github.com/civicrm/civicrm-core/pull/27891))**
-- **Fix dev/core#4638 - SearchKit conditional option matching fix ([27863](https://github.com/civicrm/civicrm-core/pull/27863))**
+- **Suppress pay now on user dashboard if none configured
+ ([27954](https://github.com/civicrm/civicrm-core/pull/27954))**
-- **Unshare form function ([27892](https://github.com/civicrm/civicrm-core/pull/27892))**
+- **Fix use of `$form` for `$this` in previously shared, previously static
+ function ([27925](https://github.com/civicrm/civicrm-core/pull/27925))**
-- **Fix Contribution MainTest to set payment processor properties better ([27893](https://github.com/civicrm/civicrm-core/pull/27893))**
+- **Schedule Job fails with a fatal error if configured with an absolute date
+ ([28113](https://github.com/civicrm/civicrm-core/pull/28113))**
-- **Standardise price field metadata on Main contribution page ([27889](https://github.com/civicrm/civicrm-core/pull/27889))**
+- **standaloneusers: remove property type declarations to make php7.3 compat
+ ([27992](https://github.com/civicrm/civicrm-core/pull/27992))**
-- **Declare strict types in CiviUnitTestCase ([26002](https://github.com/civicrm/civicrm-core/pull/26002))**
+- **QuickSearch - Fix redirect to adv search with prepopulated criteria
+ ([28072](https://github.com/civicrm/civicrm-core/pull/28072))**
-- **PHP8.2 undefined property fix event summary report ([27888](https://github.com/civicrm/civicrm-core/pull/27888))**
+- **Fix Smarty3 support & Smarty-any notices in pledge search/dashboard
+ ([27963](https://github.com/civicrm/civicrm-core/pull/27963))**
-- **Preliminary cleanup - remove function overrides that do not override ([27886](https://github.com/civicrm/civicrm-core/pull/27886))**
+- **Smarty3 & php8.x fixes on New Contact (organization)
+ ([27951](https://github.com/civicrm/civicrm-core/pull/27951))**
-- **[REF] Unshared processRecurringContribution ([27850](https://github.com/civicrm/civicrm-core/pull/27850))**
+- **Smarty3 compatibilty with Contribution Amount tab
+ ([27782](https://github.com/civicrm/civicrm-core/pull/27782))**
-- **Remove one more ref to undefined property `contributeMode` ([27884](https://github.com/civicrm/civicrm-core/pull/27884))**
+- **Standalone Smarty3 support
+ ([27778](https://github.com/civicrm/civicrm-core/pull/27778))**
-- **Php 8.2 notice fix on soft credit report ([27887](https://github.com/civicrm/civicrm-core/pull/27887))**
+- **Smarty3 - fix space breaking syntax
+ ([28002](https://github.com/civicrm/civicrm-core/pull/28002))**
-- **Remove discussion about format from html box on email form ([27734](https://github.com/civicrm/civicrm-core/pull/27734))**
+- **PHP 8.x: fix TypeError in config hook
+ ([27996](https://github.com/civicrm/civicrm-core/pull/27996))**
-- **5.67 to master ([27882](https://github.com/civicrm/civicrm-core/pull/27882))**
+- **Php 8.2 notice fix on soft credit report
+ ([27887](https://github.com/civicrm/civicrm-core/pull/27887))**
-- **fixes core#4709: type error in custom field display ([27865](https://github.com/civicrm/civicrm-core/pull/27865))**
+- **do not show disabled financial types in select for manage events
+ ([23299](https://github.com/civicrm/civicrm-core/pull/23299))**
-- **Case Activity: use select2 for Medium field ([27879](https://github.com/civicrm/civicrm-core/pull/27879))**
+- **Replace smarty.get with assigned snippet_type in tpl
+ ([27674](https://github.com/civicrm/civicrm-core/pull/27674))**
-- **5.67 ([27880](https://github.com/civicrm/civicrm-core/pull/27880))**
+- **Minor variable consolidation, reduce notices
+ ([27901](https://github.com/civicrm/civicrm-core/pull/27901))**
-- **CRM_Core_BAO_Domain - Deprecate unused functions ([27875](https://github.com/civicrm/civicrm-core/pull/27875))**
+- **Stop assigning ispricelifetime - used in previously shared usage
+ ([27890](https://github.com/civicrm/civicrm-core/pull/27890))**
-- **SearchUI - Move 'Experimental' menu from top level to underneath 'Search' ([27871](https://github.com/civicrm/civicrm-core/pull/27871))**
+- **Report notice fix - batch id
+ ([27885](https://github.com/civicrm/civicrm-core/pull/27885))**
-- **5.67 ([27870](https://github.com/civicrm/civicrm-core/pull/27870))**
+- **Switch to a token for billingName & address
+ ([27692](https://github.com/civicrm/civicrm-core/pull/27692))**
-- **dev/core#4704 Display 'registration is closed' only if users can register ([27873](https://github.com/civicrm/civicrm-core/pull/27873))**
+- **Extract addOnBehalfFields, ensure variables always assigned
+ ([27851](https://github.com/civicrm/civicrm-core/pull/27851))**
-- **(REF) MailSettings - Provide setup URL's through BAO (towards dev/core#4674) ([27869](https://github.com/civicrm/civicrm-core/pull/27869))**
+- **Fix tax total not showing on thank you
+ ([28171](https://github.com/civicrm/civicrm-core/pull/28171))**
-- **Afform - Add default values to metadata ([27861](https://github.com/civicrm/civicrm-core/pull/27861))**
+- **Fix notice on New Pledge form
+ ([27773](https://github.com/civicrm/civicrm-core/pull/27773))**
-- **dev/core#4710 - Regenerate `civicrm_generated.mysql` ([27866](https://github.com/civicrm/civicrm-core/pull/27866))**
+### CiviCase
-- **APIv4 - Add helper function and type hints ([27864](https://github.com/civicrm/civicrm-core/pull/27864))**
+- **Regression - CiviCase and CiviCRM 5.67.0 - Unable to load any Activities
+ ([dev/core#4769](https://lab.civicrm.org/dev/core/-/issues/4769):
+ [28133](https://github.com/civicrm/civicrm-core/pull/28133))**
-- **5.67 to master ([27867](https://github.com/civicrm/civicrm-core/pull/27867))**
+- **Case tagsets showing name not label
+ ([dev/core#4730](https://lab.civicrm.org/dev/core/-/issues/4730):
+ [27968](https://github.com/civicrm/civicrm-core/pull/27968))**
-- **Fix unreleased regression on premium block, notices ([27852](https://github.com/civicrm/civicrm-core/pull/27852))**
+- **Case Activity: use select2 for Medium field
+ ([27879](https://github.com/civicrm/civicrm-core/pull/27879))**
-- **(NFC) phpunit.xml.dist - Drop stale reference to old suite ([27859](https://github.com/civicrm/civicrm-core/pull/27859))**
+### CiviContribute
-- **Angular - Always load CiviMail modules if component is enabled ([27857](https://github.com/civicrm/civicrm-core/pull/27857))**
+- **Contribution fails mid-donation with geocoding, "on behalf of", and no
+ state/province
+ ([dev/core#4724](https://lab.civicrm.org/dev/core/-/issues/4724):
+ [27896](https://github.com/civicrm/civicrm-core/pull/27896))**
-- **APIv4 - Allow is_active field to default to '0' ([27853](https://github.com/civicrm/civicrm-core/pull/27853))**
+- **Geocoding failures kill contributions
+ ([dev/core#2929](https://lab.civicrm.org/dev/core/-/issues/2929):
+ [27897](https://github.com/civicrm/civicrm-core/pull/27897) and
+ [27977](https://github.com/civicrm/civicrm-core/pull/27977))**
-- **[REF] ParticipantStatusType - Switch to writeRecord ([27855](https://github.com/civicrm/civicrm-core/pull/27855))**
+- **Supporter Profile is a required field
+ ([dev/core#4488](https://lab.civicrm.org/dev/core/-/issues/4488):
+ [27059](https://github.com/civicrm/civicrm-core/pull/27059))**
-- **Allow to specify API4 job entity in Edit Job form ([27849](https://github.com/civicrm/civicrm-core/pull/27849))**
+ Ensures when editing contribution pages, if you click on the personal campaign
+ tab and save (without changes) you get a warning about supporter profile being
+ required field.
-- **Make civicrm_acl.is_active required and default=1 ([27846](https://github.com/civicrm/civicrm-core/pull/27846))**
+- **CiviCRM core exception when trying to import contributions
+ ([dev/core#4554](https://lab.civicrm.org/dev/core/-/issues/4554):
+ [28051](https://github.com/civicrm/civicrm-core/pull/28051))**
-- **[REF] Extract add soft credit fields ([27847](https://github.com/civicrm/civicrm-core/pull/27847))**
+- **Clone/ copy contribution page doesn't work when admin UI is enabled
+ ([dev/core#4783](https://lab.civicrm.org/dev/core/-/issues/4783):
+ [28189](https://github.com/civicrm/civicrm-core/pull/28189))**
-- **ManagedEntities - Recreate deleted records at discretion of update policy ([27844](https://github.com/civicrm/civicrm-core/pull/27844))**
+- **E_WARNING for "file" on civicontribute component settings
+ ([27969](https://github.com/civicrm/civicrm-core/pull/27969))**
-- **Clarify access of `buildComponentForm` ([27845](https://github.com/civicrm/civicrm-core/pull/27845))**
+- **Notice fixes on price field options
+ ([27984](https://github.com/civicrm/civicrm-core/pull/27984))**
-- **[REF] ManagedEntities - Remove unused function ([27843](https://github.com/civicrm/civicrm-core/pull/27843))**
+- **Php8.x fixes on Main online contribution page
+ ([27836](https://github.com/civicrm/civicrm-core/pull/27836))**
-- **[REF] CRM/Contribute - Refactor unnecessary uses of CRM_Utils_Array::value ([27820](https://github.com/civicrm/civicrm-core/pull/27820))**
+- **php8.2 fix undeclared properties on backoffice contribution form
+ ([27829](https://github.com/civicrm/civicrm-core/pull/27829))**
-- **Managed - Minor schema fixes ([27835](https://github.com/civicrm/civicrm-core/pull/27835))**
+- **Fix message within exception (PayPalIPN)
+ ([27759](https://github.com/civicrm/civicrm-core/pull/27759))**
-- **Fix recursive display of payment_reminders ([27774](https://github.com/civicrm/civicrm-core/pull/27774))**
+- **Fix source html displaying when editing price option
+ ([28090](https://github.com/civicrm/civicrm-core/pull/28090))**
-- **dev/core#4488 Fix PCP validation error on Contribution Pages & Events ([27059](https://github.com/civicrm/civicrm-core/pull/27059))**
+- **Remove one more ref to undefined property `contributeMode`
+ ([27884](https://github.com/civicrm/civicrm-core/pull/27884))**
-- **[REF] Repeating entity form code cleanup ([27328](https://github.com/civicrm/civicrm-core/pull/27328))**
+- **Fix online contribution form Confirm page to get text from processor
+ ([27848](https://github.com/civicrm/civicrm-core/pull/27848))**
-- **Removes Joomla Sidebar ([27252](https://github.com/civicrm/civicrm-core/pull/27252))**
+- **Fix offline contribution page handling of money fields
+ ([27952](https://github.com/civicrm/civicrm-core/pull/27952))**
-- **Add custom field type Hidden ([27235](https://github.com/civicrm/civicrm-core/pull/27235))**
+- **Fix recursive display of payment_reminders
+ ([27774](https://github.com/civicrm/civicrm-core/pull/27774))**
-- **Setting Admin - Add mixin to autogenerate a settings form ([27569](https://github.com/civicrm/civicrm-core/pull/27569))**
+- **Use api to get price set metadata - Online Contribution Page
+ ([27902](https://github.com/civicrm/civicrm-core/pull/27902))**
-- **Remove es6 polyfill ([27648](https://github.com/civicrm/civicrm-core/pull/27648))**
+- **Standardise price field metadata on Main contribution page
+ ([27889](https://github.com/civicrm/civicrm-core/pull/27889))**
-- **Tags - Add label field, enable tags as Managed Entities ([27752](https://github.com/civicrm/civicrm-core/pull/27752))**
+- **Move financial acl check on Main contribution page to the financial acl
+ extension ([27797](https://github.com/civicrm/civicrm-core/pull/27797))**
-- **[REF] CRM_Core_Pseudoconstant - Cleanup static arrays & functions ([27840](https://github.com/civicrm/civicrm-core/pull/27840))**
+- **Add ContributionFormTrait
+ ([27801](https://github.com/civicrm/civicrm-core/pull/27801))**
-- **[REF] CRM/Campaign - Refactor unnecessary uses of CRM_Utils_Array::value ([27822](https://github.com/civicrm/civicrm-core/pull/27822))**
+### CiviEvent
-- **[REF] CRM/Admin - Refactor unnecessary uses of CRM_Utils_Array::value ([27823](https://github.com/civicrm/civicrm-core/pull/27823))**
+- **Event Info displays "registration is closed", but it requires login
+ ([dev/core#4704](https://lab.civicrm.org/dev/core/-/issues/4704):
+ [27873](https://github.com/civicrm/civicrm-core/pull/27873))**
-- **SearchKit - Add Event.remaining_participants calculated field ([27839](https://github.com/civicrm/civicrm-core/pull/27839))**
+ Display 'registration is closed' only if users can register.
-- **Php8.x fixes on Main online contribution page ([27836](https://github.com/civicrm/civicrm-core/pull/27836))**
+- **Event self-service transfer always gives "You do not have sufficient
+ permission"([dev/core#4768](https://lab.civicrm.org/dev/core/-/issues/4768):
+ [28128](https://github.com/civicrm/civicrm-core/pull/28128))**
-- **[REF] CRM_Event_PseudoConstant - Cleanup redundant caching ([27838](https://github.com/civicrm/civicrm-core/pull/27838))**
+- **PHP8.2 undefined property fix event summary report
+ ([27888](https://github.com/civicrm/civicrm-core/pull/27888))**
-- **[REF] CRM/Event - Refactor unnecessary uses of CRM_Utils_Array::value ([27821](https://github.com/civicrm/civicrm-core/pull/27821))**
+- **Add check for deprecated token in event online receipt
+ ([28029](https://github.com/civicrm/civicrm-core/pull/28029))**
-- **[REF] AngularManager - Skip extra lookups. Document function. ([27807](https://github.com/civicrm/civicrm-core/pull/27807))**
+- **Move participant-form-specific defaults back to participant form
+ ([27613](https://github.com/civicrm/civicrm-core/pull/27613))**
-- **[REF] AfformScanner - Update code comments & type hints ([27808](https://github.com/civicrm/civicrm-core/pull/27808))**
+- **Switch all participant token listing to TokenProcessor, add deprecation
+ ([27543](https://github.com/civicrm/civicrm-core/pull/27543))**
-- **Participant - Translate untranslated string ([27837](https://github.com/civicrm/civicrm-core/pull/27837))**
+- **event title xss fix
+ ([27911](https://github.com/civicrm/civicrm-core/pull/27911))**
-- **Smarty3 Clean up test class - remove ref to internal tplParams ([27775](https://github.com/civicrm/civicrm-core/pull/27775))**
+- **Participant - Translate untranslated string
+ ([27837](https://github.com/civicrm/civicrm-core/pull/27837))**
-- **[REF] CRM/Price - Refactor unnecessary uses of CRM_Utils_Array::value ([27824](https://github.com/civicrm/civicrm-core/pull/27824))**
+- **Fix notice (smarty) in Event fee tab
+ ([27743](https://github.com/civicrm/civicrm-core/pull/27743))**
-- **php8.2 fix undeclared properties on backoffice contribution form ([27829](https://github.com/civicrm/civicrm-core/pull/27829))**
+### CiviMail
-- **[REF] CRM/Utils - Refactor unnecessary uses of CRM_Utils_Array::value ([27819](https://github.com/civicrm/civicrm-core/pull/27819))**
+- **when processing bounce emails, don't exit on fatal error if verp unverified
+ ([dev/core#4780](https://lab.civicrm.org/dev/core/-/issues/4780):
+ [28192](https://github.com/civicrm/civicrm-core/pull/28192))**
-- **[REF] CRM/Core - Refactor unnecessary uses of CRM_Utils_Array::value ([27817](https://github.com/civicrm/civicrm-core/pull/27817))**
+- **CiviMail - Update path metadata
+ ([27962](https://github.com/civicrm/civicrm-core/pull/27962))**
-- **[REF] CRM/Activity - Refactor unnecessary uses of CRM_Utils_Array::value ([27825](https://github.com/civicrm/civicrm-core/pull/27825))**
+- **Angular - Always load CiviMail modules if component is enabled
+ ([27857](https://github.com/civicrm/civicrm-core/pull/27857))**
-- **dev/core#4364 - Don't reset weights when updating managed entity ([27814](https://github.com/civicrm/civicrm-core/pull/27814))**
+- **Add weights to CRM_Mailing_BAO_Mailing::getContactMailingSelector
+ ([28085](https://github.com/civicrm/civicrm-core/pull/28085))**
-- **CRM_Utils_Array::value - remove "todo" which we don't actually want to do ([27812](https://github.com/civicrm/civicrm-core/pull/27812))**
+### Drupal Integration
-- **dev/core#4364 Use writeRecord for Navigations so menu changes for managed entities don't reset ([27832](https://github.com/civicrm/civicrm-core/pull/27832))**
+- **Deprecated function: Optional parameter $from declared before required
+ parameter $element
+ ([dev/core#4695](https://lab.civicrm.org/dev/core/-/issues/4695):
+ [675](https://github.com/civicrm/civicrm-drupal/pull/675))**
-- **Stop calling `CRM_Contribute_Form_Contribution::testSubmit()`, quiet deprecation ([27811](https://github.com/civicrm/civicrm-core/pull/27811))**
+- **Fix Deprecated string interpolation issue in civicrm.module
+ ([674](https://github.com/civicrm/civicrm-drupal/pull/674))**
-- **[REF] CRM/Contact - Refactor unnecessary uses of CRM_Utils_Array::value ([27818](https://github.com/civicrm/civicrm-core/pull/27818))**
+## <a name="misc"></a>Miscellany
-- **Remove no-longer-used parameters from function signature ([27831](https://github.com/civicrm/civicrm-core/pull/27831))**
+- **Tag `getSubmittedValue()` as externally supported
+ ([27786](https://github.com/civicrm/civicrm-core/pull/27786))**
-- **Move assigning customGroup to offline participant template out of the form layer ([27596](https://github.com/civicrm/civicrm-core/pull/27596))**
+- **Extend normal form for delete action
+ ([27745](https://github.com/civicrm/civicrm-core/pull/27745))**
-- **SearchKit - Optionally remember filter values when user revisits sear… ([27737](https://github.com/civicrm/civicrm-core/pull/27737))**
+- **Core/ext - Update releaseDate when setting new version
+ ([27914](https://github.com/civicrm/civicrm-core/pull/27914))**
-- **Document and test unique behavior of CRM_Utils_Array::value() ([27830](https://github.com/civicrm/civicrm-core/pull/27830))**
+- **Make function private, non static, after universe search
+ ([27929](https://github.com/civicrm/civicrm-core/pull/27929))**
-- **do not show disabled financial types in select for manage events ([23299](https://github.com/civicrm/civicrm-core/pull/23299))**
+- **Move pledge block function back to the only form that calls it
+ ([27936](https://github.com/civicrm/civicrm-core/pull/27936))**
-- **Searchdisplay issue with contact join activity and _ on the end of custom field ([27666](https://github.com/civicrm/civicrm-core/pull/27666))**
+- **karma.conf.js - Switch from PhantomJS to ChromeHeadless
+ ([27941](https://github.com/civicrm/civicrm-core/pull/27941))**
-- **Smarty3 compatibilty with Contribution Amount tab ([27782](https://github.com/civicrm/civicrm-core/pull/27782))**
+- **Move the locale default getting from the money() function to the
+ getFormatter function
+ ([27970](https://github.com/civicrm/civicrm-core/pull/27970))**
-- **Remove irrelevant code from previously shared form ([27787](https://github.com/civicrm/civicrm-core/pull/27787))**
+- **Provide utility methods for creating an iCal file
+ ([26980](https://github.com/civicrm/civicrm-core/pull/26980))**
-- **[REF] CRM/Mailing - Refactor unnecessary uses of CRM_Utils_Array::value ([27826](https://github.com/civicrm/civicrm-core/pull/27826))**
+- **Standardise deprecations
+ ([27976](https://github.com/civicrm/civicrm-core/pull/27976))**
-- **[REF] CRM/Misc - Refactor unnecessary uses of CRM_Utils_Array::value ([27827](https://github.com/civicrm/civicrm-core/pull/27827))**
+- **Afform - Unify 'is_dashlet', 'is_token' & 'contact_summary' as 'placement'
+ ([27755](https://github.com/civicrm/civicrm-core/pull/27755))**
-- **[REF] Flexmailer - Refactor unnecessary use of CRM_Utils_Array::value ([27828](https://github.com/civicrm/civicrm-core/pull/27828))**
+- **phpstorm - Generate hints for Civi::paths(), Civi::url(),
+ CRM_Utils_System::url()
+ ([27779](https://github.com/civicrm/civicrm-core/pull/27779))**
-- **Move financial acl check on Main contribution page to the financial acl extension ([27797](https://github.com/civicrm/civicrm-core/pull/27797))**
+- **APIv4 - Add helper function and type hints
+ ([27864](https://github.com/civicrm/civicrm-core/pull/27864))**
-- **Move financial acl test to extension ([27810](https://github.com/civicrm/civicrm-core/pull/27810))**
+- **Preliminary cleanup - remove function overrides that do not override
+ ([27886](https://github.com/civicrm/civicrm-core/pull/27886))**
-- **🔡 SearchKit, add case-sensitive pattern matching search operators using REGEXP BINARY and NOT REGEXP BINARY ([27511](https://github.com/civicrm/civicrm-core/pull/27511))**
+- **Stop passing variable no longer in signature
+ ([27765](https://github.com/civicrm/civicrm-core/pull/27765))**
-- **[NFC] Cleanup array syntax in tests directory ([27809](https://github.com/civicrm/civicrm-core/pull/27809))**
+- **PHP8.x Stop sharing EventFee::preProcess from Registration form
+ ([27577](https://github.com/civicrm/civicrm-core/pull/27577))**
-- **Allow blank message templates ([27806](https://github.com/civicrm/civicrm-core/pull/27806))**
+- **Switch from html2text to soundasleep/html2text
+ ([27694](https://github.com/civicrm/civicrm-core/pull/27694))**
-- **allow email attachments with unicode ([27791](https://github.com/civicrm/civicrm-core/pull/27791))**
+- **Unshare form function
+ ([27892](https://github.com/civicrm/civicrm-core/pull/27892))**
-- **[REF] Fix Smarty Notices on Dedupe Rules screen by setting weight ([27804](https://github.com/civicrm/civicrm-core/pull/27804))**
+- **delete one more trackingFields reference
+ ([27726](https://github.com/civicrm/civicrm-core/pull/27726))**
-- **[NFC] Afform - Test cleanup ([27803](https://github.com/civicrm/civicrm-core/pull/27803))**
+- **Remove irrelevant code from previously shared form
+ ([27787](https://github.com/civicrm/civicrm-core/pull/27787))**
-- **Add event.self_cancel_xfer tokens ([27785](https://github.com/civicrm/civicrm-core/pull/27785))**
+- **Split shared function with mostly unshared code
+ ([27795](https://github.com/civicrm/civicrm-core/pull/27795))**
-- **Add ContributionFormTrait ([27801](https://github.com/civicrm/civicrm-core/pull/27801))**
+- **Remove non-variable variables from previously-shared code
+ ([27905](https://github.com/civicrm/civicrm-core/pull/27905))**
-- **[NFC] Docblocks - Remove 'experimental' comments and other copy-edits ([27802](https://github.com/civicrm/civicrm-core/pull/27802))**
+- **Remove unreachable code from previously shared function
+ ([27906](https://github.com/civicrm/civicrm-core/pull/27906))**
-- **regen after #27784 ([27799](https://github.com/civicrm/civicrm-core/pull/27799))**
+- **Remove no-longer-used parameters from function signature
+ ([27831](https://github.com/civicrm/civicrm-core/pull/27831))**
-- **Split shared function with mostly unshared code ([27795](https://github.com/civicrm/civicrm-core/pull/27795))**
+- **Remove always-true if
+ ([27919](https://github.com/civicrm/civicrm-core/pull/27919))**
-- **Add push upgrade for event offline receipt ([27739](https://github.com/civicrm/civicrm-core/pull/27739))**
+- **[PHP 8.2] fix undefined property in CRM_Event_Form_SelfSvcUpdate
+ ([27769](https://github.com/civicrm/civicrm-core/pull/27769))**
-- **Add user_dashboard core extension (alpha) ([27792](https://github.com/civicrm/civicrm-core/pull/27792))**
+- **CRM_Utils_Array::value - remove "todo" which we don't actually want to do
+ ([27812](https://github.com/civicrm/civicrm-core/pull/27812))**
-- **[REF] Fix notice error on undefined array key perm ([27796](https://github.com/civicrm/civicrm-core/pull/27796))**
+- **Add @deprecated annotation to CRM_Utils_Array::value
+ ([27959](https://github.com/civicrm/civicrm-core/pull/27959))**
-- **APIv4 - Prevent fatal errors when getOptions returns an empty array ([27793](https://github.com/civicrm/civicrm-core/pull/27793))**
+- **[REF] CRM/Contribute - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27820](https://github.com/civicrm/civicrm-core/pull/27820))**
-- **Afform - Unify 'is_dashlet', 'is_token' & 'contact_summary' as 'placement' ([27755](https://github.com/civicrm/civicrm-core/pull/27755))**
+- **[REF] CRM/Campaign - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27822](https://github.com/civicrm/civicrm-core/pull/27822))**
-- **Update civicrm_state_province.tpl ([27784](https://github.com/civicrm/civicrm-core/pull/27784))**
+- **[REF] CRM/Admin - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27823](https://github.com/civicrm/civicrm-core/pull/27823))**
-- **5.67 to master ([27790](https://github.com/civicrm/civicrm-core/pull/27790))**
+- **[REF] Civi - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27895](https://github.com/civicrm/civicrm-core/pull/27895))**
-- **Tag `getSubmittedValue()` as externally supported ([27786](https://github.com/civicrm/civicrm-core/pull/27786))**
+- **[REF] Apiv3 - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27898](https://github.com/civicrm/civicrm-core/pull/27898))**
-- **Update smarty localize for Smarty3 ([27776](https://github.com/civicrm/civicrm-core/pull/27776))**
+- **[REF] CRM/Report - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27816](https://github.com/civicrm/civicrm-core/pull/27816))**
-- **Blank out the text version of the offline receipt template ([27733](https://github.com/civicrm/civicrm-core/pull/27733))**
+- **[REF] CRM/Event - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27821](https://github.com/civicrm/civicrm-core/pull/27821))**
-- **Add translation tags ([27767](https://github.com/civicrm/civicrm-core/pull/27767))**
+- **[REF] Flexmailer - Refactor unnecessary use of CRM_Utils_Array::value
+ ([27828](https://github.com/civicrm/civicrm-core/pull/27828))**
-- **Standalone Smarty3 support ([27778](https://github.com/civicrm/civicrm-core/pull/27778))**
+- **[REF] CRM/Price - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27824](https://github.com/civicrm/civicrm-core/pull/27824))**
-- **phpstorm - Generate hints for Civi::paths(), Civi::url(), CRM_Utils_System::url() ([27779](https://github.com/civicrm/civicrm-core/pull/27779))**
+- **[REF] CRM/Utils - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27819](https://github.com/civicrm/civicrm-core/pull/27819))**
-- **Stop passing variable no longer in signature ([27765](https://github.com/civicrm/civicrm-core/pull/27765))**
+- **[REF] CRM/Core - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27817](https://github.com/civicrm/civicrm-core/pull/27817))**
-- **Fix notice on New Pledge form ([27773](https://github.com/civicrm/civicrm-core/pull/27773))**
+- **[REF] CRM/Activity - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27825](https://github.com/civicrm/civicrm-core/pull/27825))**
-- **[PHP 8.2] fix undefined property in CRM_Event_Form_SelfSvcUpdate ([27769](https://github.com/civicrm/civicrm-core/pull/27769))**
+- **[REF] CRM/Mailing - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27826](https://github.com/civicrm/civicrm-core/pull/27826))**
-- **QuickSearch - Add Current Employer option ([27766](https://github.com/civicrm/civicrm-core/pull/27766))**
+- **[REF] CRM/Contact - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27818](https://github.com/civicrm/civicrm-core/pull/27818))**
-- **Fix Participant form test to correctly test html version ([27763](https://github.com/civicrm/civicrm-core/pull/27763))**
+- **[REF] CRM/Misc - Refactor unnecessary uses of CRM_Utils_Array::value
+ ([27827](https://github.com/civicrm/civicrm-core/pull/27827))**
-- **CiviMail - Speed up generation of VERP URLs ([27652](https://github.com/civicrm/civicrm-core/pull/27652))**
+- **[REF] Unshared processRecurringContribution
+ ([27850](https://github.com/civicrm/civicrm-core/pull/27850))**
-- **Fix message within exception (PayPalIPN) ([27759](https://github.com/civicrm/civicrm-core/pull/27759))**
+- **[REF] ParticipantStatusType - Switch to writeRecord
+ ([27855](https://github.com/civicrm/civicrm-core/pull/27855))**
-- **[NFC] Make null really null ([27758](https://github.com/civicrm/civicrm-core/pull/27758))**
+- **[REF] Extract add soft credit fields
+ ([27847](https://github.com/civicrm/civicrm-core/pull/27847))**
-- **[REF] Remove getEmailAddress method which cannot work ([27757](https://github.com/civicrm/civicrm-core/pull/27757))**
+- **[REF] ManagedEntities - Remove unused function
+ ([27843](https://github.com/civicrm/civicrm-core/pull/27843))**
-- **[REF][PHP8.2] Replace dynmaic property with variable ([27756](https://github.com/civicrm/civicrm-core/pull/27756))**
+- **[REF] civicrm_admin_ui blocks links from oauth-client
+ (Work Towards [dev/core#4674](https://lab.civicrm.org/dev/core/-/issues/4674):
+ [27869](https://github.com/civicrm/civicrm-core/pull/27869))**
-- **5.67 to master ([27753](https://github.com/civicrm/civicrm-core/pull/27753))**
+- **[REF] Repeating entity form code cleanup
+ ([27328](https://github.com/civicrm/civicrm-core/pull/27328))**
-- **[NFC] Remove unused var ([27751](https://github.com/civicrm/civicrm-core/pull/27751))**
+- **[REF] CRM_Core_Pseudoconstant - Cleanup static arrays & functions
+ ([27840](https://github.com/civicrm/civicrm-core/pull/27840))**
-- **5.67 ([27750](https://github.com/civicrm/civicrm-core/pull/27750))**
+- **[REF] Remove domain references from managed entities
+ ([27915](https://github.com/civicrm/civicrm-core/pull/27915))**
-- **Extend normal form for delete action ([27745](https://github.com/civicrm/civicrm-core/pull/27745))**
+- **[REF] CRM_Event_PseudoConstant - Cleanup redundant caching
+ ([27838](https://github.com/civicrm/civicrm-core/pull/27838))**
-- **5.67 to master (conflict resolved) ([27746](https://github.com/civicrm/civicrm-core/pull/27746))**
+- **[REF] AngularManager - Skip extra lookups. Document function.
+ ([27807](https://github.com/civicrm/civicrm-core/pull/27807))**
-- **Fix notice (smarty) in Event fee tab ([27743](https://github.com/civicrm/civicrm-core/pull/27743))**
+- **[REF] AfformScanner - Update code comments & type hints
+ ([27808](https://github.com/civicrm/civicrm-core/pull/27808))**
-- **Switch to a token for billingName & address ([27692](https://github.com/civicrm/civicrm-core/pull/27692))**
+- **[REF] Fix Smarty Notices on Dedupe Rules screen by setting weight
+ ([27804](https://github.com/civicrm/civicrm-core/pull/27804))**
-- **Trim text emails when checking if empty ([27738](https://github.com/civicrm/civicrm-core/pull/27738))**
+- **[REF] testRegexpOperators fails on `max`
+ ([dev/core#4747](https://lab.civicrm.org/dev/core/-/issues/4747):
+ [27990](https://github.com/civicrm/civicrm-core/pull/27990))**
-- **5.67 to master ([27744](https://github.com/civicrm/civicrm-core/pull/27744))**
+- **[REF] Fix notice error on undefined array key perm
+ ([27796](https://github.com/civicrm/civicrm-core/pull/27796))**
-- **PHP8.x Stop sharing EventFee::preProcess from Registration form ([27577](https://github.com/civicrm/civicrm-core/pull/27577))**
+- **[REF] Remove getEmailAddress method which cannot work
+ ([27757](https://github.com/civicrm/civicrm-core/pull/27757))**
-- **5.67 to master ([27732](https://github.com/civicrm/civicrm-core/pull/27732))**
+- **[REF][PHP8.2] Replace dynmaic property with variable
+ ([27756](https://github.com/civicrm/civicrm-core/pull/27756))**
-- **[REF] Fix up Message template gencode to work with Smarty 3 ([27727](https://github.com/civicrm/civicrm-core/pull/27727))**
+- **[REF] Fix up Message template gencode to work with Smarty 3
+ ([27727](https://github.com/civicrm/civicrm-core/pull/27727))**
-- **Switch from html2text to soundasleep/html2text ([27694](https://github.com/civicrm/civicrm-core/pull/27694))**
+- **[NFC] Docblocks - Remove 'experimental' comments and other copy-edits
+ ([27802](https://github.com/civicrm/civicrm-core/pull/27802))**
-- **Replace smarty.get with assigned snippet_type in tpl ([27674](https://github.com/civicrm/civicrm-core/pull/27674))**
+- **(NFC) MenuXmlTest - Improve debug output. Use richer helpers.
+ ([28073](https://github.com/civicrm/civicrm-core/pull/28073))**
-- **delete one more trackingFields reference ([27726](https://github.com/civicrm/civicrm-core/pull/27726))**
+- **[NFC] More descriptive deprecation notice for Angular settings
+ ([28040](https://github.com/civicrm/civicrm-core/pull/28040))**
-- **Expose URL for mailing trackable link for filters in FormBuilder ([27723](https://github.com/civicrm/civicrm-core/pull/27723))**
+- **(NFC) phpunit.xml.dist - Drop stale reference to old suite
+ ([27859](https://github.com/civicrm/civicrm-core/pull/27859))**
-- **dev/core#4695 Fix Deprecated function: Optional parameter declared before required ([675](https://github.com/civicrm/civicrm-drupal/pull/675))**
+- **[NFC] Cleanup array syntax in tests directory
+ ([27809](https://github.com/civicrm/civicrm-core/pull/27809))**
-- **Fix Deprecated string interpolation issue in civicrm.module (line 10… ([674](https://github.com/civicrm/civicrm-drupal/pull/674))**
+- **[NFC] Afform - Test cleanup
+ ([27803](https://github.com/civicrm/civicrm-core/pull/27803))**
-## <a name="misc"></a>Miscellany
+- **[NFC] Make null really null
+ ([27758](https://github.com/civicrm/civicrm-core/pull/27758))**
+
+- **[NFC] Remove unused var
+ ([27751](https://github.com/civicrm/civicrm-core/pull/27751))**
+
+- **(NFC) setting-admin@1 - Fix the `@since` metadata
+ ([28170](https://github.com/civicrm/civicrm-core/pull/28170))**
+
+- **Update the list of required extensions to install during test db populate
+ ([27961](https://github.com/civicrm/civicrm-core/pull/27961))**
+
+- **Further fixes to ContributionPageTest
+ ([27948](https://github.com/civicrm/civicrm-core/pull/27948))**
+
+- **Smarty3 Clean up test class - remove ref to internal tplParams
+ ([27775](https://github.com/civicrm/civicrm-core/pull/27775))**
+
+- **Minor clean up in test class, add initial ContributionFormTrait
+ ([27947](https://github.com/civicrm/civicrm-core/pull/27947))**
+
+- **Fix test on secondary membership contribution to use full form flow
+ ([27928](https://github.com/civicrm/civicrm-core/pull/27928))**
+
+- **Remove test call to PaypalPro sandbox from tests
+ ([27953](https://github.com/civicrm/civicrm-core/pull/27953))**
+
+- **Fix MainTest to test form metadata function, not old unused function
+ ([27900](https://github.com/civicrm/civicrm-core/pull/27900))**
+
+- **Declare strict types in CiviUnitTestCase
+ ([26002](https://github.com/civicrm/civicrm-core/pull/26002))**
+
+- **Fix Contribution MainTest to set payment processor properties better
+ ([27893](https://github.com/civicrm/civicrm-core/pull/27893))**
+
+- **Document and test unique behavior of CRM_Utils_Array::value()
+ ([27830](https://github.com/civicrm/civicrm-core/pull/27830))**
+
+- **Move financial acl test to extension
+ ([27810](https://github.com/civicrm/civicrm-core/pull/27810))**
+
+- **Stop calling `CRM_Contribute_Form_Contribution::testSubmit()`, quiet
+ deprecation ([27811](https://github.com/civicrm/civicrm-core/pull/27811))**
+
+- **Fix Participant form test to correctly test html version
+ ([27763](https://github.com/civicrm/civicrm-core/pull/27763))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
-AGH Strategies - Andie Hunt; Agileware - Justin Freeman; Artful Robot - Rich Lott; ASMAC (American Society of Music Arrangers and Composers) - Jeff Kellem; BrightMinded Ltd - Bradley Taylor; chriscant; CiviCoop - Jaap Jansma; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Jens Schuppe; JMA Consulting - Monish Deb, Seamus Lee; Lemniscus - Noah Miller; Lighthouse Consulting and Design - Brian Shaughnessy; Luna Design - Andrew Wasson; Megaphone Technology Consulting - Jon Goldberg; midtsveen; MJW Consulting - Matthew Wire; Nicol Wistreich; ranjit-git; Reflexive Communications - Sandor Semsey; Squiffle Consulting - Aidan Saunders; SYSTOPIA - Johannes Franz; Third Sector Design - Kurund Jalmi; Wikimedia Foundation - Damilare Adedoyin, Eileen McNaughton; Wildsight - Lars Sander-Green
+AGH Strategies - Andie Hunt; Agileware - Justin Freeman; Artful Robot - Rich
+Lott; ASMAC (American Society of Music Arrangers and Composers) - Jeff Kellem;
+BrightMinded Ltd - Bradley Taylor; CiviCoop - Jaap Jansma; CiviCRM - Coleman
+Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy,
+Samuel Vanhove; Dave D; Erik Midtsveen; Freeform Solutions - Herb van den Dool;
+Fuzion - Jitendra Purohit; Jens Schuppe; JMA Consulting - Monish Deb, Seamus
+Lee; Lemniscus - Noah Miller; Lighthouse Consulting and Design - Brian
+Shaughnessy; Luna Design - Andrew Wasson; Megaphone Technology Consulting - Jon
+Goldberg; MJW Consulting - Matthew Wire; Nicol Wistreich; PHD Computer
+Consultants Ltd - Chris Cant; ranjit-git; Reflexive Communications - Sandor
+Semsey; Squiffle Consulting - Aidan Saunders; SYSTOPIA - Johannes Franz; Third
+Sector Design - Kurund Jalmi; Wikimedia Foundation - Damilare Adedoyin, Eileen
+McNaughton; Wildsight - Lars Sander-Green
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
-AGH Strategies - Alice Frumin; Agileware - Justin Freeman; ALL IN APPLI admin; Andrew Thompson; Artful Robot - Rich Lott; ASMAC (American Society of Music Arrangers and Composers) - Jeff Kellem; Benjamin W; civibot[bot]; CiviCoop - Jaap Jansma; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; Davis Media Access - Darrick Servis; Francesc Bassas i Bullich; Fuzion - Peter Davis; Jens Schuppe; JMA Consulting - Joe Murray, Seamus Lee; Lemniscus - Noah Miller; Luna Design - Andrew Wasson; Megaphone Technology Consulting - Brienne Kordis, Jon Goldberg; midtsveen; MJW Consulting - Matthew Wire; Nicol Wistreich; OPEN - dewy; ranjit-git; Reflexive Communications - Sandor Semsey; Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Third Sector Design - Kurund Jalmi, William Mortada; TomRosenbloom; WebmasterBouclier; Wikimedia Foundation - Eileen McNaughton; Wildsight - Lars Sander-Green
+AGH Strategies - Alice Frumin; ALL IN APPLI admin; Andrew Thompson; Benjamin W;
+Davis Media Access - Darrick Servis; Francesc Bassas i Bullich; Fuzion - Peter
+Davis; Jens Schuppe; OPEN - dewy; Semper IT - Karin Gerritsen; Third Sector
+Design - William Mortada; Tom Rosenbloom; WebmasterBouclier;
## <a name="feedback"></a>Feedback