From: Alice Frumin Date: Fri, 23 Oct 2020 01:04:04 +0000 (-0500) Subject: 5.31 release notes first pass X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=77e31358ef250b002278dcfa8202cf27b07359be;p=civicrm-core.git 5.31 release notes first pass --- diff --git a/contributor-key.yml b/contributor-key.yml index adf56d17aa..59783ae97a 100644 --- a/contributor-key.yml +++ b/contributor-key.yml @@ -1355,6 +1355,9 @@ - name : Steve Binkowski jira : s.bink + +- github : shaneonabike + name : Abeilles en Vélo / Bees on a bike - name : Sheila Burkett organization: Spry Digital diff --git a/release-notes/5.31.0.md b/release-notes/5.31.0.md index 39c066ccf3..03e595b337 100644 --- a/release-notes/5.31.0.md +++ b/release-notes/5.31.0.md @@ -9,692 +9,1140 @@ Released November 4, 2020 - **[Credits](#credits)** - **[Feedback](#feedback)** +## Synopsis + +| *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** | + ## Features ### Core CiviCRM -- **crm- Missing Summary ([597](https://github.com/civicrm/civicrm-drupal/pull/597))** - -## Bugs resolved +- **Implement more nuanced 'Administer CiviCRM permisions + ([16482](https://github.com/civicrm/civicrm-core/pull/16482) and + [18671](https://github.com/civicrm/civicrm-core/pull/18671))** -### Core CiviCRM + Breaks the "Administer CiviCRM" permission into two separate permissions: + 'administer CiviCRM system' and 'administer CiviCRM data'. -- **Fix unreleased regression on search tasks from basic search ([18766](https://github.com/civicrm/civicrm-core/pull/18766))** +- **Buttonrama ([18410](https://github.com/civicrm/civicrm-core/pull/18410) and + [307](https://github.com/civicrm/civicrm-packages/pull/307))** -- **dev/core#2125 Ensure that the id that is used in the field is the gro… ([18776](https://github.com/civicrm/civicrm-core/pull/18776))** + Improves appearance of buttons with icons and makes buttons look and feel more + consistent. -- **dev/core#2117 - Add compatibility aliases for 'scriptFile' and 'styleFile' resources ([18765](https://github.com/civicrm/civicrm-core/pull/18765))** +- **Custom field form reform + ([18419](https://github.com/civicrm/civicrm-core/pull/18419))** -- **dev/core#2119 Fix mailing code to exclude deleted recipients ([18763](https://github.com/civicrm/civicrm-core/pull/18763))** + Improves the admin form for creating/updating custom fields by improving + validation, making defaults easier to select and allowing more flexibility + around changing the widget type. -- **dev/event#43 Contact Dashboard: fix Event Participations ([18758](https://github.com/civicrm/civicrm-core/pull/18758))** +- **Add higher-level support for "bundles" and "collections" of resources + ([18247](https://github.com/civicrm/civicrm-core/pull/18247))** -- **dev/core#2118 supply better automatic placeholders for select (5.31 intra-rc) ([18753](https://github.com/civicrm/civicrm-core/pull/18753))** + Adds support for "Resource Bundles" and "Resource Collections" to make it + easier for developers to add groups of files to a page or form. -- **Rebuild triggers after utf8mb4 conversion ([18751](https://github.com/civicrm/civicrm-core/pull/18751))** +- **Bootstrap3 CSS (Work towards + [dev/user-interface#27](https://lab.civicrm.org/dev/user-interface/-/issues/27): + [18354](https://github.com/civicrm/civicrm-core/pull/18354))** -- **Remove explicit COLLATE utf8_bin from RelationshipCache trigger ([18721](https://github.com/civicrm/civicrm-core/pull/18721))** + Makes it easier for extension developers to work with Bootstrap3 by making it + available as a "Resource Bundle". -- **dev/core#2108 fix deprecation notice take 2 ([18717](https://github.com/civicrm/civicrm-core/pull/18717))** +- **Add select2-bootstrap to greenwich theme + ([18579](https://github.com/civicrm/civicrm-core/pull/18579))** -- **dev/core#2102 Fix hang on event edit ([18713](https://github.com/civicrm/civicrm-core/pull/18713))** + Improves styling of select2s when using the greenwich theme. -- **Search ext: misc cleanup & fixes ([18723](https://github.com/civicrm/civicrm-core/pull/18723))** +- **Afform GUI: add bootstrap3 + ([18583](https://github.com/civicrm/civicrm-core/pull/18583))** -- **core#2105: Groups children now get shown with SPAN CSS error ([18719](https://github.com/civicrm/civicrm-core/pull/18719))** + Improves styling of the Afform extension. -- **dev/core#2108 fix deprecation notice ([18716](https://github.com/civicrm/civicrm-core/pull/18716))** +- **Add bootstrap bundle to search + ([18550](https://github.com/civicrm/civicrm-core/pull/18550))** -- **dev/core#2096 Fix in-master-only regression on creating new events ([18710](https://github.com/civicrm/civicrm-core/pull/18710))** + Improves styling of the search kit extension. -- **Add unit test that ultimately failed to hit the desired code but does add cover ([18708](https://github.com/civicrm/civicrm-core/pull/18708))** +- **APIv4 Search: Improve GROUP_CONCAT with :label prefix + ([18572](https://github.com/civicrm/civicrm-core/pull/18572))** -- **Move to alpha1 stage ([18711](https://github.com/civicrm/civicrm-core/pull/18711))** + Improves the Search UI by exposing the DISTINCT modifier and fixing currency + formatting. -- **Add options to Mail Account settings to improve inbound mail processing ([18624](https://github.com/civicrm/civicrm-core/pull/18624))** +- **Search extension: edit smart groups + ([18431](https://github.com/civicrm/civicrm-core/pull/18431))** -- **Fix way of identityfing custom serialized fields ([18360](https://github.com/civicrm/civicrm-core/pull/18360))** + Allows the search extension to edit smart groups. -- **Display url_site and url_recur based on if the form elements exist ([18324](https://github.com/civicrm/civicrm-core/pull/18324))** +- **Search ext: rename to Search Kit, mark as beta + ([18672](https://github.com/civicrm/civicrm-core/pull/18672))** -- **dev/core#2073 Fix use of legacy leaky method in tested code ([18701](https://github.com/civicrm/civicrm-core/pull/18701))** + Makes "Search Kit" beta1 extension available for installation for all users. -- **Enotice fix ([18707](https://github.com/civicrm/civicrm-core/pull/18707))** +- **Search ext: support complex joins & HAVING clause in api4 smart groups + ([18644](https://github.com/civicrm/civicrm-core/pull/18644))** -- **dev/core#2073 Fix use of legacy leaky method in tested code ([18702](https://github.com/civicrm/civicrm-core/pull/18702))** + Improves the new search extension and APIv4 smart groups in core to support + any entity that can join with Contact, including full support for calculated + fields and the HAVING clause. -- **ParticipantListing Report: only display the View link for web, unhardcode others ([18704](https://github.com/civicrm/civicrm-core/pull/18704))** +- **Select field fixes for screen reader + ([17675](https://github.com/civicrm/civicrm-core/pull/17675))** -- **dev/core#2073 Fix use of legacy leaky method in tested code ([18699](https://github.com/civicrm/civicrm-core/pull/18699))** + Improves user experience when using a screen reader by having the place holder + text for select2's include the entity name. Screen readers do not read labels + for select2's so having more explicit instruction in the placeholder (which is + read) improves usability for these users. -- **Fix default report permissions when creating reports from CiviCampaign ([18493](https://github.com/civicrm/civicrm-core/pull/18493))** +- **Add modified_date to list of activity tokens + ([18611](https://github.com/civicrm/civicrm-core/pull/18611))** -- **5.30 ([18706](https://github.com/civicrm/civicrm-core/pull/18706))** + Adds Modified date to the list of available activity tokens. -- **dev/core#2073 Fix use of legacy leaky method in tested code ([18700](https://github.com/civicrm/civicrm-core/pull/18700))** +- **Add an 'Execute Now' button to the job log + ([18593](https://github.com/civicrm/civicrm-core/pull/18593))** -- **[NFC] dev/core#2053 Extend nextedGroup test to show that it will retu… ([18698](https://github.com/civicrm/civicrm-core/pull/18698))** + Adds an "Execute Now" button to the Job log to make it easier to rerun a + scheduled job if needed. -- **dev/core#2079 [REF] Fix some more calls to getTokens to make it clear only the first return value is used ([18654](https://github.com/civicrm/civicrm-core/pull/18654))** +- **Proposal - add ability to segment query logs + ([dev/core#2032](https://lab.civicrm.org/dev/core/-/issues/2032): + [18471](https://github.com/civicrm/civicrm-core/pull/18471) and + [309](https://github.com/civicrm/civicrm-packages/pull/309))** -- **dev/core#2079 [Ref] Clarify calls to CRM_Utils_Token::getTokenDetails ([18653](https://github.com/civicrm/civicrm-core/pull/18653))** + Creates an option to redirect sql logging output to a new file. -- **dev/core#2087 Remove extraneous CRM_Core_BAO_UFMatch::updateUFName call ([18667](https://github.com/civicrm/civicrm-core/pull/18667))** +- **Send email to contacts when clicking on their email address on the contact's + card ([dev/core#1790](https://lab.civicrm.org/dev/core/-/issues/1790): + [18623](https://github.com/civicrm/civicrm-core/pull/18623))** -- **Greenwich - fix conflict btw bootstrap & jQuery UI button ([18696](https://github.com/civicrm/civicrm-core/pull/18696))** + Improves the contact card by making the email a link which takes the user to a + form to send an email to that contact. -- **dev/core#2056 Only retrieve pcp & soft_credit info when needed ([18556](https://github.com/civicrm/civicrm-core/pull/18556))** +- **Add custom field groups to Membership Contribution Detail report + ([dev/report#49](https://lab.civicrm.org/dev/report/-/issues/49): + [18420](https://github.com/civicrm/civicrm-core/pull/18420))** -- **Exclude api4 from IDS check ([18695](https://github.com/civicrm/civicrm-core/pull/18695))** + Adds contact custom fields to the Membership Contribution Detail report. -- **dev/core#2047 [Ref] Remove obsolete check ([18500](https://github.com/civicrm/civicrm-core/pull/18500))** +- **Ability to Search Smart or Normal Group using additional filter on Manage + Group page ([dev/report#45](https://lab.civicrm.org/dev/report/-/issues/45): + [18379](https://github.com/civicrm/civicrm-core/pull/18379) and + [18246](https://github.com/civicrm/civicrm-core/pull/18246))** -- **Fix complexity on cache key ([18650](https://github.com/civicrm/civicrm-core/pull/18650))** + Adds a filter "Group Type" to the Manage Groups page which can be used + to filter by normal or smart groups. -- **dev/core#2039 Remove extraneous location queries from contact.create->Location::block path ([18663](https://github.com/civicrm/civicrm-core/pull/18663))** +- **Ability to Send Invoice with modified subject and CC it + ([dev/user-interface#30](https://lab.civicrm.org/dev/user-interface/-/issues/30): + [18286](https://github.com/civicrm/civicrm-core/pull/18286))** -- **dev/core#2017 Deprecate an unused function ([18662](https://github.com/civicrm/civicrm-core/pull/18662))** + Adds the ability to edit the subject and cc fields when emailing an invoice + from a contribution. -- **dev/core#2073 Fix memory leak in well tested code ([18693](https://github.com/civicrm/civicrm-core/pull/18693))** +### CiviContribute -- **Search ext & APIv4 Explorer: Refactor clause from directive to component ([18683](https://github.com/civicrm/civicrm-core/pull/18683))** +- **Move ACls on LineItem create to financialacls core extension + ([18339](https://github.com/civicrm/civicrm-core/pull/18339))** -- **Remove ajax timeout from contribution page on behalf of ([18140](https://github.com/civicrm/civicrm-core/pull/18140))** + Simplifies the code base by moving the financial ACL handling from the + LineItem BAO to the financialacls core extension. -- **dev/core#2046 Fix api to call Address.create now it is standardised ([18682](https://github.com/civicrm/civicrm-core/pull/18682))** +- **Convert core processors to use Guzzle and bring them under CI (Work Towards + [dev/financial#143](https://lab.civicrm.org/dev/financial/-/issues/143): + [18350](https://github.com/civicrm/civicrm-core/pull/18350))** -- **dev/translation#54 Ensure that Component titles are translated in lin… ([18690](https://github.com/civicrm/civicrm-core/pull/18690))** + Converts PaypalPro to use Guzzle in order to bring it in under unit testing. -- **dev/core#2073 Remove memory leak in heavily tested (merge) code ([18692](https://github.com/civicrm/civicrm-core/pull/18692))** +- **Migrate Eway(Single Currency) Payment Processor Type out into its own + extension ([18349](https://github.com/civicrm/civicrm-core/pull/18349))** -- **5.30 ([18694](https://github.com/civicrm/civicrm-core/pull/18694))** + Moves the Eway processor to its own extension. -- **dev/core#1790 - Contact Card - Email Links ([18623](https://github.com/civicrm/civicrm-core/pull/18623))** +- **Make 'Record Payment' & 'Record Refund' visible regardless of whether the + balance 'requires' one + ([dev/financial#86](https://lab.civicrm.org/dev/financial/-/issues/86): + [18417](https://github.com/civicrm/civicrm-core/pull/18417))** -- **dev/core#2039 Call del directly - rather than now-deprecated blockDelete ([18684](https://github.com/civicrm/civicrm-core/pull/18684))** + Makes it so the "Record Payment" and "Record Refund" links on Contributions + are always visible. -- **Search ext: rename to Search Kit, mark as beta ([18672](https://github.com/civicrm/civicrm-core/pull/18672))** +- **Propose altering the default of send notification to contributor checkbox on + cancel or edit recurring to off + ([dev/core#1986](https://lab.civicrm.org/dev/core/-/issues/1986): + [18537](https://github.com/civicrm/civicrm-core/pull/18537))** -- **[REF] Fix compatability with Drupal 9 installing of var_dumper ([18679](https://github.com/civicrm/civicrm-core/pull/18679))** + When canceling or editing a recurring donation, changes the send notification + default to off. -- **dev/core#2046 Migrate BAO_Address::create towards standardisation ([18658](https://github.com/civicrm/civicrm-core/pull/18658))** +- **PCP action links support for hook_civicrm_links + ([dev/core#2061](https://lab.civicrm.org/dev/core/-/issues/2061): + [18570](https://github.com/civicrm/civicrm-core/pull/18570))** -- **dev/core#2046 Fix blockDelete to delete while ensuring is_primary is valid ([18661](https://github.com/civicrm/civicrm-core/pull/18661))** + Ensures `hook_civicrm_links` can be used by extension developers for PCP + actions. -- **dev/core#2079 [REF] clean up call to apiQuery ([18664](https://github.com/civicrm/civicrm-core/pull/18664))** +- **Add Line Item v4 API + ([dev/core#1980](https://lab.civicrm.org/dev/core/-/issues/1980): + [18388](https://github.com/civicrm/civicrm-core/pull/18388) and + [18352](https://github.com/civicrm/civicrm-core/pull/18352))** -- **change civicrm_price_set.min_amount to float ([18677](https://github.com/civicrm/civicrm-core/pull/18677))** + Adds the "Line Item" entity to v4 API. -- **dev/core#2093 - Fix red error box on new individual form and ltrim typos and doubling-up of class attribute ([18678](https://github.com/civicrm/civicrm-core/pull/18678))** +- **Improve metadata on LineItem DAO + ([18521](https://github.com/civicrm/civicrm-core/pull/18521))** -- **dev/core#2079 [REF] clean up call to apiQuery ([18665](https://github.com/civicrm/civicrm-core/pull/18665))** + Adds labels to line item meta data. -- **dev/core#2079 do not return never-used, query-wasting variable ([18657](https://github.com/civicrm/civicrm-core/pull/18657))** +### CiviMail -- **[REF] Remove XML_Util dependancy within ewaysingle extension ([18676](https://github.com/civicrm/civicrm-core/pull/18676))** +- **Add options to Mail Account settings to improve inbound mail processing + ([18624](https://github.com/civicrm/civicrm-core/pull/18624))** -- **When exporting for composer-style deployment, exclude the `.gitignore` file ([18673](https://github.com/civicrm/civicrm-core/pull/18673))** + Adds fields to the Mail Account settings form to improve inbound email + processing, specifically the following check boxes: -- **dev/core#2087 move uf_match check above the primary check ([18675](https://github.com/civicrm/civicrm-core/pull/18675))** + 1. 'Skip emails which do not have a Case ID or Case token' + 2. 'Do not create new contacts when filing emails' -- **[REF] Fix adding in the accessKey based on the button array ([18674](https://github.com/civicrm/civicrm-core/pull/18674))** +- **Change wording on the Opt Out and Unsubscribe pages + ([18338](https://github.com/civicrm/civicrm-core/pull/18338))** -- **Move membership tab add/submit membership buttons to PHP layer ([18143](https://github.com/civicrm/civicrm-core/pull/18143))** + Improves messaging to end user on Opt Out and Unsubscribe pages. -- **Add modified_date to list of activity tokens ([18611](https://github.com/civicrm/civicrm-core/pull/18611))** +### Drupal Integration -- **dev/drupal#119 - Avoid crash from recursion on unhandled exceptions ([18610](https://github.com/civicrm/civicrm-core/pull/18610))** +- **Finish allowing use of SSL to connect to database + (Work Towards [dev/core#1926](https://lab.civicrm.org/dev/core/-/issues/1926): + [18264](https://github.com/civicrm/civicrm-core/pull/18264))** -- **fix labels on new admin permissions ([18671](https://github.com/civicrm/civicrm-core/pull/18671))** + Makes it so if the CMS config is using ssl for mysql then it autodetects the + ssl config for the --db parameter. -- **Select field fixes for screen reader ([17675](https://github.com/civicrm/civicrm-core/pull/17675))** +- **drush civicrm-ext-list add ext's status filter and show version number + ([597](https://github.com/civicrm/civicrm-drupal/pull/597))** -- **Search ext: support complex joins & HAVING clause in api4 smart groups ([18644](https://github.com/civicrm/civicrm-core/pull/18644))** + Extends the drush command `drush civicrm-ext-list` so that users can: + - Filter by the extension's status (installed, uninstalled, disabled) + - Show the extension version number in the result list + - Use the `--out` option to print results as json or as a pretty table -- **composer.json - Update compile-lib and compile-plugin ([18670](https://github.com/civicrm/civicrm-core/pull/18670))** +## Bugs resolved -- **[REF] Add in css classes to make the save and preview button on the C… ([18647](https://github.com/civicrm/civicrm-core/pull/18647))** +### Core CiviCRM -- **dev/core#2090 - Undefined index on contact's activity tab when there's an activity that has no With Contact ([18669](https://github.com/civicrm/civicrm-core/pull/18669))** +- **View Payment owned by Different contact on Membership and Participant View. + ([dev/report#48](https://lab.civicrm.org/dev/report/-/issues/48): + [18281](https://github.com/civicrm/civicrm-core/pull/18281))** -- **5.30 to master ([18666](https://github.com/civicrm/civicrm-core/pull/18666))** + Ensures that when viewing a Membership or Participant with a related payment + from a different contact that payment is displayed. -- **(REF) Make it easier for extensions to define basic bundles ([18660](https://github.com/civicrm/civicrm-core/pull/18660))** +- **Public contribution form and Checksums: billing information not loaded if + using multiple processors + ([18642](https://github.com/civicrm/civicrm-core/pull/18642))** -- **dev/core#1818 Upgrade AngularJS from 1.5.11 to 1.8 ([18635](https://github.com/civicrm/civicrm-core/pull/18635))** + Changes the default attributes for new custom value tables to be dependent on + the current in use collation to prevent issues using multiple payment + processors on front end contribution forms. -- **dev/core#2057 - Failing unit test for passing in activity contacts as scalars to Activity::create() ([18636](https://github.com/civicrm/civicrm-core/pull/18636))** +- **Deadlocks on acl_cache + (Work Towards [dev/core#1486](https://lab.civicrm.org/dev/core/-/issues/1486): + [18403](https://github.com/civicrm/civicrm-core/pull/18403))** -- **dev/core#1393 - distmaker - Skip new file "vendor/bin/cssmin" ([18659](https://github.com/civicrm/civicrm-core/pull/18659))** + Removes foreign keys from the ACL cache tables as they are likely to + hinder performance. -- **dev/core#2057 Remove extraneous activity contact queries on activity update ([18625](https://github.com/civicrm/civicrm-core/pull/18625))** +- **Proposal apiv4 - revisit required parameters on location entities + ([dev/core#2044](https://lab.civicrm.org/dev/core/-/issues/2044): + [18575](https://github.com/civicrm/civicrm-core/pull/18575))** -- **Fix cache bypass ([18643](https://github.com/civicrm/civicrm-core/pull/18643))** + Makes it so that APIv4 can be used for creating event locations by making + contact_id optional for the Address, Phone and Email entities. -- **dev/core#2079 [REF] Remove reference to second param returned from CRM_Contact_BAO_Query::apiQuery ([18656](https://github.com/civicrm/civicrm-core/pull/18656))** +- **Eliminate "No extensions available for this version of CiviCRM" + ([dev/core#2063](https://lab.civicrm.org/dev/core/-/issues/2063): + [18596](https://github.com/civicrm/civicrm-core/pull/18596))** -- **dev/core#2046 Ensure location BAOs have create actions, deprecate add… ([18606](https://github.com/civicrm/civicrm-core/pull/18606))** + Fixes warning thrown when no public extensions directory is found. -- **[REF] Follow up cleanup from Event Location ([18608](https://github.com/civicrm/civicrm-core/pull/18608))** +- **Group ids in profile fields are not correct + ([dev/core#2125](https://lab.civicrm.org/dev/core/-/issues/2125): + [18776](https://github.com/civicrm/civicrm-core/pull/18776))** -- **dev/core#2079 [REF] Fix some more calls to getTokens to make it clear only the first return value is used ([18655](https://github.com/civicrm/civicrm-core/pull/18655))** + Fixes DB errors when using the groups field in a profile. -- **Fix patently silly code ([18652](https://github.com/civicrm/civicrm-core/pull/18652))** +- **Rebuild triggers after utf8mb4 conversion + ([18751](https://github.com/civicrm/civicrm-core/pull/18751))** -- **dev/core#2073 Improve cleanup on syntax conformance test ([18640](https://github.com/civicrm/civicrm-core/pull/18640))** + Ensures that when the `system.utf8conversion` api call is run the triggers for + relationship_cache are updated to use the right encoding. -- **dev/core#2003 Use Brick/Money to ensure that we display all possible … ([18416](https://github.com/civicrm/civicrm-core/pull/18416))** +- **Remove explicit COLLATE utf8_bin from RelationshipCache trigger + ([18721](https://github.com/civicrm/civicrm-core/pull/18721))** -- **(REF) Switch to composer-compile-lib ([18646](https://github.com/civicrm/civicrm-core/pull/18646))** + Ensure that relationship types can be edited after switching to utf8mb4. -- **dev/core#2046 Rationalise add vs create on website BAO ([18607](https://github.com/civicrm/civicrm-core/pull/18607))** +- **Fix way of identityfing custom serialized fields + ([18360](https://github.com/civicrm/civicrm-core/pull/18360))** -- **dev/core#334 Use the current in use collation and character sets when… ([18642](https://github.com/civicrm/civicrm-core/pull/18642))** + Removes references to field types that no longer exist, specifically the + 'Multi-Select', 'Multi-Select State/Province', and 'Multi-Select Country', + custom field types, which were all removed in 5.27. -- **dev/membership#27 Update outdated membership statuses in preProcess rather than submit ([18621](https://github.com/civicrm/civicrm-core/pull/18621))** +- **Exclude api4 from IDS check + ([18695](https://github.com/civicrm/civicrm-core/pull/18695))** -- **dev/core#2073 Memory drain ([18632](https://github.com/civicrm/civicrm-core/pull/18632))** + Fixes false-positive "suspicious activity" warnings in the IDS (Intrusion + Detection System) when using APIv4. -- **[REF] Add in frontend fields for title and description of group Schem… ([18599](https://github.com/civicrm/civicrm-core/pull/18599))** +- **Fix complexity on cache key + ([18650](https://github.com/civicrm/civicrm-core/pull/18650))** -- **dev/core#2073 Fix a real live leak ([18641](https://github.com/civicrm/civicrm-core/pull/18641))** + Ensures that the cacheKey does not cross-populate values from different users. -- **[Civi\Test] Fix test output noise ([18638](https://github.com/civicrm/civicrm-core/pull/18638))** +- **Use title instead name in status message + ([18406](https://github.com/civicrm/civicrm-core/pull/18406))** -- **dev/core#2075 - E_NOTICE viewing an activity that has no details contents ([18637](https://github.com/civicrm/civicrm-core/pull/18637))** + Fixes help text when an option group is saved to show the title of the option + group instead of the name. -- **core#2063: Don't throw a warning when public ext directory isn't found ([18596](https://github.com/civicrm/civicrm-core/pull/18596))** +- **Update civicrm_handler_field_contact_image.inc + ([625](https://github.com/civicrm/civicrm-drupal/pull/625))** -- **dev/core#1838 Ensure that no fatal error is triggered if you try to a… ([18564](https://github.com/civicrm/civicrm-core/pull/18564))** + Fixes a notice. -- **Set participant status notification to false by default ([18544](https://github.com/civicrm/civicrm-core/pull/18544))** +- **Update civicrm_handler_field_pseudo_constant.inc + ([626](https://github.com/civicrm/civicrm-drupal/pull/626))** -- **dev/core#2073 just tweak a memory leak ([18633](https://github.com/civicrm/civicrm-core/pull/18633))** + Fixes a notice. -- **[REF] Parse ids before sending to single function (minor simplification) ([18630](https://github.com/civicrm/civicrm-core/pull/18630))** +- **Export fix on long custom fields + ([18146](https://github.com/civicrm/civicrm-core/pull/18146))** -- **[NFC/Test] Unit test activity-contact variations ([18619](https://github.com/civicrm/civicrm-core/pull/18619))** +- **Contact form task delete php spelling fix + ([18399](https://github.com/civicrm/civicrm-core/pull/18399))** -- **dev/core#2061 PCP: call the hook_civicrm_links hook for PCP page user actions ([18570](https://github.com/civicrm/civicrm-core/pull/18570))** +- **Component Titles are not translated on the Configuration Checklist page + ([dev/translation#54](https://lab.civicrm.org/dev/translation/-/issues/54): + [18690](https://github.com/civicrm/civicrm-core/pull/18690))** -- **[Test framework] Wrong group id in mailing test setup ([18626](https://github.com/civicrm/civicrm-core/pull/18626))** +- **Contact Dashboard does not show Event Participations for non-admins + ([dev/event#43](https://lab.civicrm.org/dev/event/-/issues/43): + [18758](https://github.com/civicrm/civicrm-core/pull/18758))** -- **5.30 ([18627](https://github.com/civicrm/civicrm-core/pull/18627))** +- **Error when viewing contact merged to permanently deleted contact + ([dev/core#1838](https://lab.civicrm.org/dev/core/-/issues/1838): + [18564](https://github.com/civicrm/civicrm-core/pull/18564))** -- **Simplify call to loadRelatedObjects in repeat/completetransaction ([18613](https://github.com/civicrm/civicrm-core/pull/18613))** +- **E_WARNING when editing custom field with trigger-based logging turned on + ([dev/core#1989](https://lab.civicrm.org/dev/core/-/issues/1989): + [18386](https://github.com/civicrm/civicrm-core/pull/18386))** -- **Update the post-upgrade thank you message to include URLs to CiviCRM contributors, CiviCRM members and minor rewrite ([18559](https://github.com/civicrm/civicrm-core/pull/18559))** +- **Northern Ireland / Wales counties are out of date + ([dev/core#2027](https://lab.civicrm.org/dev/core/-/issues/2027): + [18470](https://github.com/civicrm/civicrm-core/pull/18470))** -- **[REF] Remove unused taskName variable ([18590](https://github.com/civicrm/civicrm-core/pull/18590))** +- **Dropdown for country seems to have reverted to a regular select instead of + select2 ([dev/core#2030](https://lab.civicrm.org/dev/core/-/issues/2030): + [18533](https://github.com/civicrm/civicrm-core/pull/18533))** -- **[REF] IPN - move unshared chunk of code out of shared function ([18600](https://github.com/civicrm/civicrm-core/pull/18600))** +- **Multiple email activity cc recipients get scrunched together in recorded + activity details field + ([dev/core#2040](https://lab.civicrm.org/dev/core/-/issues/2040): + [18504](https://github.com/civicrm/civicrm-core/pull/18504))** -- **[REF] Paypal std ipn Move not-actually shared-code out of shared code function ([18536](https://github.com/civicrm/civicrm-core/pull/18536))** +- **When exporting for composer-style deployment, exclude the `.gitignore` file + ([18673](https://github.com/civicrm/civicrm-core/pull/18673))** -- **[REF] Remove some unused params, move one to where it is used ([18614](https://github.com/civicrm/civicrm-core/pull/18614))** +- **Fix patently silly code + ([18652](https://github.com/civicrm/civicrm-core/pull/18652))** -- **[Ref] Extract getOrderParams ([18617](https://github.com/civicrm/civicrm-core/pull/18617))** +- **Fix cache bypass + ([18643](https://github.com/civicrm/civicrm-core/pull/18643))** - **Enotice fix ([18620](https://github.com/civicrm/civicrm-core/pull/18620))** -- **5.30 ([18622](https://github.com/civicrm/civicrm-core/pull/18622))** - -- **dev/core#2057 Reduce queries when calling activity.create ([18609](https://github.com/civicrm/civicrm-core/pull/18609))** - -- **Add an 'Execute Now' button to the job log ([18593](https://github.com/civicrm/civicrm-core/pull/18593))** - -- **[REF] Very minor cleanup ([18604](https://github.com/civicrm/civicrm-core/pull/18604))** - -- **dev/core#1393 - distmaker - Skip new file "vendor/bin/pscss" ([18605](https://github.com/civicrm/civicrm-core/pull/18605))** - -- **[REF] Fix Event location to create it's locations directly rather than via shared methods ([18586](https://github.com/civicrm/civicrm-core/pull/18586))** - -- **Fix bug in primary handling where TRUE rather than 1 used ([18598](https://github.com/civicrm/civicrm-core/pull/18598))** - -- **Test cleanup fix ([18601](https://github.com/civicrm/civicrm-core/pull/18601))** - -- **dev/translation#51 Fix inheritLocale regression ([18447](https://github.com/civicrm/civicrm-core/pull/18447))** - -- **dev/core#2057 Fix 'sleeper-bug' in apiv4, BAO activity.create ([18567](https://github.com/civicrm/civicrm-core/pull/18567))** - -- **[REF] Consolidate retrieval of searchFormValues ([18591](https://github.com/civicrm/civicrm-core/pull/18591))** - -- **[REF] Include recently added core extensions into distmaker ([18597](https://github.com/civicrm/civicrm-core/pull/18597))** - -- **dev/financial#148 Duplicate validateData onto A.net ([18571](https://github.com/civicrm/civicrm-core/pull/18571))** - -- **Remove double exception handling in repeattransaction ([18594](https://github.com/civicrm/civicrm-core/pull/18594))** - -- **dev/core#2029 E2E.Core.PrevNextTest.testDeleteByCacheKey More debug attempts ([18587](https://github.com/civicrm/civicrm-core/pull/18587))** - -- **pass in "required" value when building preferred_language form element ([18595](https://github.com/civicrm/civicrm-core/pull/18595))** - -- **dev/core#2046 Fix Phone:add to be a pseudonym for Phone.create ([18588](https://github.com/civicrm/civicrm-core/pull/18588))** - -- **[Ref] Extract getFormValues ([18510](https://github.com/civicrm/civicrm-core/pull/18510))** +- **Fix bug in primary handling where TRUE rather than 1 used + ([18598](https://github.com/civicrm/civicrm-core/pull/18598))** -- **Afform GUI: add bootstrap3 ([18583](https://github.com/civicrm/civicrm-core/pull/18583))** - -- **dev/core#1987: Fix Drupal Base 'isFrontEndPage' function to consider Drupal public page for FE theme ([18397](https://github.com/civicrm/civicrm-core/pull/18397))** - -- **[NFC/Test] Unit test for target contacts on Bulk Email when mailing in batches ([18584](https://github.com/civicrm/civicrm-core/pull/18584))** - -- **APIv4 Search: Improve GROUP_CONCAT with :label prefix ([18572](https://github.com/civicrm/civicrm-core/pull/18572))** - -- **SyntaxConformance::testSqlOperators cleanup fix - ensure entities are deleted ([18569](https://github.com/civicrm/civicrm-core/pull/18569))** - -- **[REF] Remove checks as to whether entityShortName is in the component array ([18538](https://github.com/civicrm/civicrm-core/pull/18538))** - -- **Separate export into separate classes to allow unravelling of component handling (Member) ([18512](https://github.com/civicrm/civicrm-core/pull/18512))** - -- **[Ref] Merge code - Move determination about location type to the getDAOForLocation… ([18562](https://github.com/civicrm/civicrm-core/pull/18562))** - -- **Simplify CRM_Core_BAO_Location::createLocBlock by moving eventLocation specific handling back to the class ([18578](https://github.com/civicrm/civicrm-core/pull/18578))** - -- **dev/core#2057 ActivityContact.create Remove select query that never or almost never finds something. ([18566](https://github.com/civicrm/civicrm-core/pull/18566))** - -- **Add select2-bootstrap to greenwich theme ([18579](https://github.com/civicrm/civicrm-core/pull/18579))** - -- **[NFC] Minor cleanup - use strict comparison where possible ([18573](https://github.com/civicrm/civicrm-core/pull/18573))** - -- **Switch to non-deprecated/cached functions for membership pricesets ([18568](https://github.com/civicrm/civicrm-core/pull/18568))** - -- **dev/core#1921 Remove handling for Civi4.2 date bug from paypalProIPN ([18576](https://github.com/civicrm/civicrm-core/pull/18576))** - -- **dev/core#2044 Make contact_id optional on v4 api for Address, phone, email ([18575](https://github.com/civicrm/civicrm-core/pull/18575))** - -- **Add bootstrap bundle to search ([18550](https://github.com/civicrm/civicrm-core/pull/18550))** - -- **Switch to passing payment_processor_id as input param to completeOrder ([18528](https://github.com/civicrm/civicrm-core/pull/18528))** - -- **Switch membership BAO to use non-deprecated cached functions to get membershipType details ([18515](https://github.com/civicrm/civicrm-core/pull/18515))** - -- **[REF] Remove wrangling on activityType param ([18558](https://github.com/civicrm/civicrm-core/pull/18558))** - -- **dev/core#2029 Extend test debug ([18565](https://github.com/civicrm/civicrm-core/pull/18565))** - -- **[REF] Remove unreachable lines ([18535](https://github.com/civicrm/civicrm-core/pull/18535))** +- **Enotice fix ([18707](https://github.com/civicrm/civicrm-core/pull/18707))** -- **dev/core#2040 - Multiple email activity cc recipients get scrunched together in recorded activity details field ([18504](https://github.com/civicrm/civicrm-core/pull/18504))** +- **Greenwich - fix conflict btw bootstrap & jQuery UI button + ([18696](https://github.com/civicrm/civicrm-core/pull/18696))** -- **dev/core#2030 ensure that the Country selector is a Select 2 and ensu… ([18533](https://github.com/civicrm/civicrm-core/pull/18533))** +- **Remove double exception handling in repeattransaction + ([18594](https://github.com/civicrm/civicrm-core/pull/18594))** -- **Minor test data fix up - ensure domain contact's email is primary ([18561](https://github.com/civicrm/civicrm-core/pull/18561))** +- **Preferred Language in a profile doesn't show/behave as required when so + configured ([dev/core#1883](https://lab.civicrm.org/dev/core/-/issues/1883): + [18595](https://github.com/civicrm/civicrm-core/pull/18595))** -- **dev/core#2017 Remove unused function OpenID::isAllowedToLogin ([18430](https://github.com/civicrm/civicrm-core/pull/18430))** +- **Fix deprecation notice + ([18541](https://github.com/civicrm/civicrm-core/pull/18541))** -- **Minor test fix ([18560](https://github.com/civicrm/civicrm-core/pull/18560))** +- **Replace '&' to 'and' in button label + ([18405](https://github.com/civicrm/civicrm-core/pull/18405))** -- **[REF] Move daoName generation so we don't need to pass the variable name ([18552](https://github.com/civicrm/civicrm-core/pull/18552))** +- **Performance - meta issue for hunting down memory leaks + ([dev/core#2073](https://lab.civicrm.org/dev/core/-/issues/2073): + [18640](https://github.com/civicrm/civicrm-core/pull/18640), + [18701](https://github.com/civicrm/civicrm-core/pull/18701), + [18699](https://github.com/civicrm/civicrm-core/pull/18699), + [18702](https://github.com/civicrm/civicrm-core/pull/18702), + [18700](https://github.com/civicrm/civicrm-core/pull/18700), + [18692](https://github.com/civicrm/civicrm-core/pull/18692), + [18693](https://github.com/civicrm/civicrm-core/pull/18693), + [18633](https://github.com/civicrm/civicrm-core/pull/18633), + [18641](https://github.com/civicrm/civicrm-core/pull/18641) and + [18632](https://github.com/civicrm/civicrm-core/pull/18632))** -- **[REF] Finally remove deprecated ids handling ([18557](https://github.com/civicrm/civicrm-core/pull/18557))** +- **E_NOTICE viewing an activity that has no details contents + ([dev/core#2075](https://lab.civicrm.org/dev/core/-/issues/2075): + [18637](https://github.com/civicrm/civicrm-core/pull/18637))** -- **5.30 ([18554](https://github.com/civicrm/civicrm-core/pull/18554))** +- **Undefined index on contact's activity tab when there's an activity that has + no With Contact + ([dev/core#2090](https://lab.civicrm.org/dev/core/-/issues/2090): + [18669](https://github.com/civicrm/civicrm-core/pull/18669))** -- **[REF] Update composer compile plugin to latest version ([18553](https://github.com/civicrm/civicrm-core/pull/18553))** +- **Undefined index 'class' on new individual form + ([dev/core#2093](https://lab.civicrm.org/dev/core/-/issues/2093): + [18678](https://github.com/civicrm/civicrm-core/pull/18678))** -- **Remove obsolete load-bootstrap.js ([18551](https://github.com/civicrm/civicrm-core/pull/18551))** +- **Deprecation warnings when making thank-you letters + ([dev/core#2108](https://lab.civicrm.org/dev/core/-/issues/2108): + [18717](https://github.com/civicrm/civicrm-core/pull/18717) and + [18716](https://github.com/civicrm/civicrm-core/pull/18716))** -- **dev/core#2032 Add potential to vary query log files per process ([18471](https://github.com/civicrm/civicrm-core/pull/18471))** +### CiviCampaign -- **Fix deprecation notice ([18541](https://github.com/civicrm/civicrm-core/pull/18541))** +- **Fix default report permissions when creating reports from CiviCampaign + ([18493](https://github.com/civicrm/civicrm-core/pull/18493))** -- **dev/core#2047 [REF] Minor code extraction ([18499](https://github.com/civicrm/civicrm-core/pull/18499))** + Ensures that CiviCampaign report titles are not accessible to users without + proper permissions to view the report. -- **5.30 ([18548](https://github.com/civicrm/civicrm-core/pull/18548))** +### CiviCase -- **Check if BACKDROP_ROOT is defined already ([18545](https://github.com/civicrm/civicrm-core/pull/18545))** +- **Incorrect comparison of status_id when changing status of linked cases + ([dev/core#1979](https://lab.civicrm.org/dev/core/-/issues/1979): + [18309](https://github.com/civicrm/civicrm-core/pull/18309))** -- **Fix customGroup getTableNameByEntityName to recognize all entities ([18546](https://github.com/civicrm/civicrm-core/pull/18546))** +### CiviContribute -- **[REF] Remove now used parameter & make function protected ([18543](https://github.com/civicrm/civicrm-core/pull/18543))** +- **Fix formatLocaleNumericRoundedByCurrency + ([18409](https://github.com/civicrm/civicrm-core/pull/18409))** -- **Fix civi version for greenwich ([18542](https://github.com/civicrm/civicrm-core/pull/18542))** + Ensures that currencies are rounded to the correct decimal point instead of + always 2 decimal points. -- **dev/core#2017 Move function only used by bin/ContributionProcessor to that class ([18458](https://github.com/civicrm/civicrm-core/pull/18458))** +- **change civicrm_price_set.min_amount to float + ([18677](https://github.com/civicrm/civicrm-core/pull/18677))** -- **[NFC] Cleanup in test class ([18539](https://github.com/civicrm/civicrm-core/pull/18539))** + Updates the price set minimum amount field to be float (not int). -- **[REF] Consolidate input params that are primarily used for the membership entity action to an array ([18451](https://github.com/civicrm/civicrm-core/pull/18451))** +- **Incorrect rounding up with priceset fields + ([dev/core#2003](https://lab.civicrm.org/dev/core/-/issues/2003): + [18297](https://github.com/civicrm/civicrm-core/pull/18297) and + [18416](https://github.com/civicrm/civicrm-core/pull/18416))** -- **user-interface#30 Ability to Send Invoice with modified subject and CC ([18286](https://github.com/civicrm/civicrm-core/pull/18286))** + Ensures the amount is saved to the database correctly for price field values + when a value is entered longer than two decimals. -- **report#48 View Payment owned by Different contact on Membership and Participant View ([18281](https://github.com/civicrm/civicrm-core/pull/18281))** +- **Display url_site and url_recur based on if the form elements exist + ([18324](https://github.com/civicrm/civicrm-core/pull/18324))** -- **dev/core#1986 Alter default for send notification to contributor checkbox on cancel or edit recurring to off ([18537](https://github.com/civicrm/civicrm-core/pull/18537))** + Ensures developers can remove fields from the payment processor configuration + form using the build form hook. -- **[REF] Extract the code to determine the DAO name into a functions ([18513](https://github.com/civicrm/civicrm-core/pull/18513))** +- **LineItem pre Hook non-standard on edit + ([dev/core#1994](https://lab.civicrm.org/dev/core/-/issues/1994): + [18340](https://github.com/civicrm/civicrm-core/pull/18340))** -- **Improve metadata on LineItem DAO ([18521](https://github.com/civicrm/civicrm-core/pull/18521))** + Standardizes LineItem pre hook. -- **Greenwich: Add BootstrapCSS support via core extension ([18465](https://github.com/civicrm/civicrm-core/pull/18465))** +- **Performance - do not retrieve soft credits & pcps when not required + ([dev/core#2056](https://lab.civicrm.org/dev/core/-/issues/2056): + [18556](https://github.com/civicrm/civicrm-core/pull/18556))** -- **[REF] Fix deprecated array and string offset access using curly brace… ([18529](https://github.com/civicrm/civicrm-core/pull/18529))** +- **Remove ajax timeout from contribution page on behalf of + ([18140](https://github.com/civicrm/civicrm-core/pull/18140))** -- **5.30 to master ([18531](https://github.com/civicrm/civicrm-core/pull/18531))** +- **property bag's setAmount should ensure dot decimal point + ([18429](https://github.com/civicrm/civicrm-core/pull/18429))** -- **dev/financial#148 Simplify parameters passed to completeOrder ([18479](https://github.com/civicrm/civicrm-core/pull/18479))** +### CiviEvent -- **5.30 ([18523](https://github.com/civicrm/civicrm-core/pull/18523))** +- **Set participant status notification to false by default + ([18544](https://github.com/civicrm/civicrm-core/pull/18544))** -- **Switch backend membership form to use non-deprecated/cached functions to get membership types ([18427](https://github.com/civicrm/civicrm-core/pull/18427))** + Sets the participant status notification checkbox to false by default to avoid + accidental notification emails being sent. -- **dev/core#2043 remove pass-by-reference ([18485](https://github.com/civicrm/civicrm-core/pull/18485))** +- **ParticipantListing Report: only display the View link for web, unhardcode + others ([18704](https://github.com/civicrm/civicrm-core/pull/18704))** -- **[REF] Fix visibility of afform_scanner container service for Symfony … ([18505](https://github.com/civicrm/civicrm-core/pull/18505))** + Ensures that when exporting the Participant Listing report the view links are + not included. -- **Afform Tests - Fix extension tests when run via `civi-test-run` ([18511](https://github.com/civicrm/civicrm-core/pull/18511))** +- **Scheduled reminder: "Additional recipients" receive reminders under + circumstances where they ought not to + ([dev/core#1590](https://lab.civicrm.org/dev/core/-/issues/1590): + [17641](https://github.com/civicrm/civicrm-core/pull/17641))** -- **CRM_Core_Resources::addBundle() - Fix handling of array inputs ([18506](https://github.com/civicrm/civicrm-core/pull/18506))** + Ensures that "Additional recipients" do not receive reminders for deleted + events. -- **Test fix - use valid membership type ([18507](https://github.com/civicrm/civicrm-core/pull/18507))** +- **Email & Phone storage issues in event location + ([dev/core#1973](https://lab.civicrm.org/dev/core/-/issues/1973): + [18488](https://github.com/civicrm/civicrm-core/pull/18488))** -- **Remove long-deprecated hook_civicrm_tabs ([18503](https://github.com/civicrm/civicrm-core/pull/18503))** + Ensures second email and phone values are saved for event locations. -- **dev/core#1973 Fix Email & Phone storage issues in event location ([18488](https://github.com/civicrm/civicrm-core/pull/18488))** +- **Creating new event without email fails + ([dev/core#2096](https://lab.civicrm.org/dev/core/-/issues/2096): + [18710](https://github.com/civicrm/civicrm-core/pull/18710))** -- **dev/core#2039 Fix test to use set up method with more data integrity ([18501](https://github.com/civicrm/civicrm-core/pull/18501))** +- **Changing address on event hangs + ([dev/core#2102](https://lab.civicrm.org/dev/core/-/issues/2102): + [18713](https://github.com/civicrm/civicrm-core/pull/18713))** -- **Ensure DAO base class contains functions to be removed from generated files ([18492](https://github.com/civicrm/civicrm-core/pull/18492))** +### CiviGrant -- **Remove deprecated code lines ([18490](https://github.com/civicrm/civicrm-core/pull/18490))** +- **Grant dashboard counts trashed contacts + ([dev/core#2009](https://lab.civicrm.org/dev/core/-/issues/2009): + [18428](https://github.com/civicrm/civicrm-core/pull/18428))** -- **dev/core#2039 Fix OpenID::add to ensure is_primary is set ([18498](https://github.com/civicrm/civicrm-core/pull/18498))** +### CiviMail -- **dev/core#2039 Add check to ensure all have a primary address, fix identified but in IM.add ([18489](https://github.com/civicrm/civicrm-core/pull/18489))** +- **Possible regression on deleted contacts + ([dev/core#2119](https://lab.civicrm.org/dev/core/-/issues/2119): + [18763](https://github.com/civicrm/civicrm-core/pull/18763))** -- **dev/core#2039 [NFC] Code cleanup in test class ([18497](https://github.com/civicrm/civicrm-core/pull/18497))** + Ensures contacts deleted after a mailing is created do not get the mailing. -- **dev/core#2039 [NFC] Minor cleanup in tests ([18496](https://github.com/civicrm/civicrm-core/pull/18496))** +### CiviMember -- **dev/core#2046 Rationalise add vs create on email BAO ([18495](https://github.com/civicrm/civicrm-core/pull/18495))** +- **Proposal on Membership Renewal form re 'fixMembershipBeforeRenew' + ([dev/membership#27](https://lab.civicrm.org/dev/membership/-/issues/27): + [18621](https://github.com/civicrm/civicrm-core/pull/18621))** -- **dev/core#2039 [NFC] Test cleanup to stop calling Email::add action ([18494](https://github.com/civicrm/civicrm-core/pull/18494))** + Moves the updating of any expired memberships from after the Membership + Renewal form is submitted to when it is loaded resulting in an accurate + status showing on the form. -- **dev/core#2043 remove pass-by-ref ([18484](https://github.com/civicrm/civicrm-core/pull/18484))** +- **Bug When Restoring Overridden Status on Related Memberships + ([dev/core#1854](https://lab.civicrm.org/dev/core/-/issues/1854): + [17742](https://github.com/civicrm/civicrm-core/pull/17742))** -- **(REF) GenerateData - Make it possible to call this via PHP ([18491](https://github.com/civicrm/civicrm-core/pull/18491))** + Ensures related memberships do not get deleted when running the membership + status calculation scheduled job. -- **dev/core#2027 Add/update to UK county list ([18470](https://github.com/civicrm/civicrm-core/pull/18470))** +- **Fix for ongoing issues with static upsetting the apple cart + ([18245](https://github.com/civicrm/civicrm-core/pull/18245))** -- **dev/core#2000 Move afform into core extensions ([18423](https://github.com/civicrm/civicrm-core/pull/18423))** + Ensures that inherited relationships are created more reliably. -- **dev/event#42 [Ref] Separate url path calculation into the relevant classes ([18486](https://github.com/civicrm/civicrm-core/pull/18486))** +- **Multiple Memberships Status Not updated when payment status changed from + pending to Completed + ([dev/core#1942](https://lab.civicrm.org/dev/core/-/issues/1942): + [18232](https://github.com/civicrm/civicrm-core/pull/18232))** -- **dev/core#2039 Set is_primary to 1 on email, address for domain contacts ([18480](https://github.com/civicrm/civicrm-core/pull/18480))** +- **Make period_type mandatory for MembershipType + ([18395](https://github.com/civicrm/civicrm-core/pull/18395))** -- **5.30 ([18487](https://github.com/civicrm/civicrm-core/pull/18487))** +### Backdrop Integration -- **[NFC] Enable APIv4 testing on the Fin ACL Extension Line Item test ([18478](https://github.com/civicrm/civicrm-core/pull/18478))** +- **Check if BACKDROP_ROOT is defined already + ([18545](https://github.com/civicrm/civicrm-core/pull/18545))** -- **[REF] Start the process of separating the search action from the participant form ([18464](https://github.com/civicrm/civicrm-core/pull/18464))** + Fixes the "Constant BACKDROP_ROOT already defined..." notice. -- **dev/core#2017 remove unused SearchTaskHookSample.php ([18463](https://github.com/civicrm/civicrm-core/pull/18463))** +### Drupal Integration -- **dev/core#1486 Remove Foreign Keys from ACL Cache tables and replace o… ([18403](https://github.com/civicrm/civicrm-core/pull/18403))** +- **Make symfony aliased services public + ([18443](https://github.com/civicrm/civicrm-core/pull/18443))** -- **[Ref] Code simplification - remove conditional chunk ([18445](https://github.com/civicrm/civicrm-core/pull/18445))** + Fixes a warning "The "cache.short" service is private, getting it from the + container is deprecated since Symfony 3.2 and will fail in 4.0. You should + either make the service public, or stop using the container directly and use + dependency injection instead. - File: + ...\vendor\symfony\dependency-injection\Container.php - Line: 282" on the + extensions form for Drupal 8 sites. -- **[NFC] Remove trailing whitespace ([18476](https://github.com/civicrm/civicrm-core/pull/18476))** +- **Tarball includes a symlink that goes nowhere, which causes alternate drupal + install method to fail + ([dev/core#1393](https://lab.civicrm.org/dev/core/-/issues/1393): + [18472](https://github.com/civicrm/civicrm-core/pull/18472), + [18605](https://github.com/civicrm/civicrm-core/pull/18605) and + [18659](https://github.com/civicrm/civicrm-core/pull/18659))** -- **dev/financial#86 Make 'Record Payment' & 'Record Refund' visible regardless of whether the balance 'requires' one ([18417](https://github.com/civicrm/civicrm-core/pull/18417))** +- **Exception handling - 'Allowed memory size' exhasted issues + ([dev/drupal#119](https://lab.civicrm.org/dev/drupal/-/issues/119): + [18610](https://github.com/civicrm/civicrm-core/pull/18610))** -- **dev/core#1921 Remove iso convert ([18468](https://github.com/civicrm/civicrm-core/pull/18468))** + Avoid crashes from recursion on unhandled exceptions (most often an issue in + Drupal 8). -- **5.30 ([18474](https://github.com/civicrm/civicrm-core/pull/18474))** +- **inheritLocale regression + ([dev/translation#51](https://lab.civicrm.org/dev/translation/-/issues/51): + [18447](https://github.com/civicrm/civicrm-core/pull/18447))** -- **dev/drupal#138 - Drupal 9 deprecations ([18461](https://github.com/civicrm/civicrm-core/pull/18461))** + Ensures that CiviCRM in multilingual mode respects the Drupal language. -- **dev/core#1393 - distmaker - Fix URL-based installation on D7/BD ([18472](https://github.com/civicrm/civicrm-core/pull/18472))** +- **Drupal 9 deprecations + ([dev/drupal#138](https://lab.civicrm.org/dev/drupal/-/issues/138): + [18461](https://github.com/civicrm/civicrm-core/pull/18461))** -- **dev/core#1921 Further removal of iso date handling ([18469](https://github.com/civicrm/civicrm-core/pull/18469))** + Ensures CiviCRM plays nice with Drupal 9. -- **Search extension: edit smart groups ([18431](https://github.com/civicrm/civicrm-core/pull/18431))** +- **Do not block user incase 'Require approval' is checked + ([18329](https://github.com/civicrm/civicrm-core/pull/18329))** -- **Fix parameters for MembershipTest ([18467](https://github.com/civicrm/civicrm-core/pull/18467))** + Ensures users created via a profile are set to active in Drupal8 to prevent + issues with the email verification step. -- **Update code comments ([18460](https://github.com/civicrm/civicrm-core/pull/18460))** +- **Fix customGroup getTableNameByEntityName to recognize all entities + ([18546](https://github.com/civicrm/civicrm-core/pull/18546))** -- **5.30 to master ([18462](https://github.com/civicrm/civicrm-core/pull/18462))** + Ensures that all entities are recognized by webform integration. -- **dev/core#1921 remove isoToMysql ([18456](https://github.com/civicrm/civicrm-core/pull/18456))** +- **Custom field values not showing in Drupal 7 Views filter + ([dev/core#1929](https://lab.civicrm.org/dev/core/-/issues/1929): + [611](https://github.com/civicrm/civicrm-drupal/pull/611))** -- **[REF] Simplify array construction ([18432](https://github.com/civicrm/civicrm-core/pull/18432))** +- **Fix theme configuration section on Display preference and improve + `isFrontendPage` function for Drupal CMS + ([dev/core#1987](https://lab.civicrm.org/dev/core/-/issues/1987): + [18396](https://github.com/civicrm/civicrm-core/pull/18396) and + [18397](https://github.com/civicrm/civicrm-core/pull/18397))** -- **dev/core#1921 remove isoToMysql ([18457](https://github.com/civicrm/civicrm-core/pull/18457))** +- **Drupal 7 - Groups children now get shown with SPAN CSS error + ([dev/core#2105](https://lab.civicrm.org/dev/core/-/issues/2105): + [18719](https://github.com/civicrm/civicrm-core/pull/18719))** -- **[REF] minor tidy up on membershipStatus::create & add ([18435](https://github.com/civicrm/civicrm-core/pull/18435))** +- **composer.json - Update compile-lib and compile-plugin + ([18670](https://github.com/civicrm/civicrm-core/pull/18670))** -- **Pass in activity type rather than calculate it ([18450](https://github.com/civicrm/civicrm-core/pull/18450))** +## Miscellany -- **Move definition of userName to where it is used and remove an unused parameter ([18452](https://github.com/civicrm/civicrm-core/pull/18452))** +- **Take the guesswork out of rendering clientside CRM variables + ([18262](https://github.com/civicrm/civicrm-core/pull/18262))** -- **dev/financial#149 Add permission = false to apiv4 call to address unreleased regression ([18454](https://github.com/civicrm/civicrm-core/pull/18454))** +- **Improve consistency of metadata type declarations + ([18147](https://github.com/civicrm/civicrm-core/pull/18147))** -- **5.30 to master ([18455](https://github.com/civicrm/civicrm-core/pull/18455))** +- **Use eventID rather than the object in completeTransaction + ([18358](https://github.com/civicrm/civicrm-core/pull/18358))** -- **Offer singular entity titles ([18434](https://github.com/civicrm/civicrm-core/pull/18434))** +- **Load event title from participantID + ([18376](https://github.com/civicrm/civicrm-core/pull/18376))** -- **Remove unnecessary debug from tests which messes up array output ([18446](https://github.com/civicrm/civicrm-core/pull/18446))** +- **Fix Invoice class to not call validateData + ([18372](https://github.com/civicrm/civicrm-core/pull/18372))** -- **Make symfony aliased services public ([18443](https://github.com/civicrm/civicrm-core/pull/18443))** +- **Finish deprecating BaseIPN->completeTransaction + ([18381](https://github.com/civicrm/civicrm-core/pull/18381))** -- **5.30 to master ([18440](https://github.com/civicrm/civicrm-core/pull/18440))** +- **Add postAssert to check payments and contributions are valid on all tests. + ([18317](https://github.com/civicrm/civicrm-core/pull/18317))** -- **[REF] Folllow up cleanup - remove now unused param ([18438](https://github.com/civicrm/civicrm-core/pull/18438))** +- **Switch frontend contribution form to cached/non-deprecated functions for + membershipTypes + ([18404](https://github.com/civicrm/civicrm-core/pull/18404))** + +- **Ensure DAO base class contains functions to be removed from generated files + ([18492](https://github.com/civicrm/civicrm-core/pull/18492))** + +- **Switch backend membership form to use non-deprecated/cached functions to get + membership types + ([18427](https://github.com/civicrm/civicrm-core/pull/18427))** + +- **Greenwich: Add BootstrapCSS support via core extension + ([18465](https://github.com/civicrm/civicrm-core/pull/18465))** + +- **Fix civi version for greenwich + ([18542](https://github.com/civicrm/civicrm-core/pull/18542))** + +- **Switch to passing payment_processor_id as input param to completeOrder + ([18528](https://github.com/civicrm/civicrm-core/pull/18528))** + +- **Switch membership BAO to use non-deprecated cached functions to get + membershipType details + ([18515](https://github.com/civicrm/civicrm-core/pull/18515))** + +- **Separate export into separate classes to allow unravelling of component + handling (Member) + ([18512](https://github.com/civicrm/civicrm-core/pull/18512))** + +- **Simplify CRM_Core_BAO_Location::createLocBlock by moving eventLocation + specific handling back to the class + ([18578](https://github.com/civicrm/civicrm-core/pull/18578))** + +- **Update the post-upgrade thank you message to include URLs to CiviCRM + contributors, CiviCRM members and minor rewrite + ([18559](https://github.com/civicrm/civicrm-core/pull/18559))** + +- **Simplify call to loadRelatedObjects in repeat/completetransaction + ([18613](https://github.com/civicrm/civicrm-core/pull/18613))** + +- **Move membership tab add/submit membership buttons to PHP layer + ([18143](https://github.com/civicrm/civicrm-core/pull/18143))** + +- **Remove extraneous UF match queries + ([dev/core#2087](https://lab.civicrm.org/dev/core/-/issues/2087): + [18667](https://github.com/civicrm/civicrm-core/pull/18667) and + [18675](https://github.com/civicrm/civicrm-core/pull/18675))** + +- **Can't send SMS to mailing group whose parent isn't a mailing group (Clean up + [dev/core#2053](https://lab.civicrm.org/dev/core/-/issues/2053): + [18698](https://github.com/civicrm/civicrm-core/pull/18698))** + +- **Merge - ensure location entities remaining on deleted contacts have + is_primary integrity + (Clean up [dev/core#2047](https://lab.civicrm.org/dev/core/-/issues/2047): + [18499](https://github.com/civicrm/civicrm-core/pull/18499) and + [18500](https://github.com/civicrm/civicrm-core/pull/18500))** + +- **[cq] Do not pass by reference where avoidable + (Work Towards [dev/core#2043](https://lab.civicrm.org/dev/core/-/issues/2043): + [18484](https://github.com/civicrm/civicrm-core/pull/18484) and + [18485](https://github.com/civicrm/civicrm-core/pull/18485))** + +- **Fix the Test Result (1 failure / -190) + E2E.Core.PrevNextTest.testDeleteByCacheKey recurring test issue + ([dev/core#2029](https://lab.civicrm.org/dev/core/-/issues/2029): + [18587](https://github.com/civicrm/civicrm-core/pull/18587) and + [18565](https://github.com/civicrm/civicrm-core/pull/18565))** + +- **SyntaxConformance::testSqlOperators cleanup fix - ensure entities are + deleted ([18569](https://github.com/civicrm/civicrm-core/pull/18569))** + +- **Move afform to be a core extension + ([dev/core#2000](https://lab.civicrm.org/dev/core/-/issues/2000): + [18423](https://github.com/civicrm/civicrm-core/pull/18423))** + +- **Upgrade Angular from 1.5 => 1.8 + ([dev/core#1818](https://lab.civicrm.org/dev/core/-/issues/1818): + [18635](https://github.com/civicrm/civicrm-core/pull/18635))** + +- **Extraneous queries - activities (Work Towards + [dev/core#2057](https://lab.civicrm.org/dev/core/-/issues/2057): + [18625](https://github.com/civicrm/civicrm-core/pull/18625), + [18566](https://github.com/civicrm/civicrm-core/pull/18566), + [18609](https://github.com/civicrm/civicrm-core/pull/18609), + [18636](https://github.com/civicrm/civicrm-core/pull/18636) and + [18567](https://github.com/civicrm/civicrm-core/pull/18567))** + +- **Eliminate unused query on CRM_Core_BAO_CustomQuery::_construct + ([dev/core#2079](https://lab.civicrm.org/dev/core/-/issues/2079): + [18654](https://github.com/civicrm/civicrm-core/pull/18654), + [18653](https://github.com/civicrm/civicrm-core/pull/18653), + [18665](https://github.com/civicrm/civicrm-core/pull/18665), + [18664](https://github.com/civicrm/civicrm-core/pull/18664), + [18656](https://github.com/civicrm/civicrm-core/pull/18656), + [18657](https://github.com/civicrm/civicrm-core/pull/18657) and + [18655](https://github.com/civicrm/civicrm-core/pull/18655))** + +- **Rationalise BAO create vs add functions (Work Towards + [dev/core#2046](https://lab.civicrm.org/dev/core/-/issues/2046): + [18682](https://github.com/civicrm/civicrm-core/pull/18682), + [18658](https://github.com/civicrm/civicrm-core/pull/18658), + [18495](https://github.com/civicrm/civicrm-core/pull/18495), + [18588](https://github.com/civicrm/civicrm-core/pull/18588), + [18661](https://github.com/civicrm/civicrm-core/pull/18661), + [18607](https://github.com/civicrm/civicrm-core/pull/18607) and + [18606](https://github.com/civicrm/civicrm-core/pull/18606))** + +- **Address extraneous location queries + ([dev/core#2039](https://lab.civicrm.org/dev/core/-/issues/2039): + [18496](https://github.com/civicrm/civicrm-core/pull/18496), + [18498](https://github.com/civicrm/civicrm-core/pull/18498), + [18497](https://github.com/civicrm/civicrm-core/pull/18497), + [18494](https://github.com/civicrm/civicrm-core/pull/18494), + [18501](https://github.com/civicrm/civicrm-core/pull/18501), + [18480](https://github.com/civicrm/civicrm-core/pull/18480), + [18489](https://github.com/civicrm/civicrm-core/pull/18489), + [18684](https://github.com/civicrm/civicrm-core/pull/18684) and + [18663](https://github.com/civicrm/civicrm-core/pull/18663))** + +- **Remove unused functions (Work Towards + [dev/core#2017](https://lab.civicrm.org/dev/core/-/issues/2017): + [18662](https://github.com/civicrm/civicrm-core/pull/18662), + [18430](https://github.com/civicrm/civicrm-core/pull/18430), + [18433](https://github.com/civicrm/civicrm-core/pull/18433), + [18463](https://github.com/civicrm/civicrm-core/pull/18463), + [18458](https://github.com/civicrm/civicrm-core/pull/18458))** + +- **Remove unneccessary isoToDate function + ([dev/core#1921](https://lab.civicrm.org/dev/core/-/issues/1921): + [18422](https://github.com/civicrm/civicrm-core/pull/18422), + [18576](https://github.com/civicrm/civicrm-core/pull/18576), + [18359](https://github.com/civicrm/civicrm-core/pull/18359), + [18469](https://github.com/civicrm/civicrm-core/pull/18469), + [18456](https://github.com/civicrm/civicrm-core/pull/18456), + [18457](https://github.com/civicrm/civicrm-core/pull/18457), + [18374](https://github.com/civicrm/civicrm-core/pull/18374), + [18383](https://github.com/civicrm/civicrm-core/pull/18383) and + [18468](https://github.com/civicrm/civicrm-core/pull/18468))** + +- **Deprecate BaseIPN functions validateData & LoadObject (Work Towards + [dev/financial#148](https://lab.civicrm.org/dev/financial/-/issues/148): + [18479](https://github.com/civicrm/civicrm-core/pull/18479) and + [18571](https://github.com/civicrm/civicrm-core/pull/18571))** + +- **Separate out Search participant register form from backoffice form + ([dev/event#42](https://lab.civicrm.org/dev/event/-/issues/42): + [18486](https://github.com/civicrm/civicrm-core/pull/18486))** + +- **Add try catch to main loops on core ipn classes + ([18384](https://github.com/civicrm/civicrm-core/pull/18384))** + +- **Rename variable $key to $participantID to make it clear what it is + ([18371](https://github.com/civicrm/civicrm-core/pull/18371))** + +- **Stop passing / using object when all we need is the id + ([18331](https://github.com/civicrm/civicrm-core/pull/18331))** -- **dev/core#2017 Remove unused property, override function that just calls parent ([18433](https://github.com/civicrm/civicrm-core/pull/18433))** +- **Minor code cleanup - this is only ever called from one place so component is + always event ([18343](https://github.com/civicrm/civicrm-core/pull/18343))** -- **Custom field form reform ([18419](https://github.com/civicrm/civicrm-core/pull/18419))** +- **Membership form test cleanup, date cleanup on form + ([18413](https://github.com/civicrm/civicrm-core/pull/18413))** -- **Replace & to and in button label ([18405](https://github.com/civicrm/civicrm-core/pull/18405))** +- **Search ext: misc cleanup & fixes + ([18723](https://github.com/civicrm/civicrm-core/pull/18723))** -- **property bag's setAmount should ensure dot decimal point ([18429](https://github.com/civicrm/civicrm-core/pull/18429))** +- **Switch to non-deprecated/cached functions for membership pricesets + ([18568](https://github.com/civicrm/civicrm-core/pull/18568))** -- **dev/core#2009 filter grant dashboard to exclude trashed contacts ([18428](https://github.com/civicrm/civicrm-core/pull/18428))** +- **Fix parameters for MembershipTest + ([18467](https://github.com/civicrm/civicrm-core/pull/18467))** -- **Revert "PropertyBag - add cardNumber to getters" ([18425](https://github.com/civicrm/civicrm-core/pull/18425))** +- **Update code comments + ([18460](https://github.com/civicrm/civicrm-core/pull/18460))** -- **NFC Clarify what CRM_Price_BAO_Priceset::getMembershipCount does ([18426](https://github.com/civicrm/civicrm-core/pull/18426))** +- **Pass in activity type rather than calculate it + ([18450](https://github.com/civicrm/civicrm-core/pull/18450))** -- **dev/core#1980 Add v4 api LineItem entity ([18388](https://github.com/civicrm/civicrm-core/pull/18388))** +- **Move definition of userName to where it is used and remove an unused + parameter ([18452](https://github.com/civicrm/civicrm-core/pull/18452))** -- **Switch frontend contribution form to cached/non-deprecated functions for membershipTypes ([18404](https://github.com/civicrm/civicrm-core/pull/18404))** +- **Minor code simplification on date handling in getMembershipStatusByDate + ([18421](https://github.com/civicrm/civicrm-core/pull/18421))** -- **PropertyBag - add cardNumber to getters ([17595](https://github.com/civicrm/civicrm-core/pull/17595))** +- **Offer singular entity titles + ([18434](https://github.com/civicrm/civicrm-core/pull/18434))** -- **Make period_type mandatory for MembershipType ([18395](https://github.com/civicrm/civicrm-core/pull/18395))** +- **(REF) GenerateData - Make it possible to call this via PHP + ([18491](https://github.com/civicrm/civicrm-core/pull/18491))** -- **dev/core#1854: Fix Calculation of Overridden Membership Status ([17742](https://github.com/civicrm/civicrm-core/pull/17742))** +- **[REF] Simplify array construction + ([18432](https://github.com/civicrm/civicrm-core/pull/18432))** -- **Use title instead name in status message ([18406](https://github.com/civicrm/civicrm-core/pull/18406))** +- **[REF] minor tidy up on membershipStatus::create & add + ([18435](https://github.com/civicrm/civicrm-core/pull/18435))** -- **Remove error handling from loadObjects ([18393](https://github.com/civicrm/civicrm-core/pull/18393))** +- **[REF] Folllow up cleanup - remove now unused param + ([18438](https://github.com/civicrm/civicrm-core/pull/18438))** -- **Minor code simplification on date handling in getMembershipStatusByDate ([18421](https://github.com/civicrm/civicrm-core/pull/18421))** +- **[REF] Start the process of separating the search action from the participant + form ([18464](https://github.com/civicrm/civicrm-core/pull/18464))** -- **Remove CRM_Contact_BAO_Contact::getPrimaryOpenId ([18424](https://github.com/civicrm/civicrm-core/pull/18424))** +- **[Ref] Code simplification - remove conditional chunk + ([18445](https://github.com/civicrm/civicrm-core/pull/18445))** -- **dev/core#1921 Remove more instances of civi 4.2 date handling ([18422](https://github.com/civicrm/civicrm-core/pull/18422))** +- **[ref] Extract failContribution code + ([18418](https://github.com/civicrm/civicrm-core/pull/18418))** -- **report#49: add contact type custom fields to contribution details ([18420](https://github.com/civicrm/civicrm-core/pull/18420))** +- **[REF] Fix visibility of afform_scanner container service for Symfony … + ([18505](https://github.com/civicrm/civicrm-core/pull/18505))** -- **Export fix on long custom fields ([18146](https://github.com/civicrm/civicrm-core/pull/18146))** +- **[REF] Refactor price field form to allow for unit testing of the form + ([18414](https://github.com/civicrm/civicrm-core/pull/18414))** -- **[ref] Extract failContribution code ([18418](https://github.com/civicrm/civicrm-core/pull/18418))** +- **[REF] Minor readability fix + ([18415](https://github.com/civicrm/civicrm-core/pull/18415))** -- **Buttonrama ([18410](https://github.com/civicrm/civicrm-core/pull/18410))** +- **[REF] change deprecated function to API4 call + ([18076](https://github.com/civicrm/civicrm-core/pull/18076))** -- **Implement more nuanced 'Administer CiviCRM permisions ([16482](https://github.com/civicrm/civicrm-core/pull/16482))** +- **[NFC] Cleanup in test class + ([18539](https://github.com/civicrm/civicrm-core/pull/18539))** -- **dev/core#1590: Don't send reminders on deleted events ([17641](https://github.com/civicrm/civicrm-core/pull/17641))** +- **[REF] Remove now used parameter & make function protected + ([18543](https://github.com/civicrm/civicrm-core/pull/18543))** -- **dev/core#1942 handle multiple membership of same membership type to u… ([18232](https://github.com/civicrm/civicrm-core/pull/18232))** +- **[REF] Consolidate input params that are primarily used for the membership + entity action to an array + ([18451](https://github.com/civicrm/civicrm-core/pull/18451))** -- **Membership form test cleanup, date cleanup on form ([18413](https://github.com/civicrm/civicrm-core/pull/18413))** +- **[REF] Extract the code to determine the DAO name into a functions + ([18513](https://github.com/civicrm/civicrm-core/pull/18513))** -- **[REF] Refactor price field form to allow for unit testing of the form ([18414](https://github.com/civicrm/civicrm-core/pull/18414))** +- **[REF] Fix deprecated array and string offset access using curly brace… + ([18529](https://github.com/civicrm/civicrm-core/pull/18529))** -- **[REF] Minor readability fix ([18415](https://github.com/civicrm/civicrm-core/pull/18415))** +- **[REF] Code cleanup on membership renewal & test + ([18365](https://github.com/civicrm/civicrm-core/pull/18365))** -- **[REF] change deprecated function to API4 call ([18076](https://github.com/civicrm/civicrm-core/pull/18076))** +- **[REF] Improve the human readable name of the eway upgrade step to be … + ([18401](https://github.com/civicrm/civicrm-core/pull/18401))** -- **dev/core#2003 Civicrm_price_field_value.amount truncation when localisation in play ([18297](https://github.com/civicrm/civicrm-core/pull/18297))** +- **[REF] Simplify loading of related objects in transition components + ([18373](https://github.com/civicrm/civicrm-core/pull/18373))** -- **Add postAssert to check payments and contributions are valid on all tests. ([18317](https://github.com/civicrm/civicrm-core/pull/18317))** +- **[REF] simplify interaction with objects in complete order + ([18385](https://github.com/civicrm/civicrm-core/pull/18385))** -- **5.30 ([18412](https://github.com/civicrm/civicrm-core/pull/18412))** +- **[REF] Mark CRM_Contribute_BAO_Contribution_Utils::formatAmount deprec… + ([18387](https://github.com/civicrm/civicrm-core/pull/18387))** -- **Fix formatLocaleNumericRoundedByCurrency ([18409](https://github.com/civicrm/civicrm-core/pull/18409))** +- **[REF] Swap out CRM_Utils_Array::value() - partial pull out from PR 18207 + ([18391](https://github.com/civicrm/civicrm-core/pull/18391))** -- **[REF] Code cleanup on membership renewal & test ([18365](https://github.com/civicrm/civicrm-core/pull/18365))** +- **[REF] Remove unused lines from loadObjects + ([18389](https://github.com/civicrm/civicrm-core/pull/18389))** -- **[REF] Improve the human readable name of the eway upgrade step to be … ([18401](https://github.com/civicrm/civicrm-core/pull/18401))** +- **[REF] Ensure that all bundle container services are public for Symfon… + ([18368](https://github.com/civicrm/civicrm-core/pull/18368))** -- **Remove redundant custom field types ([18378](https://github.com/civicrm/civicrm-core/pull/18378))** +- **[REF] Parse ids before sending to single function (minor simplification) + ([18630](https://github.com/civicrm/civicrm-core/pull/18630))** -- **Contact form task delete php spelling fix ([18399](https://github.com/civicrm/civicrm-core/pull/18399))** +- **[REF] Hide eway extension in UI and only install it if the original e… + ([18377](https://github.com/civicrm/civicrm-core/pull/18377))** -- **Fix for ongoing issues with static upsetting the apple cart ([18245](https://github.com/civicrm/civicrm-core/pull/18245))** +- **[REF] Simplify logic on calling self::updateContributionStatus + ([18357](https://github.com/civicrm/civicrm-core/pull/18357))** -- **dev/core#1987: Enable frontend and backend theme configuration in display preference page for Drupal CMS ([18396](https://github.com/civicrm/civicrm-core/pull/18396))** +- **[REF] Fix adding in the accessKey based on the button array + ([18674](https://github.com/civicrm/civicrm-core/pull/18674))** -- **dev/core#1979 - Incorrect comparison of status_id when changing status of linked cases ([18309](https://github.com/civicrm/civicrm-core/pull/18309))** +- **[REF] Add in frontend fields for title and description of group Schem… + ([18599](https://github.com/civicrm/civicrm-core/pull/18599))** -- **Finish deprecating BaseIPN->completeTransaction ([18381](https://github.com/civicrm/civicrm-core/pull/18381))** +- **[REF] Remove unused taskName variable + ([18590](https://github.com/civicrm/civicrm-core/pull/18590))** -- **Fix Invoice class to not call validateData ([18372](https://github.com/civicrm/civicrm-core/pull/18372))** +- **[REF] IPN - move unshared chunk of code out of shared function + ([18600](https://github.com/civicrm/civicrm-core/pull/18600))** -- **[REF] Simplify loading of related objects in transition components ([18373](https://github.com/civicrm/civicrm-core/pull/18373))** +- **[REF] Paypal std ipn Move not-actually shared-code out of shared code + function ([18536](https://github.com/civicrm/civicrm-core/pull/18536))** -- **[REF] simplify interaction with objects in complete order ([18385](https://github.com/civicrm/civicrm-core/pull/18385))** +- **[REF] Remove some unused params, move one to where it is used + ([18614](https://github.com/civicrm/civicrm-core/pull/18614))** -- **Remove unnecessary call to 'validateData' from pdf generator ([18367](https://github.com/civicrm/civicrm-core/pull/18367))** +- **[Ref] Extract getOrderParams + ([18617](https://github.com/civicrm/civicrm-core/pull/18617))** -- **Change wording on the Opt Out and Unsubscribe pages ([18338](https://github.com/civicrm/civicrm-core/pull/18338))** +- **REF Filter params in completetransaction + ([18321](https://github.com/civicrm/civicrm-core/pull/18321))** -- **[REF] Mark CRM_Contribute_BAO_Contribution_Utils::formatAmount deprec… ([18387](https://github.com/civicrm/civicrm-core/pull/18387))** +- **[REF] Fix compatability with Drupal 9 installing of var_dumper + ([18679](https://github.com/civicrm/civicrm-core/pull/18679))** -- **[NFC] Aim to reduce memory usage in create single value alter test by… ([18394](https://github.com/civicrm/civicrm-core/pull/18394))** +- **[REF] Add test for existing Participant batch update cancel and fix to not + call BaseIPN->cancelled + ([18318](https://github.com/civicrm/civicrm-core/pull/18318))** -- **[NFC/Test framework] Make class name match file name ([18392](https://github.com/civicrm/civicrm-core/pull/18392))** +- **[REF] Use helper function to check if multiLingual + ([604](https://github.com/civicrm/civicrm-drupal/pull/604))** -- **[REF] Swap out CRM_Utils_Array::value() - partial pull out from PR 18207 ([18391](https://github.com/civicrm/civicrm-core/pull/18391))** +- **[REF] Update Versions file and remove Net_URL class as doesn't appear… + ([310](https://github.com/civicrm/civicrm-packages/pull/310))** -- **[REF] Remove unused lines from loadObjects ([18389](https://github.com/civicrm/civicrm-core/pull/18389))** +- **[REF] Remove Eway Libraries and XML_Util as they are now shipped as p… + ([306](https://github.com/civicrm/civicrm-packages/pull/306))** -- **Remove inaccessible call to baseIPN failed ([18369](https://github.com/civicrm/civicrm-core/pull/18369))** +- **[REF] Add in css classes to make the save and preview button on the C… + ([18647](https://github.com/civicrm/civicrm-core/pull/18647))** -- **Rename variable $key to $participantID to make it clear what it is ([18371](https://github.com/civicrm/civicrm-core/pull/18371))** +- **[REF] Move daoName generation so we don't need to pass the variable name + ([18552](https://github.com/civicrm/civicrm-core/pull/18552))** -- **dev/core#1921 Fix legacy date handling ([18383](https://github.com/civicrm/civicrm-core/pull/18383))** +- **[REF] Very minor cleanup + ([18604](https://github.com/civicrm/civicrm-core/pull/18604))** -- **Add try catch to main loops on core ipn classes ([18384](https://github.com/civicrm/civicrm-core/pull/18384))** +- **[REF] Fix Event location to create it's locations directly rather than via + shared methods ([18586](https://github.com/civicrm/civicrm-core/pull/18586))** -- **dev/core#1989 - E_WARNING when editing custom field with logging turned on ([18386](https://github.com/civicrm/civicrm-core/pull/18386))** +- **[REF] Consolidate retrieval of searchFormValues + ([18591](https://github.com/civicrm/civicrm-core/pull/18591))** -- **dev/core#1980 Move tax handling from line item api to BAO to make it available from apiv4 ([18352](https://github.com/civicrm/civicrm-core/pull/18352))** +- **[REF] Include recently added core extensions into distmaker + ([18597](https://github.com/civicrm/civicrm-core/pull/18597))** -- **report#45 Switch out function call CRM_Utils_Array::value and extend … ([18379](https://github.com/civicrm/civicrm-core/pull/18379))** +- **[Ref] Extract getFormValues + ([18510](https://github.com/civicrm/civicrm-core/pull/18510))** -- **Add test to cover existing v3 api setting of tax_amount on line items ([18351](https://github.com/civicrm/civicrm-core/pull/18351))** +- **[REF] Remove checks as to whether entityShortName is in the component array + ([18538](https://github.com/civicrm/civicrm-core/pull/18538))** -- **[REF] Hide eway extension in UI and only install it if the original e… ([18377](https://github.com/civicrm/civicrm-core/pull/18377))** +- **[Ref] Merge code - Move determination about location type to the + getDAOForLocation… + ([18562](https://github.com/civicrm/civicrm-core/pull/18562))** -- **Remove deprecated ids param ([18375](https://github.com/civicrm/civicrm-core/pull/18375))** +- **[REF] Remove unreachable lines + ([18535](https://github.com/civicrm/civicrm-core/pull/18535))** -- **Load event title from participantID ([18376](https://github.com/civicrm/civicrm-core/pull/18376))** +- **[REF] Remove wrangling on activityType param + ([18558](https://github.com/civicrm/civicrm-core/pull/18558))** -- **dev/core#1921 Further removal of iso date handling ([18374](https://github.com/civicrm/civicrm-core/pull/18374))** +- **[REF] Finally remove deprecated ids handling + ([18557](https://github.com/civicrm/civicrm-core/pull/18557))** -- **[REF] Ensure that all bundle container services are public for Symfon… ([18368](https://github.com/civicrm/civicrm-core/pull/18368))** +- **[REF] Update composer compile plugin to latest version + ([18553](https://github.com/civicrm/civicrm-core/pull/18553))** -- **5.30 ([18364](https://github.com/civicrm/civicrm-core/pull/18364))** +- **(REF) Make it easier for extensions to define basic bundles + ([18660](https://github.com/civicrm/civicrm-core/pull/18660))** -- **Migrate Eway(Single Currency) Payment Processor Type out into its own… ([18349](https://github.com/civicrm/civicrm-core/pull/18349))** +- **[REF] Follow up cleanup from Event Location + ([18608](https://github.com/civicrm/civicrm-core/pull/18608))** -- **[NFC] Enable APIv4 Testing on the statusPrefence API Tests ([18366](https://github.com/civicrm/civicrm-core/pull/18366))** +- **(REF) Switch to composer-compile-lib + ([18646](https://github.com/civicrm/civicrm-core/pull/18646))** -- **[REF] Simplify logic on calling self::updateContributionStatus ([18357](https://github.com/civicrm/civicrm-core/pull/18357))** +- **[REF] Remove XML_Util dependancy within ewaysingle extension + ([18676](https://github.com/civicrm/civicrm-core/pull/18676))** -- **Fixed pre hook params for LineItem ([18340](https://github.com/civicrm/civicrm-core/pull/18340))** +- **Remove long-deprecated hook_civicrm_tabs + ([18503](https://github.com/civicrm/civicrm-core/pull/18503))** -- **dev/financial#143 Convert Paypal Pro to use Guzzle ([18350](https://github.com/civicrm/civicrm-core/pull/18350))** +- **Remove redundant custom field types + ([18378](https://github.com/civicrm/civicrm-core/pull/18378) and + ([622](https://github.com/civicrm/civicrm-drupal/pull/622))** -- **Use eventID rather than the object in completeTransaction ([18358](https://github.com/civicrm/civicrm-core/pull/18358))** +- **Remove unnecessary call to 'validateData' from pdf generator + ([18367](https://github.com/civicrm/civicrm-core/pull/18367))** -- **dev/user-interface#27 - Define a "bootstrap3" bundle (skeleton) ([18354](https://github.com/civicrm/civicrm-core/pull/18354))** +- **Remove unnecessary debug from tests which messes up array output + ([18446](https://github.com/civicrm/civicrm-core/pull/18446))** -- **dev/core#1921 Remove some places where the ghost of 2014 is getting special love ([18359](https://github.com/civicrm/civicrm-core/pull/18359))** +- **Remove error handling from loadObjects + ([18393](https://github.com/civicrm/civicrm-core/pull/18393))** -- **report#45 Ability to Search Smart or Normal Group using additional filter on Manage Group page ([18246](https://github.com/civicrm/civicrm-core/pull/18246))** +- **Remove deprecated code lines + ([18490](https://github.com/civicrm/civicrm-core/pull/18490))** -- **Improve consistency of metadata type declarations ([18147](https://github.com/civicrm/civicrm-core/pull/18147))** +- **Remove CRM_Contact_BAO_Contact::getPrimaryOpenId + ([18424](https://github.com/civicrm/civicrm-core/pull/18424))** -- **Fix test to use validateAllContributions ([18348](https://github.com/civicrm/civicrm-core/pull/18348))** +- **Remove inaccessible call to baseIPN failed + ([18369](https://github.com/civicrm/civicrm-core/pull/18369))** -- **Stop passing / using object when all we need is the id ([18331](https://github.com/civicrm/civicrm-core/pull/18331))** +- **Remove pass-by-ref in PaypalProIPN::single + ([18337](https://github.com/civicrm/civicrm-core/pull/18337))** -- **Minor code cleanup - this is only ever called from one place so component is always event ([18343](https://github.com/civicrm/civicrm-core/pull/18343))** +- **Remove obsolete load-bootstrap.js + ([18551](https://github.com/civicrm/civicrm-core/pull/18551))** -- **Preliminary cleanup on test ([18346](https://github.com/civicrm/civicrm-core/pull/18346))** +- **Remove deprecated ids param + ([18375](https://github.com/civicrm/civicrm-core/pull/18375))** -- **Add higher-level support for "bundles" and "collections" of resources ([18247](https://github.com/civicrm/civicrm-core/pull/18247))** +- **Remove unused deprecated handling for partial_amount_to_pay + ([18328](https://github.com/civicrm/civicrm-core/pull/18328))** -- **dev/core#1926 - Try to autodetect mysql ssl settings from the CMS config ([18264](https://github.com/civicrm/civicrm-core/pull/18264))** +- **Minor test data fix up - ensure domain contact's email is primary + ([18561](https://github.com/civicrm/civicrm-core/pull/18561))** -- **5.30 ([18344](https://github.com/civicrm/civicrm-core/pull/18344))** +- **Minor test fix + ([18560](https://github.com/civicrm/civicrm-core/pull/18560))** -- **Move ACls on LineItem create to financialacls core extension ([18339](https://github.com/civicrm/civicrm-core/pull/18339))** +- **Preliminary cleanup on test + ([18346](https://github.com/civicrm/civicrm-core/pull/18346))** -- **Take the guesswork out of rendering clientside CRM variables ([18262](https://github.com/civicrm/civicrm-core/pull/18262))** +- **Fix test to use validateAllContributions + ([18348](https://github.com/civicrm/civicrm-core/pull/18348))** -- **REF Filter params in completetransaction ([18321](https://github.com/civicrm/civicrm-core/pull/18321))** +- **Afform Tests - Fix extension tests when run via `civi-test-run` + ([18511](https://github.com/civicrm/civicrm-core/pull/18511))** -- **Remove unused deprecated handling for partial_amount_to_pay ([18328](https://github.com/civicrm/civicrm-core/pull/18328))** +- **Test fix - use valid membership type + ([18507](https://github.com/civicrm/civicrm-core/pull/18507))** -- **Do not block user incase 'Require approval' is checked ([18329](https://github.com/civicrm/civicrm-core/pull/18329))** +- **Test cleanup fix + ([18601](https://github.com/civicrm/civicrm-core/pull/18601))** -- **Remove pass-by-ref in PaypalProIPN::single ([18337](https://github.com/civicrm/civicrm-core/pull/18337))** +- **[Civi\Test] Fix test output noise + ([18638](https://github.com/civicrm/civicrm-core/pull/18638))** -- **[REF] Add test for existing Participant batch update cancel and fix to not call BaseIPN->cancelled ([18318](https://github.com/civicrm/civicrm-core/pull/18318))** +- **[Test framework] Wrong group id in mailing test setup + ([18626](https://github.com/civicrm/civicrm-core/pull/18626))** -- **Update civicrm_handler_field_contact_image.inc ([625](https://github.com/civicrm/civicrm-drupal/pull/625))** +- **Add test to cover existing v3 api setting of tax_amount on line items + ([18351](https://github.com/civicrm/civicrm-core/pull/18351))** -- **Update civicrm_handler_field_pseudo_constant.inc ([626](https://github.com/civicrm/civicrm-drupal/pull/626))** +- **Add unit test that ultimately failed to hit the desired code but does add + cover ([18708](https://github.com/civicrm/civicrm-core/pull/18708))** -- **[REF] Use helper function to check if multiLingual ([604](https://github.com/civicrm/civicrm-drupal/pull/604))** +- **[NFC/Test] Unit test activity-contact variations + ([18619](https://github.com/civicrm/civicrm-core/pull/18619))** -- **Fix custom field types for #18378 ([622](https://github.com/civicrm/civicrm-drupal/pull/622))** +- **[NFC/Test] Unit test for target contacts on Bulk Email when mailing in + batches ([18584](https://github.com/civicrm/civicrm-core/pull/18584))** -- **dev/core#1929 Fix filter handler for custom field ([611](https://github.com/civicrm/civicrm-drupal/pull/611))** +- **[NFC] Remove trailing whitespace + ([18476](https://github.com/civicrm/civicrm-core/pull/18476))** -- **5.30 ([219](https://github.com/civicrm/civicrm-wordpress/pull/219))** +- **[NFC] Aim to reduce memory usage in create single value alter test by… + ([18394](https://github.com/civicrm/civicrm-core/pull/18394))** -- **Append CIVICRM_DEBUG_LOG_QUERY to sql log var ([309](https://github.com/civicrm/civicrm-packages/pull/309))** +- **[NFC/Test framework] Make class name match file name + ([18392](https://github.com/civicrm/civicrm-core/pull/18392))** -- **[REF] Update Versions file and remove Net_URL class as doesn't appear… ([310](https://github.com/civicrm/civicrm-packages/pull/310))** +- **[NFC] Minor cleanup - use strict comparison where possible + ([18573](https://github.com/civicrm/civicrm-core/pull/18573))** -- **Add hack to support buttonrama without change to code adding submit ([307](https://github.com/civicrm/civicrm-packages/pull/307))** +- **[NFC] Enable APIv4 Testing on the statusPrefence API Tests + ([18366](https://github.com/civicrm/civicrm-core/pull/18366))** -- **[REF] Remove Eway Libraries and XML_Util as they are now shipped as p… ([306](https://github.com/civicrm/civicrm-packages/pull/306))** +- **NFC Clarify what CRM_Price_BAO_Priceset::getMembershipCount does + ([18426](https://github.com/civicrm/civicrm-core/pull/18426))** -## Miscellany +- **[NFC] Enable APIv4 testing on the Fin ACL Extension Line Item test + ([18478](https://github.com/civicrm/civicrm-core/pull/18478))** ## Credits This release was developed by the following code authors: -AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Justin Freeman; Bastien Ho; Blackfly Solutions - Alan Dixon; CEDC - Laryn Kragt Bakker; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Sunil Pawar; CompuCorp - Camilo Rodriguez, Ivan; Coop SymbioTIC - Mathieu Lutfy; Dave D; iXiam - Luciano Spiegel; JMA Consulting - Monish Deb, Seamus Lee; John Kingsnorth; Lighthouse Consulting and Design - Brian Shaughnessy; Megaphone Technology Consulting - Dennis P. Osorio, Jon Goldberg; MJW Consulting - Matthew Wire; QED42 - Swastik Pareek; Richard van Oosterhout; Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton +AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Justin Freeman; Bastien +Ho; Blackfly Solutions - Alan Dixon; CEDC - Laryn Kragt Bakker; Christian Wach; +Circle Interactive - Pradeep Nayak; CiviCRM - Coleman Watts, Tim Otten; +CiviDesk - Sunil Pawar; CompuCorp - Camilo Rodriguez, Ivan; Coop SymbioTIC - +Mathieu Lutfy; Dave D; iXiam - Luciano Spiegel; JMA Consulting - Monish Deb, +Seamus Lee; John Kingsnorth; Lighthouse Consulting and Design - Brian +Shaughnessy; Megaphone Technology Consulting - Dennis P. Osorio, Jon Goldberg; +MJW Consulting - Matthew Wire; QED42 - Swastik Pareek; Richard van Oosterhout; +Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Tadpole +Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: -AGH Strategies - Andrew Hunt; Agileware - Justin Freeman; Artful Robot - Rich Lott; Betty Dolfing; Blackfly Solutions - Alan Dixon; CEDC - Laryn Kragt Bakker; Christian Wach; Circle Interactive - Pradeep Nayak; civibot[bot]; CiviCoop - Jaap Jansma; civicrm-builder; CiviCRM - Coleman Watts, Josh Gowans, Tim Otten; CiviDesk - Nicolas Ganivet, Sunil Pawar, Yashodha Chaku; CompuCorp - Camilo Rodriguez, Ivan, René Olivo; Coop SymbioTIC - Mathieu Lutfy; Dave D; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit, Luke Stewart; Irene Meisel; iXiam - Luciano Spiegel; JMA Consulting - Joe Murray, Monish Deb, Seamus Lee; John Kingsnorth; lalgwebdev; Lemniscus - Noah Miller; Lighthouse Consulting and Design - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; QED42 - Swastik Pareek; Richard van Oosterhout; Semper IT - Karin Gerritsen; shaneonabike; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton, Maggie Epps +Abeilles en Vélo / Bees on a bike; Artful Robot - Rich Lott; Betty Dolfing; +CiviCoop - Jaap Jansma; CiviCRM - Josh Gowans; CiviDesk - Nicolas Ganivet, +Yashodha Chaku; CompuCorp - René Olivo; Freeform Solutions - Herb van den Dool; +Fuzion - Jitendra Purohit, Luke Stewart; Irene Meisel; JMA Consulting - Joe +Murray; lalgwebdev; Lemniscus - Noah Miller; MJCO - Mikey O'Toole; Wikimedia +Foundation - Maggie Epps ## Feedback These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like to provide feedback on them, please log in to https://chat.civicrm.org/civicrm and contact `@agh1`. -