Skip to content

Latest commit

 

History

History
863 lines (586 loc) · 33.6 KB

File metadata and controls

863 lines (586 loc) · 33.6 KB

CiviCRM 6.0.0

Released March 5, 2025;

Synopsis

Does this version...?
Fix security vulnerabilities? no
Change the database schema? yes
Alter the API? yes
Require attention to configuration options? no
Fix problems installing or upgrading to a previous version? no
Introduce features? yes
Fix bugs? yes

Features

Core CiviCRM

  • Installer - Use Riverlea's Minetta by default (31985)

    Enables Riverlea's Minetta by default on new installs.

  • RiverLea 1.3.4: 3 Thames & 1 core fix, ref MR #49 (31930, 31961, 32077, 31781, 31913, 32176, 32209, 32129 and 31833)

    Improves accessibility and user experience for sites using RiverLea.

  • Add TIMESTAMPDIFF function to searchkit so you can show time between two dates (31332)

    Adds the ability to show the time between two dates in SearchKit.

  • Search: disable the alpha pager by default (31883)

    Improves user experience by disabling the alpha pager on search results by default.

  • UX: Could not find a valid session (dev/core#5610: 31638)

    Improves user experience when a valid session key error is displayed.

  • Proposal - ship unicode fonts - Given the current size of the tarball, and the recent PSA about wkhtmltopdf, does it still make sense to remove the unicode font from dompdf in the tarball? (dev/core#5539: 31809)

    Offers dejaVu fonts.

  • EntityRepository - The new canonical source for metadata & CRUD (Work Towards dev/core#5410: 31105)

    Adds ACL checks to getOptions.

  • Queue.reset - Add API to drop all pending items (31907)

    Add a new API, Queue.reset. It is similar to Queue.run or Queue.runItems in that it's targeted at a specific queue. It deletes all pending items in the queue.

  • ChartKit - allow more numeric formats as sourceDataTypes (31876)

    Improves ChartKit by allowing more numeric formats as source data types.

  • Add pageRun hook to CRM_Core_Page_File (31855)

    Makes it possible to use the pageRun hook with CRM_Core_Page_File.

  • A11y - Add aria roles to tablists (31929)

    Adds accessibility tags to the tab markup.

  • Update existing navigation labels to match new 'Site Email Address' (31988)

    Changes the navigation menu item "FROM Email Addresses" to "Site Email Addresses".

  • Search Kit - For "Entity" displays, provide TABLE/VIEW options (31632)

    Makes it so in Search Kit, you can create a saved-search and use it to generate a read-only custom API.

  • SearchKit - Improve UI for adding/removing tags & fix error when tags already exist (31745)

    Improves user interface for adding and removing tags in SearchKit.

  • SearchKit Reports - add tagging functionality to categorise reports (dev/core#5654: 31890)

    Adds support for tagging Afforms using Tag entity.

  • SearchKit - Improve the UI for sql functions (31717)

    Improves user interface for using sql functions in SearchKit.

  • SearchKit - Add new "Tree" display 🌲, use for AdminUI Navigation menu screen (31803)

    Adds a new searchKit display option "Tree" and uses it for the AdminUI Navigation menu.

  • Afform - Add support for saving and restoring draft submissions (31882)

    Adds support for saving and restoring draft submissions in Form Builder.

  • Afform - Improve UX for batch-processing submissions (31906)

    Improves the UX and simplifies the code for batch-processing Form Builder submissions. Adds "rejected" status.

  • Afform - Add status filter/icon to submission list (31884)

    Improves submission list by adding status filter/icon.

  • Afform - Add to contact summary actions menu (31838)

    Adds a no-code way to add a form to the "Actions" menu on the contact summary screen.

  • Move from_email_address options to new SiteEmailAddresses entity (31909)

    Moves the 'from_email_address' option group into its own table: Introducing the new SiteEmailAddress entity. 🎉

  • Dedupe performance & hooks (Work Towards dev/core#5433: 31689)

    Adds the legacydedupefinder extension.

CiviCampaign

  • Api4 - Enable managed, hierarchical traits for Campaign entities (31359)

    Adds a couple useful features to CiviCampaign, enabling a hierarchical searchKit display of campaigns, and allowing extensions to package them as managed entities.

CiviContribute

  • Add Personal Campaign Page Admin UI Screen (29541)

    Recreates the Personal Campaign Admin UI screen as a SearchKit Search.

  • Display custom fields on Price Field Values (31839)

    Shows Custom Fields on Price Field Values on the Edit Price Option page.

  • ContributionView: show the contrib id, remove some buttons, layout changes (31603)

    Improves and standardizes the Contribution view.

CiviMember

  • Membership renewal form: Clarify "Date renewal entered" (30427)

    Improves the user interface when renewing a membership.

Standalone Integration

  • Standalone - Faster page load times (32252)

    Improves performance.

  • standaloneusers: support translation on the login screen (31954)

    Improves translation for the standalone login screen.

  • Update Miscellaneous admin form to mostly use settings (31831)

    Standardizes the Miscellaneous admin form.

WordPress Integration

  • Iframe: Add support for WordPress (dev/core#5464: 336 and 31460)

    Adds support for IFRAME URLs via ?_cvwpif=1.

Bugs resolved

Core CiviCRM

  • Certain Contact Summary Tabs Not Showing Count (dev/core#5731: 32078)

  • Relationship tab - disable link gives fatal error (dev/core#5741: 32136)

  • Names that have quotation marks mess up display formatting (dev/core#5711: 31922)

  • Can't import using contact id (dev/core#4389: 30034)

  • Default From Email Address not respected (dev/core#5720: 31987)

  • Finish allowing use of SSL to connect to database (Work Towards dev/core#1926: 31912 and 31911)

    MySQL SSL fixes for Backdrop, Drupal 7, and Standalone integrations and improves debug info about SSL failures.

  • Follow-up task - Remove the CiviCRM Connections functionality from CiviCRM core (Task 2 of 2) - Remove the code (dev/core#2941: 31740)

  • FormBuilder - refreshing page after saving a new or cloned one lose current context (dev/core#4827: 31742)

  • Afform - Autocomplete as filter fails when entity is not primary in SK (dev/core#5679: 31758)

  • Div ID "contact-summary" changed to "contact-0" (dev/core#5688: 31812)

  • Condition in Formbuilder: field is renamed 'false' when there's no label (dev/core#5693: 31844)

  • Composer's ext-* requirements are inconsistently enforced (dev/core#5702: 31874)

  • Formbuilder: ReadOnly fields don't display "view value" (dev/core#5706: 31894)

  • Debug Mode - Behaves inconsistently on Backdrop/D7 (dev/core#5712: 31921)

  • CRM_Event_WorkflowMessage_EventOfflineReceipt::getProfiles(): Return value must be of type array, null returned (dev/core#5717: 32195)

  • Column too short: civicrm_action_schedule.start_action_date (dev/core#5725: 32054)

  • api3 contact.getoptions for custom fields either returns null or an error (dev/core#5747: 32170, 32168 and 32167)

  • Afform - Fix reading urlHash (31837)

  • Afform - Fix maxlength comparisons (32220)

  • Afform - Fully deprecate contact_id and remove AfformBlock.tpl (31836)

  • afform: fixes defaults for join entities (32139)

  • Afform - Fix prefilling location blocks with different fields (32121)

  • Afform - Use entity-specific filter key, revert entity_id generic key (32040)

  • FormBuilder - Fix fatal crash with ContactLayout summary blocks (32068)

  • SearchKit - Refresh DB entities via table-swap (31767)

  • SearchKit - Correctly format numeric custom fields (31772)

  • SearchKit - Fix hiding buttons when downloading spreadsheet 32268

  • SearchKit - Fix undefined index warning (32142)

  • SearchKit - Fix tally with long column names (31892)

  • SearchKit - Improve enable/disable responsiveness and fix bugs in hierarchical displays (31866)

  • AdminUI - Fix custom field tabs appearing for wrong contact subtype (32083)

  • AdminUI - Prevent crash after adding new custom group (32143)

  • Switch long & angular caches to use fast-array (31416)

  • Fix mail settings page to use metadata (31950)

  • Developer settings page - switch to generating from meta (31966)

  • Improve crmUiIconPicker with ngModel support for binding (31859)

    Fixes a UI bug in SearchKit

  • Upgrader - Fix upgrade error with i18n-enabled databases (32109)

  • Upgrader tasks should not have ts (32033)

  • Profile - Fix e-notice when displaying website field with no value (31918)

  • LegacySpecScanner - only needs to look in extensions (31253)

  • ManagedEntity - Ensure multisite domain entities match on domain_id (31888)

  • Api3 - Fix profile.submit function to correctly handle more fields (31914)

  • Use proper table names in query (31903)

  • Break variable assignment into 2 rows (31940)

  • CustomField - Increase maxLength for Link fields to 2047 characters. (31868)

  • Urgent (before 6 freeze): Fix broken select2s on Thames stream (31964)

  • CRM_Core_BAO_MessageTemplate::getMessageTemplates throws API Request Authorization failed because check permissions is enforced (31852)

  • CustomField - Update searchable field label for consistency with form (31872)

  • CRM_Report_Form::_aliases set public (31814)

  • Check parents key exists in GroupsCommon.tpl (30962)

  • Api3 - Restore groupContact.delete action (31826)

  • Navigation - Get 'delete' link working (31779)

  • DeletedFiles - Always use case-sensitivity when generating list
    (31764)

  • CustomGroup: provide a more helpful message when a extendsChildType fails to validate (31766)

  • PHPUnit Bootstrap - Minor workflow improvement re:xdebug (31750)

  • Discourage accessing $form->_values (31958)

  • fixes warning buildRecurBlock (31915)

  • Activity Priority: unhardcode the default priority (31851)

  • Fix position of closing icon tags (31835)

  • Online regen script needs sendmail now (31853)

  • Clarify function parameter (31969)

  • Improve legibilty by using mysql alias rather than long variable name (31975)

  • i18n: throw an exception if an invalid escape mode is used (31963)

  • SqlGenerator - Ensure FK index names are not too long (31910)

  • Cast to string for explode in CRM_Utils_CommaKV (31827)

  • CRM_Utils_System_Base::url() has 6 parameters not 7 (31800)

  • Smarty notice fix (31807)

  • Handle possibility of a NULL source_record_id (address fatal error) (31784)

  • CiviReport - Fix saving report with is_reserved = false (32141)

  • many relative dates aren't going to 11:59:59 (31429)

  • Use escaping in SQL query for best practice (31741)

  • Fix intermittent ExpiredToken error when Iframe patches applied (341)

  • php8.2 Fix use of curly braces in package (420)

  • PHP compatibility Remove usage of curly braces (419)

  • Make sorting of countries more consistent (31869)

CiviCampaign

  • CiviCampaign - Remove hard-coded reference to unused custom fields (31829)

CiviContribute

  • Authorize.net recurring subscription subsequent contributions not recording (dev/core#5732: 32181)

  • When Importing contributions (including columns for soft credits) the soft credit mapping is not saved and the soft credits are not imported (dev/core#5370: 32087)

  • Fix financial type permissions when label doesn't match name (32189)

  • Fix financial type custom fields (32131)

CiviEvent

  • Events page, problem with pager, more/less than 20 items (dev/core#5758: 32239)

  • Fix PHP Warning in getAdditionalParticipants (31821)

CiviGrant

  • CiviGrant - Remove multi-domain from grant_type option group (31924)

CiviMail

  • Suppress the warning Failed to set final value of List-Unsubscribe (31899)

  • CiviMail: don't pass unused job_id parameter to unsub methods (31811)

CiviMember

  • Convert MembershipLog.modified_date from date to timestamp so we record time as well (31799)

  • Use shared getContactMatchingFields from membership import metadata (31948)

Drupal Integration

  • Missing route cachability metadata in CiviCRM (103)

Standalone Integration

  • Login issue on CiviCRM Standalone: "unexpected error", "All requests that modify the database must be http POST, not GET" (dev/core#5640: 31727)

  • Standalone login page - fix input text color (32226)

  • Standalone login box coloring - fix the text color to black to fix dark mode (31991)

  • Standalone - Fix crash when viewing afform (32059)

  • Standalone - Fix syntax error typo in conditional (32041)

  • Standalone - explicitly set $appRootPath and $settingsPath as globals in boot file (31777)

  • Standalone events (31846)

Miscellany

  • Consolidate dupesByParam (31974)

  • Fold copy of getTree back into only caller (31933)

  • Move helper function from test to shared test trait (31936)

  • Upgrade core extensions to civix v25.01.1 (31885)

  • Oauth - Upgrade to civix v2025.01.1 and EFv2 (31887)

  • Bump min php version to 8.0 (31765, 340, 86, 185 and 689)

  • Add deprecated warning to BaseIPN (31453)

  • Fix another code place to not use legacy query method (31900)

  • Update comment block with additional possible values (31904)

  • Stop setting unused variable (31938)

  • Minor query simplification (31897)

  • Stop passing unused parameter (31896)

  • Deprecate a couple of old bits of format wrangling (31934)

  • Finish deprecating PDFLetterCommon class (31810)

  • Move remaining 'build' functions from AdditionalInfo to only caller (31956)

  • Standardise parameter type (bool) (31973)

  • Move parameter standardisation to before the hook, add test (31972)

  • Membership renewal form: Minor Cleanup and simplification (31875)

  • Address deprecation notice (31960)

  • Install script - minor code cleanup (31847)

  • Stop using deprecated constant (31952)

  • Api3 - Remove old functions deprecated since 2014 (31773)

  • Stop using function to get name of non-localised table civicrm_mailing_event_opened (31901)

  • UFField: remove unclear field_name check (31891)

  • Remove unused properties, duplicate catch (31937)

  • Remove unreachable code (31939)

  • Removed Unneccesary Enter Text (31858)

  • Remove variables used for 2 non-localisatable tables (31902)

  • Remove another call to dao->query() (31898)

  • Remove unreachable & do-nothing code (31962)

  • Remove deprecated SMSCommon.php (31778)

  • Remove assigns from previously shared code (31957)

  • Remove function noisily deprecated in 2022 (31949)

  • Remove unused parameter from private function (31955)

  • Remove BAO_CustomGroup::postProcess deprecated in 5.71 (31932)

  • Remove pointless price set wrangling from batch data entry form (31675)

  • Delete unused Location.php (31776)

  • Delete unused TabHeader.php (31775)

  • CRM_Import_Parser - Delete unused deprecated functions (31774)

  • SloppyTestChecker - Refine the definitions (31798)

  • [REF] userFrameworkLogging - update settings meta and switch System public property to a function (31857)

  • (REF) CiviUnitTestCase - Plug more leaks (31796)

  • [REF][PHP8.2] Declare properties on CRM_Admin_Form_WordReplacements (31806)

  • [REF][PHP8.2] Declare property in CRM_Mailing_Form_ForwardMailing (31819)

  • [REF][PHP8.2] Declare fields property in CRM_Contact_Form_Task_Batch (31818)

  • [REF][PHP8.2] Declare tabs property in CRM_Campaign_Page_Vote (31817)

  • [REF] Chart kit - move reduce types to a separate service (31916)

  • [REF] Api4 - Remove useless test (31867)

  • REF - Remove some uses of deprecated CRM_Utils_Array::value (31841)

  • [REF] Migrate determining the connection details to use from Drupal8 install file into setup code (31917)

  • (REF) Tests - Sundry cleanups (31795)

  • (REF) Api4TestBase - Each test starts with default list of components (31797)

  • [REF] Add Test of Billing update form for contribution Recur and ensure receipt from is assigned (31905)

  • [REF] Return tempTable name from fillTable (31980)

  • [REF] Remove code no longer needed as setup routine is now smarter See civicrm#31917 (104)

  • [REF] Ensure that Privacy (single checkbox) fields show up on Event Registrations when fields are used in a profile (31692)

  • [NFC] Simplify function call in test (31820)

  • [NFC] remove duplicate from contributor-key.yml (31951)

  • (NFC) mixin/polyfill.php - Tweak boolean notation (31840)

  • Add name to contributor-key.yml (31748)

  • Add name to contributor-key.yml (31743)

  • minor test cleanup (31759)

  • Minor cleanup in test class (31791)

  • Minor clean up in test class (31942)

  • Reduce the hard-codedness of test data (31749)

  • Afform - Test cleanup (31761)

  • Use Mock Handler in A.net test (32214)

  • Fix failing test (32187)

  • Minor clean ups in test classes (31754)

  • Try removing more of the old test dataset (31790)

  • Test clean up on campaign (31755)

  • Some test clean up (31753)

  • SettingsAdminTest - Relax assertion re: permissions on disabled extenions (31815)

  • See if this test data is all used.... (31788)

  • Minor clean up in test classes (31747)

  • Minor test cleanup on setUp & tearDown (31941)

  • SearchKit - Fix unit test assumptions (31805)

  • SearchKit - Fix failing test (31804)

  • Minor test cleanups (31786)

  • Minor test cleanups (31787)

  • minor test cleanup (31760)

  • MixinTestCase - Small usability tweaks (31816)

  • Minor clean ups in test classes (31752)

  • Minor cleanups in test classes (31746)

  • Change version to 6.0.alpha1 (31763)

  • Fix typo in release notes (32057)

  • Add missing PR 31671 to release notes for 5.81.0 (31783)

  • release-notes.md - Update TOC (31978)

  • Run regen (32061)

Credits

This release was developed by the following code authors:

AGH Strategies - Alice Frumin; Agileware - Justin Freeman; Artful Robot - Rich Lott; Benjamin W; BrightMinded Ltd - Bradley Taylor, Anwen Williams; Business & Code - Alain Benbassat; CiviCoop - Jaap Jansma; CiviCRM - Coleman Watts, Tim Otten; Coop SymbioTIC - Mathieu Lutfy, Shane Bill; Dave D; gitressa; JMA Consulting - Monish Deb, Seamus Lee; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Mosier Consulting - Justin Mosier; Nicol Wistreich; Reflexive Communications - Sandor Semsey; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design - Kurund Jalmi, William Mortada; Wikimedia Foundation - Eileen McNaughton

Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments:

Albrecht Schmidt; chumkui; Coop SymbioTIC - Samuel Vanhove; Daniel Strum; dev ALL IN APPLI; Francesc Bassas i Bullich; Fuzion - Luke Stewart, Peter Davis; Guydn; Jade Gaunt; JMA Consulting - Joe Murray; Lemniscus - Noah Miller; ozhamlet; Richard Baugh; Semper IT - Karin Gerritsen; Sjoerd Langkemper