# CiviCRM 6.15.0 Released June 3, 2026; - **[Synopsis](#synopsis)** - **[Features](#features)** - **[Bugs resolved](#bugs)** - **[Miscellany](#misc)** - **[Credits](#credits)** | *Does this version...?* | | |:--------------------------------------------------------------- |:-------:| | Fix security vulnerabilities? | no | | **Change the database schema?** | **yes** | | **Alter the API?** | **yes** | | **Require attention to configuration options?** | **yes** | | **Fix problems installing or upgrading to a previous version?** | **yes** | | **Introduce features?** | **yes** | | **Fix bugs?** | **yes** | ## <a name="features"></a>Features ### Core CiviCRM - **Api4 - Add activity contact count and filter fields ([35251](https://github.com/civicrm/civicrm-core/pull/35251))** Adds a few useful calculated fields to work with activity contacts in SearchKit. Makes existing calc fields more efficient. Adds tests. - **Api4 - Improve custom field handling ([35488](https://github.com/civicrm/civicrm-core/pull/35488))** More efficient processing of custom fields in Api4 write operations. - **support content-type of application/json on AJAX requests ([30678](https://github.com/civicrm/civicrm-core/pull/30678))** Adds support for content-type of application/json on AJAX requests. - **SearchKit - Allow ActivityContact to be searched directly ([35305](https://github.com/civicrm/civicrm-core/pull/35305))** Adds the ability to search directly on the Activity Contact table. - **Add "load" event when a searchDisplay has (re-)loaded it's data on the screen so third-party integrations can trigger actions. ([35331](https://github.com/civicrm/civicrm-core/pull/35331))** Adds a "load" event which can be used by third-party integrations to do things when the search display has loaded. - **SearchKit - Add highlight style to checked rows ([35617](https://github.com/civicrm/civicrm-core/pull/35617))** Adds highlight styling to checked rows in SearchKit. - **SearchKit - Better validation for batch import screen ([35537](https://github.com/civicrm/civicrm-core/pull/35537))** Improves validation on SearchKit batch import screens. - **SearchKit edit-in-place: add support for TextArea ("Note" type) ([35387](https://github.com/civicrm/civicrm-core/pull/35387))** Adds the ability to edit in place TextArea ("Note" type) fields in SearchKit. - **Feature request in FormBuilder to control number of options chosen in a checkbox ([dev/core#6433](https://lab.civicrm.org/dev/core/-/work_items/6433): [35359](https://github.com/civicrm/civicrm-core/pull/35359))** Adds support for min/max validation for formbuilder multiselects. - **Afform - Add client-side token support ([dev/core#6308](https://lab.civicrm.org/dev/core/-/work_items/6308): [35436](https://github.com/civicrm/civicrm-core/pull/35436))** Allow using tokens for other field values in a field default value. - **FormBuilder: allow inputs not linked to CiviCRM fields (Work towards [dev/core#6215](https://lab.civicrm.org/dev/core/-/work_items/6215): [35327](https://github.com/civicrm/civicrm-core/pull/35327) and [35351](https://github.com/civicrm/civicrm-core/pull/35351))** Adds a new Elements tab to formBuilder and moves all generic elements into that tab as well. - **FormBuilder - use toggle for frontend / backend setting ([35434](https://github.com/civicrm/civicrm-core/pull/35434))** Changes the formbuilder "accessible on front-end of website" checkbox to be a toggle for frontend or backend. - **Afform - Improve SearchDisplay tag detection ([35306](https://github.com/civicrm/civicrm-core/pull/35306) and [35323](https://github.com/civicrm/civicrm-core/pull/35323))** Gets Afform Gui Editor working with the new generic search display tags. - **Afform - Add help text for some settings ([35468](https://github.com/civicrm/civicrm-core/pull/35468) and [35461](https://github.com/civicrm/civicrm-core/pull/35461))** Improves user experience by adding more help text. - **Add entity ID and griditem class to Searchkit Grid and List displays ([35330](https://github.com/civicrm/civicrm-core/pull/35330) and [35552](https://github.com/civicrm/civicrm-core/pull/35552))** Makes it much easier to do things like add custom "click" handlers for searchkit grid items. - **Add importAlterMappedRow hook to searchkit batch imports ([35288](https://github.com/civicrm/civicrm-core/pull/35288))** Makes it so one can use the importAlterMappedRow hook with searchkit batch imports. - **Update error message with additional breadcrumb ([35299](https://github.com/civicrm/civicrm-core/pull/35299))** Better error messaging. - **Afform - Add checkbox field option for a CheckoutOption ([35479](https://github.com/civicrm/civicrm-core/pull/35479))** Adds a checkbox field for use with a CheckoutOption fields. - **hook_postCommit - Enable alias. Allow dispatching to `self_*` listeners. ([35293](https://github.com/civicrm/civicrm-core/pull/35293))** Improves `hook_postCommit` to have better parity with `hook_post`. - **Look at apiv4 friendly custom field format for `pre` hook ([dev/core#5413](https://lab.civicrm.org/dev/core/-/work_items/5413): [35492](https://github.com/civicrm/civicrm-core/pull/35492))** Improves working with custom fields in hook_civicrm_pre. - **Api4 - Allow calling checkAccess with name instead of id. ([35278](https://github.com/civicrm/civicrm-core/pull/35278))** Improves the Api4 CheckAccess action. - **Theme Settings: puts css under advanced, adds clone icon, a few of css tidies ([35465](https://github.com/civicrm/civicrm-core/pull/35465))** Style improvements for Theme Settings. - **Riverlea - add margin between status text and buttons ([35338](https://github.com/civicrm/civicrm-core/pull/35338))** Improves the styling of sites using RiverLea. ### CiviCase - **Case Dashboard: use toggle, rename title, code cleanup ([35445](https://github.com/civicrm/civicrm-core/pull/35445))** Improves the Case dashboard. - **SearchTasks - Add support for tagging cases ([35413](https://github.com/civicrm/civicrm-core/pull/35413))** Adds support for Tagging Cases. ### CiviContribute - **QuickSearch - Add contribution fields ([dev/core#6475](https://lab.civicrm.org/dev/core/-/work_items/6475): [35530](https://github.com/civicrm/civicrm-core/pull/35530))** Adds optional contribution fields to the menubar quicksearch. - **Adding filters to Pricesets listing ([35424](https://github.com/civicrm/civicrm-core/pull/35424))** Adds some filters to the priceset listing page. - **Add contribution status to context for civicrm_links hook ([35334](https://github.com/civicrm/civicrm-core/pull/35334))** Makes it so one can use contribution status as a context with the civicrm_links hook. - **PriceSet System Check: display the Financial Type ([35418](https://github.com/civicrm/civicrm-core/pull/35418))** Improves the Price Set system check by displaying the Financial Type. ### CiviEvent - **Improve approval flow for pay later event registrations ([34274](https://github.com/civicrm/civicrm-core/pull/34274))** Introduces an additional shortcut in the event approval process for pay later events only, while the approval flow itself remains as is. This reduces the number of user interactions, reduces waiting times of the approval process steps and ensures faster invoicing. ### CiviMail - **AdminUI - Specific page for draft mailing ([35558](https://github.com/civicrm/civicrm-core/pull/35558))** Creates a separate page for draft mailings. - **Discard HEAD Request For URL Tracking ([35328](https://github.com/civicrm/civicrm-core/pull/35328))** HEAD requests make up a significant portion of all click-tracking traffic, which are email security scanners and link previewers (e.g. Microsoft SafeLinks) and not real human clicks and should not be counted as url clicks, this improves the click through url count by ignoring HEAD requests for click through tracking. ### Drupal Integration - **Symfony 8 - adding array return type declaration to getSubscribedEvents declarations ([35569](https://github.com/civicrm/civicrm-core/pull/35569))** Work towards Drupal 12 compatibility. - **allow symfony 8, and php-weasyprint 2 for Drupal 12 / PHP 8.5 composer ([35571](https://github.com/civicrm/civicrm-core/pull/35571))** Work towards Drupal 12 compatibility. ### Standalone Integration - **Support LDAP on Standalone (Work towards [dev/core#6471](https://lab.civicrm.org/dev/core/-/work_items/6471): [35561](https://github.com/civicrm/civicrm-core/pull/35561) and [35749](https://github.com/civicrm/civicrm-core/pull/35749))** Makes it so one can use an event (civi.standalone.loadUser) to integrate basic user information (username, user-email, role) from an external system. ### WordPress Integration - **Wordpress CreateUser micro-optimisation ([35491](https://github.com/civicrm/civicrm-core/pull/35491))** Improves the create user flow. ## <a name="bugs"></a>Bugs resolved ### Core CiviCRM - **New entity reference fields are not searchable ([dev/core#5820](https://lab.civicrm.org/dev/core/-/work_items/5820): [35429](https://github.com/civicrm/civicrm-core/pull/35429) and [35421](https://github.com/civicrm/civicrm-core/pull/35421))** - **[PHP Deprecation] str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated at /vendor/civicrm/civicrm-core/CRM/Dedupe/Merger.php:1349 ([dev/core#6440](https://lab.civicrm.org/dev/core/-/work_items/6440): [35412](https://github.com/civicrm/civicrm-core/pull/35412))** - **AutocompleteAction infinite loop ([dev/core#6441](https://lab.civicrm.org/dev/core/-/work_items/6441): [35426](https://github.com/civicrm/civicrm-core/pull/35426) and [35474](https://github.com/civicrm/civicrm-core/pull/35474))** Fix infinite loop in some custom AutocompleteAction. - **Performance: Cache missing on hot paths in CiviCRM core causing excessive DB queries ([dev/core#6451](https://lab.civicrm.org/dev/core/-/work_items/6451): [35467](https://github.com/civicrm/civicrm-core/pull/35467) and [35463](https://github.com/civicrm/civicrm-core/pull/35463))** - **6.12+ regression: membership_online_receipt template using wrong price token? ([dev/core#6467](https://lab.civicrm.org/dev/core/-/work_items/6467): [35713](https://github.com/civicrm/civicrm-core/pull/35713))** - **toggleDedupeSelect() returns empty response causing "Request Failed" dialog on dedupe screen ([dev/core#6412](https://lab.civicrm.org/dev/core/-/work_items/6412): [35408](https://github.com/civicrm/civicrm-core/pull/35408))** - **Spurious HTML tag appearing in custom field display ([dev/core#6482](https://lab.civicrm.org/dev/core/-/work_items/6482): [35666](https://github.com/civicrm/civicrm-core/pull/35666))** - **FormBuilder / Searchkit : saved display "table" does not enforce default values at first run with autorun ([dev/core#6493](https://lab.civicrm.org/dev/core/-/work_items/6493): [35692](https://github.com/civicrm/civicrm-core/pull/35692))** - **Unable to edit icon for Custom Group when display is Tab with Table ([dev/core#6502](https://lab.civicrm.org/dev/core/-/work_items/6502): [35688](https://github.com/civicrm/civicrm-core/pull/35688))** - **Afform - Fix validation and submission of extra fields ([35514](https://github.com/civicrm/civicrm-core/pull/35514))** - **Afform Admin - caret looks weird on dropup menu ([35509](https://github.com/civicrm/civicrm-core/pull/35509))** - **Afform - Update "Not Saved" text to match already-translated strings ([35376](https://github.com/civicrm/civicrm-core/pull/35376))** - **afform - reset ngForm to clean after successful submit ([35419](https://github.com/civicrm/civicrm-core/pull/35419))** - **fix af-field initialisation on search forms ([35677](https://github.com/civicrm/civicrm-core/pull/35677))** - **Fix SK actions displayed as buttons ([35684](https://github.com/civicrm/civicrm-core/pull/35684))** - **SearchKit - Move admin edit link to the bottom and style dropups ([35282](https://github.com/civicrm/civicrm-core/pull/35282))** - **SearchKit - Prevent aggregation issues when augmenting select clause ([35543](https://github.com/civicrm/civicrm-core/pull/35543))** - **SearchKit - Improve aggregation handling of DB Entity displays ([35605](https://github.com/civicrm/civicrm-core/pull/35605))** - **SearchKit - Fix defaults for tally setting ([35455](https://github.com/civicrm/civicrm-core/pull/35455))** - **River: removes excess padding on dropdown inputs ([35374](https://github.com/civicrm/civicrm-core/pull/35374))** - **River: removes un-used variables ([35384](https://github.com/civicrm/civicrm-core/pull/35384))** - **River: resolves 12 undefined variables ([35380](https://github.com/civicrm/civicrm-core/pull/35380))** - **Riverlea - Remove firefox-only width property ([35366](https://github.com/civicrm/civicrm-core/pull/35366))** - **Riverlea - Remove unneeded ContactLayout style fixes ([35381](https://github.com/civicrm/civicrm-core/pull/35381))** - **Riverlea - use metadata cache for stream metadata ([35233](https://github.com/civicrm/civicrm-core/pull/35233))** - **Upgrader - Show correct version for MySQL 8.0 requirement ([35632](https://github.com/civicrm/civicrm-core/pull/35632))** - **Don't load export preview data unnecessarily ([35453](https://github.com/civicrm/civicrm-core/pull/35453))** - **Only get active dashlets to add on dashboard ([35602](https://github.com/civicrm/civicrm-core/pull/35602))** - **CustomField - Guard against orphaned custom groups in trigger rebuild and isGroupEmpty ([35574](https://github.com/civicrm/civicrm-core/pull/35574))** - **add void return type to process() method for objects implementing CompilerPassInterface ([35570](https://github.com/civicrm/civicrm-core/pull/35570))** - **WYSIWYG: Focus when expanding a collapsed editor ([35565](https://github.com/civicrm/civicrm-core/pull/35565))** Fixes minor UX issue with our collapsed wysiwyg inputs. - **QuickSearch - Ensure settings updates are reflected in menu ([35531](https://github.com/civicrm/civicrm-core/pull/35531))** - **update deleted files list ([35529](https://github.com/civicrm/civicrm-core/pull/35529))** - **Groups - Fixes performance issue with search pages ([35505](https://github.com/civicrm/civicrm-core/pull/35505))** - **Minor visual improvements to Find Event/Contributions ([35322](https://github.com/civicrm/civicrm-core/pull/35322))** - **Fix PHPDoc: use fully-qualified class name for TokenRow ([35441](https://github.com/civicrm/civicrm-core/pull/35441))** - **Translation - Fix argument key mapping ([35410](https://github.com/civicrm/civicrm-core/pull/35410))** - **Set display name to primary email address not last email address ([35356](https://github.com/civicrm/civicrm-core/pull/35356))** - **Merge missing "show linebreaks" css rule from searchkit ext into riverlea ([35362](https://github.com/civicrm/civicrm-core/pull/35362))** - **Log error and continue when running individual tasks for BasicBatchAction ([35317](https://github.com/civicrm/civicrm-core/pull/35317))** - **CiviReport - Prevent navigation from being selected as own parent ([35346](https://github.com/civicrm/civicrm-core/pull/35346))** - **Groups - Fix smarty warning on "New Group" form ([35377](https://github.com/civicrm/civicrm-core/pull/35377))** - **Fix PHP 8 warning in RemoveFromGroup.tpl: use $form.group_id.value instead of $group.id ([35494](https://github.com/civicrm/civicrm-core/pull/35494))** - **php warning if relationship_type_id not in the params for relationship update ([35385](https://github.com/civicrm/civicrm-core/pull/35385))** - **Removing double fieldset ([35343](https://github.com/civicrm/civicrm-core/pull/35343))** - **Remove old link to full-text custom search for new installs ([35310](https://github.com/civicrm/civicrm-core/pull/35310))** - **CustomGroup - Fix submitting form to update multi-record custom group ([35689](https://github.com/civicrm/civicrm-core/pull/35689))** - **Remove unused variable causing php warnings. ([35360](https://github.com/civicrm/civicrm-core/pull/35360))** - **CKEditor4: configuration button broken ([35746](https://github.com/civicrm/civicrm-core/pull/35746))** - **SearchKit - Fix sql error when using aggregate functions without GROUP BY. ([35755](https://github.com/civicrm/civicrm-core/pull/35755))** - **Premium intro message not showing HTML ([dev/core#6505](https://lab.civicrm.org/dev/core/-/work_items/6505): [35752](https://github.com/civicrm/civicrm-core/pull/35752))** - **SearchKit: aggregate are not uniquely or completely parsed. ([dev/core#6518](https://lab.civicrm.org/dev/core/-/work_items/6518): [35757](https://github.com/civicrm/civicrm-core/pull/35757))** - **Is Current relationship field is missing in Form Builder UI ([dev/core#6519](https://lab.civicrm.org/dev/core/-/work_items/6519): [35766](https://github.com/civicrm/civicrm-core/pull/35766))** - **Update Composer compile lib to most recent version ([35776](https://github.com/civicrm/civicrm-core/pull/35776))** - **plain text for nestedGroup() ([35778](https://github.com/civicrm/civicrm-core/pull/35778))** - **Fixes a bug when trying to search for Afforms in SearchKit by tag. ([35791](https://github.com/civicrm/civicrm-core/pull/35791))** - **Add return type for Symfony compatibility ([35798](https://github.com/civicrm/civicrm-core/pull/35798))** ### CiviCampaign - **CiviCampaign - Fix missing tab count on dashboard ([35819](https://github.com/civicrm/civicrm-core/pull/35819))** ### CiviCase - **Fix Case Detail Input Type ([35511](https://github.com/civicrm/civicrm-core/pull/35511))** ### CiviContribute - **'Class "CRM_Contribution_BAO_Contribution" not found' shows when you try to access the Contribution overview screen. This happens with the contribution search screen, too. ([dev/core#6495](https://lab.civicrm.org/dev/core/-/work_items/6495): [35635](https://github.com/civicrm/civicrm-core/pull/35635))** - **Start to move changeFeeSelection over to contribution based ([35589](https://github.com/civicrm/civicrm-core/pull/35589))** - **Add class definition, handle NULL return from doRefund(), allow passing currency to API4 PaymentProcessor::refund ([35477](https://github.com/civicrm/civicrm-core/pull/35477))** - **Fix UpdateSubscription line item check ([35579](https://github.com/civicrm/civicrm-core/pull/35579))** - **Display title instead of name for Payment processor on contribution page configuration ([35466](https://github.com/civicrm/civicrm-core/pull/35466))** - **Contribution Form (backend): avoid extra TD, move help next to label ([35292](https://github.com/civicrm/civicrm-core/pull/35292))** - **fixed getvalue error on contribution page ([35733](https://github.com/civicrm/civicrm-core/pull/35733))** - **Reduce Priceset Alerts to only active Pricesets ([35414](https://github.com/civicrm/civicrm-core/pull/35414))** - **Fix FinancialAccount lookup ([35582](https://github.com/civicrm/civicrm-core/pull/35582))** ### CiviEvent - **add small translations in message in Event Participant.php ([35611](https://github.com/civicrm/civicrm-core/pull/35611))** - **Fixed fatal error when clicking on add participant link on event checkout ([35610](https://github.com/civicrm/civicrm-core/pull/35610))** - **Correctly indicate spaces remaining for price set text fields when validating for additional participants ([35325](https://github.com/civicrm/civicrm-core/pull/35325))** - **Avoid legacy line lookup on participant form ([35586](https://github.com/civicrm/civicrm-core/pull/35586))** - **Fix notice & partial tab for manage event with civi-contribute disabled ([35578](https://github.com/civicrm/civicrm-core/pull/35578))** ### CiviMail - **FlexMailer - Fix memory leak in bulk mailing send loop ([35442](https://github.com/civicrm/civicrm-core/pull/35442))** - **Allow CiviMail admins to preview mailings by numeric ID when hash_mailing_url is enabled ([35166](https://github.com/civicrm/civicrm-core/pull/35166))** ### CiviMember - **Membership (for org B) not created if related contact already has similar membership inherited (from org A) ([dev/core#6491](https://lab.civicrm.org/dev/core/-/work_items/6491): [35681](https://github.com/civicrm/civicrm-core/pull/35681))** - **Contribution Page DB Constraint issue due to no financial Type being found - membership specific configuration ([dev/core#6496](https://lab.civicrm.org/dev/core/-/work_items/6496): [35643](https://github.com/civicrm/civicrm-core/pull/35643))** Fixes issue where using a 'membership' price set but not requiring membership signup might lead to a DB constraint violation because no financial type is returned from getFinancialTypeID() - **use membership title not machine name on backend ([35335](https://github.com/civicrm/civicrm-core/pull/35335) and [35719](https://github.com/civicrm/civicrm-core/pull/35719))** - **Fix add membership when civi_contribute is disabled ([35464](https://github.com/civicrm/civicrm-core/pull/35464))** - **MembershipType - Filter by domain on admin screen ([dev/core#6473](https://lab.civicrm.org/dev/core/-/work_items/6473): [35510](https://github.com/civicrm/civicrm-core/pull/35510))** ### Joomla Integration - **Create a Joomla3 zip file to fix issues with psr/log for Joomla4 ([35753](https://github.com/civicrm/civicrm-core/pull/35753))** ### WordPress Integration - **add fix for radio and checkbox issue with WP 7. ([35708](https://github.com/civicrm/civicrm-core/pull/35708))** ## <a name="misc"></a>Miscellany - **SchemaHelper - Ensure case-insensitivity in tableExists and getExistingTables functions ([35555](https://github.com/civicrm/civicrm-core/pull/35555))** - **SchemaHelper - Add getExistingTables function ([35553](https://github.com/civicrm/civicrm-core/pull/35553))** - **New SchemaHelper functions for CiviCRM 6.15 / civimix-schema@5.98 ([35302](https://github.com/civicrm/civicrm-core/pull/35302))** - **Minor cleanup around changeFeeSelections ([35532](https://github.com/civicrm/civicrm-core/pull/35532))** - **Replace direct variable access with getters in ParticipantFeeSelection form ([35535](https://github.com/civicrm/civicrm-core/pull/35535))** - **Use sensible methods to get tablename/entityname in Order API ([35567](https://github.com/civicrm/civicrm-core/pull/35567))** - **UtilsArray - Refactor findAll to use shared function ([35347](https://github.com/civicrm/civicrm-core/pull/35347))** - **Add php8.5 polfill ([35439](https://github.com/civicrm/civicrm-core/pull/35439))** - **Afform - Improve status indicator handling ([35431](https://github.com/civicrm/civicrm-core/pull/35431))** - **(Code style) To const, or not const - that is the event ([dev/core#1744](https://lab.civicrm.org/dev/core/-/work_items/1744): [35321](https://github.com/civicrm/civicrm-core/pull/35321))** - **Ext - Move upgrade/schema files to consistent location. ([35427](https://github.com/civicrm/civicrm-core/pull/35427))** - **Joomla 5 compatibility (Code Cleanup towards [dev/joomla#54](https://lab.civicrm.org/dev/joomla/-/work_items/54): [91](https://github.com/civicrm/civicrm-joomla/pull/91))** - **Upgrader - Remove unused version compare ([35470](https://github.com/civicrm/civicrm-core/pull/35470))** - **ChartKit - Remove deprecated empty 'settings' from ang module ([35375](https://github.com/civicrm/civicrm-core/pull/35375))** - **Settings - Remove reference to old unused `checksumTimeout` ([35383](https://github.com/civicrm/civicrm-core/pull/35383))** - **DAO/Event - Fix copypasta comments ([35513](https://github.com/civicrm/civicrm-core/pull/35513))** - **Mailing - Remove deprecated methods `getGroupNames` and `getReturnProperties` ([35484](https://github.com/civicrm/civicrm-core/pull/35484))** - **Remove deprecated class ([35577](https://github.com/civicrm/civicrm-core/pull/35577))** - **Remove never true condition ([35522](https://github.com/civicrm/civicrm-core/pull/35522))** - **Remove never called code - changedFinancialTypeID is always NULL ([35533](https://github.com/civicrm/civicrm-core/pull/35533))** - **Remove unnecessary CRM_Event_BAO_Event::retrieve($params, $event); ([35580](https://github.com/civicrm/civicrm-core/pull/35580))** - **Remove always empty empty ([35598](https://github.com/civicrm/civicrm-core/pull/35598))** - **remove deprecated alias SettingsManager::useDefaults ([35600](https://github.com/civicrm/civicrm-core/pull/35600))** - **remove deprecated CRM_Core_BAO_ConfigSetting::doSiteMove / System.resetPaths ([35599](https://github.com/civicrm/civicrm-core/pull/35599))** - **Remove unused value ([35595](https://github.com/civicrm/civicrm-core/pull/35595))** - **Deprecate meaningless function call ([35576](https://github.com/civicrm/civicrm-core/pull/35576))** - **Remove lookup on always-empty _values['line_items'] ([35585](https://github.com/civicrm/civicrm-core/pull/35585))** - **Remove another place where _values['line_items'] is set ([35590](https://github.com/civicrm/civicrm-core/pull/35590))** - **github action deprecation for regen ([35295](https://github.com/civicrm/civicrm-core/pull/35295))** - **remove references to git-footnote ([35486](https://github.com/civicrm/civicrm-core/pull/35486))** - **remove git-footnote ([441](https://github.com/civicrm/civicrm-packages/pull/441))** - **Remove duplicate join on LineItem Contribution in SearchKit ([35495](https://github.com/civicrm/civicrm-core/pull/35495))** - **Remove redundant symfony/polyfill-php81 dependency ([35315](https://github.com/civicrm/civicrm-core/pull/35315))** - **Remove unused code ([35606](https://github.com/civicrm/civicrm-core/pull/35606))** - **Api3 - Remove unnecessary version check ([35476](https://github.com/civicrm/civicrm-core/pull/35476))** - **new organisation ([35520](https://github.com/civicrm/civicrm-core/pull/35520))** - **Update contributor-key.yml ([35497](https://github.com/civicrm/civicrm-core/pull/35497))** - **Fix contributor key for Brienne ([35493](https://github.com/civicrm/civicrm-core/pull/35493))** - **Added myself to contributor-key.yml as requested ([35462](https://github.com/civicrm/civicrm-core/pull/35462))** - **Update contributor-key.yml ([35336](https://github.com/civicrm/civicrm-core/pull/35336))** - **symfony update ([35699](https://github.com/civicrm/civicrm-core/pull/35699))** - **Bump select2 version to 3.5-civicrm-1.4 ([35307](https://github.com/civicrm/civicrm-core/pull/35307))** - **Bump follow-redirects from 1.15.6 to 1.16.0 ([35391](https://github.com/civicrm/civicrm-core/pull/35391))** - **Bump knplabs/knp-snappy from 1.4.4 to 1.7.1 ([35724](https://github.com/civicrm/civicrm-core/pull/35724))** - **Bump lodash from 4.17.23 to 4.18.1 ([35304](https://github.com/civicrm/civicrm-core/pull/35304))** - **Refactor `Tag::getColorTags()` to use APIv4 ([35369](https://github.com/civicrm/civicrm-core/pull/35369))** - **[REF][PHP8.2] Declare properties CRM_Pledge_Page_Payment ([35515](https://github.com/civicrm/civicrm-core/pull/35515))** - **[REF] separate building custom field copy parameters from saving them ([35339](https://github.com/civicrm/civicrm-core/pull/35339))** - **(REF) Refactor code that checks if price set options are full ([35324](https://github.com/civicrm/civicrm-core/pull/35324))** - **REF: Switch to API4 to get balance_amount for Contribution in tests ([35581](https://github.com/civicrm/civicrm-core/pull/35581))** - **[REF] Afform - More arrow functions ([35539](https://github.com/civicrm/civicrm-core/pull/35539))** - **REF: Use getOptions() to get FinancialItemStatus ([35550](https://github.com/civicrm/civicrm-core/pull/35550))** - **REF: Move LineItem API4 to civi_contribute extension ([35416](https://github.com/civicrm/civicrm-core/pull/35416))** - **[REF] SearchTasks - Move add/remove tags into a common trait. ([35411](https://github.com/civicrm/civicrm-core/pull/35411))** - **[NFC] SearchKit Fix typo in comment ([35481](https://github.com/civicrm/civicrm-core/pull/35481))** - **NFC: Update validateContactID comment ([35526](https://github.com/civicrm/civicrm-core/pull/35526))** - **(NFC) QueueTest - More comments ([35500](https://github.com/civicrm/civicrm-core/pull/35500))** - **NFC: Correct variable type and remove unused code ([35554](https://github.com/civicrm/civicrm-core/pull/35554))** - **CustomField - Fix unit test to not hardcode IDs ([35556](https://github.com/civicrm/civicrm-core/pull/35556))** - **Fix test issue - if you pass in contribution_status_id it might get overridden by contribution_status_id:name if API4 is involved ([35591](https://github.com/civicrm/civicrm-core/pull/35591))** - **Fix Payment allocations test API version setting ([35528](https://github.com/civicrm/civicrm-core/pull/35528))** ## <a name="credits"></a>Credits This release was developed by the following code authors: AGH Strategies - Alice Frumin, Chris Garaffa; Agileware - Justin Freeman; Antoine; ASMAC (American Society of Music Arrangers and Composers) - Jeff Kellem; Benjamin W; Brent Roose; Circle Interactive - Pradeep Nayak; CiviCRM - Coleman Watts, Tim Otten; Civiservice.de GmbH - Torben Bertram; Colored Cow - Tarun Joshi; CompuCo - Muhammad Shahrukh; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove, Shane Bill; CSES (Chelmsford Science and Engineering Society) - Adam Wood; Dave D; Erawat Chamanont; Fuzion - Luke Stewart; Ingenieurbüro Dr. Maarten Becker - Maarten Becker; iXiam - Vangelis Pantazis; JMA Consulting - Seamus Lee; Joinery - Allen Shaw; Jon Griffin; Lemniscus - Noah Miller; Marvin Müller; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Mosier Consulting - Justin Mosier; Nicol Wistreich; Passionate Bytes Solutions - Paul Bütof; Richard Baugh; Robin Bowes; Skvare - Mark Hanna; Squiffle Consulting - Aidan Saunders; Stiftung Pfadfinden - Andreas Lietz; SYSTOPIA - Daniel Hahn; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston; Wildsight - Lars Sander-Green Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: Andy Burns; Australian Greens - Andrew Cormick-Dockery; Blackfly Solutions - Alan Dixon; Christian Wach; JMA Consulting - Seamus Lee; lukasfelixkraft; Squiffle Consulting - Aidan Saunders