5.51.0 release notes: added late changes
[civicrm-core.git] / release-notes / 5.37.0.md
CommitLineData
f912721b
AH
1# CiviCRM 5.37.0
2
5a8a1a3a 3Released May 5, 2021
f912721b 4
5a8a1a3a 5- **[Synopsis](#synopsis)**
f912721b
AH
6- **[Features](#features)**
7- **[Bugs resolved](#bugs)**
8- **[Miscellany](#misc)**
9- **[Credits](#credits)**
5a8a1a3a
AH
10- **[Feedback](#feedback)**
11
12## <a name="synopsis"></a>Synopsis
13
14| *Does this version...?* | |
15|:--------------------------------------------------------------- |:-------:|
5783f9a2
AF
16| Fix security vulnerabilities? | no |
17| **Change the database schema?** | **yes** |
18| **Alter the API?** | **yes** |
19| **Require attention to configuration options?** | **yes** |
20| **Fix problems installing or upgrading to a previous version?** | **yes** |
21| **Introduce features?** | **yes** |
22| **Fix bugs?** | **yes** |
f912721b
AH
23
24## <a name="features"></a>Features
25
f912721b
AH
26### Core CiviCRM
27
5783f9a2
AF
28- **Improve quicksearch result presentation to enable browser link functions
29 ([19779](https://github.com/civicrm/civicrm-core/pull/19779))**
30
fe9225a5
AH
31 The results in the quick search in the menu bar now appear as actual links.
32 Clicking an item acts the same as before, but you can now ctrl-click or
33 right-click for advanced functions in your browser (such as to open the link
34 in a new tab or window).
5783f9a2 35
91aa1d80 36- **Add new super-duper-no-permissions-apply permission
5783f9a2
AF
37 ([19797](https://github.com/civicrm/civicrm-core/pull/19797))**
38
fe9225a5
AH
39 A new permission, "Administer all of CiviCRM", is established as a super-duper
40 permission that implicitly has all other CiviCRM permissions. This is much
41 like how a Drupal user with the ID 1 has all permissions, even if they're not
42 individually granted.
5783f9a2
AF
43
44- **AngularJS - Allow loading multiple apps on a single page
45 ([19922](https://github.com/civicrm/civicrm-core/pull/19922))**
46
47 Allows multiple Angular apps to run on a single page. For example, you
48 might display 2x Angular-based tabs, 3x Angular-based WP shortcodes, or 4x
49 Angular-based Drupal blocks.
50
51- **Support mobile devices on public forms
52 ([dev/user-interface#35](https://lab.civicrm.org/dev/user-interface/-/issues/35):
53 [19968](https://github.com/civicrm/civicrm-core/pull/19968))**
54
55 Improves user experience for mobile users on public forms by making labels
56 appear above inputs on small screens.
57
58- **info.xml - Allow PSR-0 style class-loader declarations
59 ([19870](https://github.com/civicrm/civicrm-core/pull/19870))**
60
61 Makes it so extensions may setup classloading in info.xml.
62
63- **We should not be auto-generating 5.xx.beta1.mysql.tpl files
64 ([dev/release#16](https://lab.civicrm.org/dev/release/-/issues/16):
65 [19743](https://github.com/civicrm/civicrm-core/pull/19743))**
66
67 Makes it possible to skip upgrader increments which do not actually require DB
68 updates.
f912721b 69
91aa1d80 70- **Adjust weights on activity contact record types
5783f9a2
AF
71 ([dev/core#2442](https://lab.civicrm.org/dev/core/-/issues/2442):
72 [19992](https://github.com/civicrm/civicrm-core/pull/19992) and
73 [19987](https://github.com/civicrm/civicrm-core/pull/19987))**
f912721b 74
5783f9a2
AF
75 Improves user experience by making the default Activity Contact Record type
76 "Activity Target".
f912721b 77
5783f9a2
AF
78- **The mailings screen is very slow to load when there are many campaigns in
79 the database ([dev/core#2451](https://lab.civicrm.org/dev/core/-/issues/2451):
80 [19766](https://github.com/civicrm/civicrm-core/pull/19766))**
f912721b 81
fe9225a5 82 Improves processing of option groups in select2 elements.
f912721b 83
5783f9a2
AF
84- **Reorganize contact summary template to support non-ajax tabs
85 ([19875](https://github.com/civicrm/civicrm-core/pull/19875))**
f912721b 86
5783f9a2 87 Adds hook support for non-ajax contact summary tabs.
f912721b 88
5783f9a2
AF
89- **Feature Request: API endpoint to trigger rebuild paths
90 ([dev/core#2458](https://lab.civicrm.org/dev/core/-/issues/2458):
91 [19795](https://github.com/civicrm/civicrm-core/pull/19795))**
f912721b 92
5783f9a2 93 Adds an API to trigger rebuilding paths.
f912721b 94
5783f9a2
AF
95- **Add job to cleanup acl_cache table, add setting to disable opportunistic
96 flushing ([dev/core#2477](https://lab.civicrm.org/dev/core/-/issues/2477):
97 [19930](https://github.com/civicrm/civicrm-core/pull/19930))**
f912721b 98
5783f9a2 99 Adds a scheduled job to cleanup acl_cache table (like for smart groups).
f912721b 100
91aa1d80 101- **APIv4 entity parity
5783f9a2
AF
102 ([dev/core#2486](https://lab.civicrm.org/dev/core/-/issues/2486):
103 [19932](https://github.com/civicrm/civicrm-core/pull/19932),
104 [19933](https://github.com/civicrm/civicrm-core/pull/19933) and
105 [19931](https://github.com/civicrm/civicrm-core/pull/19931))**
f912721b 106
5783f9a2
AF
107 Moves towards APIv4 entity parity by adding the following entities: "Payment
108 Token", "Batch" and "Entity Financial trxn".
f912721b 109
5783f9a2 110- **APIv4 - Add CiviCase, CaseType, CaseContact entities
fe9225a5
AH
111 ([19907](https://github.com/civicrm/civicrm-core/pull/19907), followed up by
112 [dev/core#2573](https://lab.civicrm.org/dev/core/-/issues/2573):
113 [20174](https://github.com/civicrm/civicrm-core/pull/20174))**
f912721b 114
5783f9a2 115 Adds support for CiviCase entities to APIv4.
f912721b 116
91aa1d80 117- **Add FinancialTrxn APIv4
5783f9a2 118 ([19918](https://github.com/civicrm/civicrm-core/pull/19918))**
f912721b 119
5783f9a2 120 Adds support for FinancialTrxn to APIv4.
f912721b 121
5783f9a2
AF
122- **Afform - Add submit actions (Work Towards
123 [dev/core#2522](https://lab.civicrm.org/dev/core/-/issues/2522):
fe9225a5
AH
124 [20018](https://github.com/civicrm/civicrm-core/pull/20018) and
125 [20147](https://github.com/civicrm/civicrm-core/pull/20147))**
f912721b 126
5783f9a2 127 Adds in a submit handler and redirect after submit for afform.
f912721b 128
5783f9a2
AF
129- **Add 'readonly' attribute to fields in schema
130 ([dev/core#2397](https://lab.civicrm.org/dev/core/-/issues/2397):
131 [19751](https://github.com/civicrm/civicrm-core/pull/19751) and
132 [19778](https://github.com/civicrm/civicrm-core/pull/19778))**
f912721b 133
5783f9a2
AF
134 Adds metadata to schema to tell SearchKit and Afform which fields are
135 appropriate to show to the user.
f912721b 136
5783f9a2
AF
137- **SearchKit - Add "in-place edit" feature
138 ([19765](https://github.com/civicrm/civicrm-core/pull/19765))**
f912721b 139
5783f9a2 140 Adds a new feature "in-place edit" to search displays.
f912721b 141
91aa1d80 142- **SearchKit - Exposed join filters
5783f9a2
AF
143 ([dev/core#2494](https://lab.civicrm.org/dev/core/-/issues/2494):
144 [19984](https://github.com/civicrm/civicrm-core/pull/19984))**
f912721b 145
5783f9a2 146 Improves SearchKit generated SQL joins.
f912721b 147
5783f9a2
AF
148- **SearchKit - Support implied operators in exposed search forms
149 ([19959](https://github.com/civicrm/civicrm-core/pull/19959))**
f912721b 150
5783f9a2
AF
151 Improves SearchKit by adding support for "Multi-Select" and "Search by range"
152 exposed filters.
f912721b 153
5783f9a2
AF
154- **Expose mapping search task to Search Kit
155 ([19561](https://github.com/civicrm/civicrm-core/pull/19561))**
f912721b 156
5783f9a2 157 Exposes Contact Mapping task to SearchKit.
f912721b 158
5783f9a2
AF
159- **Add created_id & modified_id to civicrm_saved_search
160 ([dev/core#2422](https://lab.civicrm.org/dev/core/-/issues/2422):
161 [19892](https://github.com/civicrm/civicrm-core/pull/19892))**
f912721b 162
5783f9a2 163 Adds created & modified info to SavedSearch listing in SearchKit.
f912721b 164
5783f9a2
AF
165- **SearchKit - Include custom group title with custom field label
166 ([19856](https://github.com/civicrm/civicrm-core/pull/19856))**
f912721b 167
5783f9a2
AF
168 Adds Custom Group title when display custom fields. This makes it easier to
169 tell custom fields apart in SearchKit when they have similar names to core or
170 other custom fields.
f912721b 171
5783f9a2
AF
172- **Afform GUI - Improve drag-n-drop and add link to edit search
173 ([19935](https://github.com/civicrm/civicrm-core/pull/19935))**
f912721b 174
5783f9a2
AF
175 This adds a few UI improvements to Afform, making drag-n-drop smoother and
176 adding a configuration option to edit saved searches.
f912721b 177
5783f9a2
AF
178- **Afform - Add support for email tokens `{afform.myFormUrl}`
179 ([19660](https://github.com/civicrm/civicrm-core/pull/19660))**
f912721b 180
5783f9a2
AF
181 Adds support for Afform email tokens ex: "My public form (Full Hyperlink)" and
182 "My public form (URL)".
f912721b 183
5783f9a2
AF
184- **Embed afforms & search displays on contact summary screen as blocks and tabs
185 ([19887](https://github.com/civicrm/civicrm-core/pull/19887))**
f912721b 186
5783f9a2
AF
187 Enables the creation of blocks and tabs on the contact summary screen,
188 using Afform & SearchKit.
f912721b 189
5783f9a2
AF
190- **Phpunit 8 support - add void to setup
191 ([19974](https://github.com/civicrm/civicrm-core/pull/19974),
192 [19921](https://github.com/civicrm/civicrm-core/pull/19921),
193 [19898](https://github.com/civicrm/civicrm-core/pull/19898),
194 [19901](https://github.com/civicrm/civicrm-core/pull/19901),
195 [19905](https://github.com/civicrm/civicrm-core/pull/19905),
196 [19899](https://github.com/civicrm/civicrm-core/pull/19899),
197 [19925](https://github.com/civicrm/civicrm-core/pull/19925),
198 [19909](https://github.com/civicrm/civicrm-core/pull/19909) and
199 [19900](https://github.com/civicrm/civicrm-core/pull/19900))**
f912721b 200
5783f9a2 201 Work towards supporting PHPunit8.
f912721b 202
5783f9a2
AF
203- **Create reCAPTCHA core extension
204 ([19967](https://github.com/civicrm/civicrm-core/pull/19967))**
f912721b 205
5783f9a2 206 Moves reCAPTCHA from core to a core extension.
f912721b 207
5783f9a2
AF
208- **Include the timezone for date values in the Activity iCal
209 ([19770](https://github.com/civicrm/civicrm-core/pull/19770))**
f912721b 210
5783f9a2
AF
211 Ensures the timezone is specified for the start date value in the Activity
212 iCal.
f912721b 213
5783f9a2 214### CiviContribute
f912721b 215
5783f9a2
AF
216- **Add entity financial account bridge entity
217 ([19927](https://github.com/civicrm/civicrm-core/pull/19927))**
f912721b 218
5783f9a2 219 Adds a new entity 'EntityFinancialAccount'.
f912721b 220
5783f9a2
AF
221- **Enable translation for Contribution Ordinality options on Contribution
222 Detail Report ([19771](https://github.com/civicrm/civicrm-core/pull/19771))**
f912721b 223
5783f9a2 224 Improves translation on the Contribution Detail Report.
f912721b 225
5783f9a2
AF
226- **Enable translation for Contribution Ordinality options on Member
227 Contribution Detail Report
228 ([19772](https://github.com/civicrm/civicrm-core/pull/19772))**
f912721b 229
5783f9a2 230 Improves translation on the Member Contribution Detail Report.
f912721b 231
5783f9a2 232### CiviEvent
f912721b 233
5783f9a2
AF
234- **Include the timezone for date values in the Event iCal
235 ([19762](https://github.com/civicrm/civicrm-core/pull/19762))**
f912721b 236
5783f9a2
AF
237 Ensures the timezone is specified for the start date value in the Event
238 iCal.
f912721b 239
5783f9a2 240### CiviMail
f912721b 241
91aa1d80 242- **MessageTemplates - Convert token processing to use `TokenProcessor`
5783f9a2 243 ([19550](https://github.com/civicrm/civicrm-core/pull/19550))**
f912721b 244
5783f9a2 245 Improves token processing (resulting in some different token processing).
f912721b 246
91aa1d80 247- **Align most of the tokens in the `TokenProcessor` handling with the legacy
5783f9a2
AF
248 handling ([19806](https://github.com/civicrm/civicrm-core/pull/19806) and
249 [19863](https://github.com/civicrm/civicrm-core/pull/19863))**
f912721b 250
5783f9a2
AF
251 Aligns new token processing with legacy token processing handling and moves
252 towards deprecating the Mailing_BAO classes in favor of flexmailer.
f912721b 253
5783f9a2
AF
254- **Upgrader - Display note about token formatting
255 ([19920](https://github.com/civicrm/civicrm-core/pull/19920))**
f912721b 256
5783f9a2
AF
257 Improves communications about tokens that may generate different output after
258 token processing changes made in this release.
f912721b 259
5783f9a2 260### WordPress Integration
f912721b 261
5783f9a2
AF
262- **Cannot create a WordPress account from the Contact record
263 ([dev/wordpress#82](https://lab.civicrm.org/dev/wordpress/-/issues/82):
264 [18982](https://github.com/civicrm/civicrm-core/pull/18982))**
f912721b 265
5783f9a2 266 Adds support for creating WordPress accounts from the contact record.
f912721b 267
5783f9a2
AF
268- **Afform - Support embedding forms via WP shortcodes.
269 ([19687](https://github.com/civicrm/civicrm-core/pull/19687))**
f912721b 270
5783f9a2 271 Adds the ability to embed Afform forms using WordPress shortcodes.
f912721b 272
5783f9a2
AF
273- **Allow shortcodes to be rendered without invoking Civi page
274 ([244](https://github.com/civicrm/civicrm-wordpress/pull/244))**
f912721b 275
5783f9a2
AF
276 Allows CiviCRM core and extensions to supply content for shortcodes without
277 rendering a page; they can simply implement civicrm_shortcode_get_markup and
278 return the content.
f912721b 279
5783f9a2
AF
280## <a name="bugs"></a>Bugs resolved
281
282### Core CiviCRM
283
fef59236
TO
284- **Unable to send individual email with attachment and 3+ recipients
285 ([dev/core#2588](https://lab.civicrm.org/dev/core/-/issues/2588): [20222](https://github.com/civicrm/civicrm-core/pull/20222), [20227](https://github.com/civicrm/civicrm-core/pull/20227))**
286
5783f9a2
AF
287- **Search Kit terminology and help
288 ([dev/report#58](https://lab.civicrm.org/dev/report/-/issues/58):
289 [20033](https://github.com/civicrm/civicrm-core/pull/20033))**
290
291 Renames 'Filters' to 'Having' in the SearchKit UI which is clearer for users
292 familiar with SQL terms.
293
294- **Address location type search errors when using a search profile
295 ([dev/report#59](https://lab.civicrm.org/dev/report/-/issues/59):
296 [19764](https://github.com/civicrm/civicrm-core/pull/19764))**
297
298 Fixes a "DB Error: no such field" when using Advanced Search with a profile
299 used as a search view.
f912721b 300
5783f9a2
AF
301- **civicrm_saved_search FK in civicrm_group should be ON DELETE CACSCADE
302 ([dev/core#1845](https://lab.civicrm.org/dev/core/-/issues/1845):
303 [19312](https://github.com/civicrm/civicrm-core/pull/19312))**
f912721b 304
5783f9a2
AF
305 Change FK on civicrm_group to delete the associated group if a saved search is
306 deleted.
f912721b 307
5783f9a2
AF
308- **Schema - Add readonly to all fields in RelationshipCache entity
309 ([19908](https://github.com/civicrm/civicrm-core/pull/19908))**
f912721b 310
5783f9a2 311 Ensures SearchKit understands that Relationship Cache fields are not editable.
f912721b 312
5783f9a2
AF
313- **Skip UFField.field_name on singleValueAlter as flakey
314 ([19895](https://github.com/civicrm/civicrm-core/pull/19895))**
f912721b 315
5783f9a2 316 Fixes a recurring test fail.
f912721b 317
5783f9a2
AF
318- **Return from getACLRoles when contactID is not null
319 ([19871](https://github.com/civicrm/civicrm-core/pull/19871))**
f912721b 320
5783f9a2 321 Code Cleanup.
f912721b 322
5783f9a2
AF
323- **Add .clear class to break inline flow on social share footer
324 ([19829](https://github.com/civicrm/civicrm-core/pull/19829))**
f912721b 325
5783f9a2
AF
326 Fixes the display of the social share footer for some sites with front end
327 theme conflicts.
f912721b 328
5783f9a2
AF
329- **Enable & do single field metadata conversion for defaultContactCountry
330 ([19697](https://github.com/civicrm/civicrm-core/pull/19697))**
f912721b 331
5783f9a2 332 Ensures the template for defaultContactCountry uses metadata for the field.
f912721b 333
5783f9a2
AF
334- **Activity contact is null challenge
335 ([dev/core#2438](https://lab.civicrm.org/dev/core/-/issues/2438):
336 [19825](https://github.com/civicrm/civicrm-core/pull/19825))**
f912721b 337
5783f9a2
AF
338 Fixes the ability to do "Without" conditions in SearchKit when a bridge table
339 is used (e.g. EntityTag or RelationshipCache).
f912721b 340
5783f9a2
AF
341- **Northern Ireland / Wales counties are out of date
342 ([dev/core#2027](https://lab.civicrm.org/dev/core/-/issues/2027):
343 [19802](https://github.com/civicrm/civicrm-core/pull/19802))**
f912721b 344
5783f9a2 345 Fix state/province abbreviation for Carmarthenshire.
f912721b 346
5783f9a2
AF
347- **Add created_date column to the civicrm_note table
348 ([dev/core#2243](https://lab.civicrm.org/dev/core/-/issues/2243):
349 [19738](https://github.com/civicrm/civicrm-core/pull/19738))**
f912721b 350
5783f9a2 351 Adds a created date to notes.
f912721b 352
5783f9a2
AF
353- **SearchKit request - aggregate without group by
354 ([dev/core#2415](https://lab.civicrm.org/dev/core/-/issues/2415):
355 [19755](https://github.com/civicrm/civicrm-core/pull/19755))**
f912721b 356
91aa1d80 357 Adds API support for aggregate without group by.
f912721b 358
5783f9a2
AF
359- **Can't export link custom fields
360 ([dev/core#2466](https://lab.civicrm.org/dev/core/-/issues/2466):
361 [19839](https://github.com/civicrm/civicrm-core/pull/19839))**
f912721b 362
5783f9a2
AF
363 Ensures users can export custom fields of the type link with a length above
364 around 110 chars.
f912721b 365
5783f9a2
AF
366- **Deprecated function Redis::delete()
367 ([dev/core#2468](https://lab.civicrm.org/dev/core/-/issues/2468):
368 [19830](https://github.com/civicrm/civicrm-core/pull/19830))**
f912721b 369
5783f9a2 370 Removes deprecated function.
f912721b 371
91aa1d80 372- **(APIv3, APIv4) OptionValue.create and OptionValue.update: Setting the default
5783f9a2
AF
373 value (is_default=1) ignores domain ID
374 ([dev/core#2488](https://lab.civicrm.org/dev/core/-/issues/2488):
375 [19970](https://github.com/civicrm/civicrm-core/pull/19970))**
f912721b 376
5783f9a2
AF
377 Ensures when setting the default optionValue thru the API (versions 3 and 4)
378 the query is limited to the specified domain.
f912721b 379
5783f9a2
AF
380- **Regression dedupe threshold
381 ([dev/core#2498](https://lab.civicrm.org/dev/core/-/issues/2498):
382 [20071](https://github.com/civicrm/civicrm-core/pull/20071))**
f912721b 383
5783f9a2 384 Ensures dedupe rule threshold validation works correctly.
f912721b 385
5783f9a2
AF
386- **SearchKit - Flush Angular cache when saving
387 ([20031](https://github.com/civicrm/civicrm-core/pull/20031))**
f912721b 388
5783f9a2
AF
389 Fixes caching issue for search displays embedded in Afforms (as pages,
390 dashlets, tabs, blocks, etc).
f912721b 391
5783f9a2
AF
392- **APIv4 - Standardize generic entity name resolution
393 ([19889](https://github.com/civicrm/civicrm-core/pull/19889))**
f912721b 394
91aa1d80 395 APIv4 code cleanup to enable the addition of a Case API.
f912721b 396
91aa1d80 397- **Upgrade error
5783f9a2
AF
398 ([dev/core#2528](https://lab.civicrm.org/dev/core/-/issues/2528):
399 [20066](https://github.com/civicrm/civicrm-core/pull/20066))**
f912721b 400
5783f9a2
AF
401 Fixes an `(errno: 121 "Duplicate key on write or update")` when upgrading from
402 5.35 - 5.37.
f912721b 403
5783f9a2
AF
404- **Exporting in localized civicrm crashes due to long translations in columns
405 T_Boolean ([dev/core#2164](https://lab.civicrm.org/dev/core/-/issues/2164):
406 [19963](https://github.com/civicrm/civicrm-core/pull/19963))**
f912721b 407
5783f9a2
AF
408- **Scheduled Reminder fails to send if From Name includes comma
409 ([dev/core#2226](https://lab.civicrm.org/dev/core/-/issues/2226):
410 [19603](https://github.com/civicrm/civicrm-core/pull/19603))**
f912721b 411
5783f9a2
AF
412- **The civicrm_alterReportVar hook is not working for contribute detail report
413 ([dev/core#2285](https://lab.civicrm.org/dev/core/-/issues/2285):
414 [19317](https://github.com/civicrm/civicrm-core/pull/19317))**
f912721b 415
91aa1d80 416- **Some API calls no longer give an error when e.g. a database error happens
5783f9a2
AF
417 ([dev/core#2364](https://lab.civicrm.org/dev/core/-/issues/2364):
418 [131](https://github.com/civicrm/civicrm-backdrop/pull/131))**
f912721b 419
91aa1d80 420- **PHP 7.4 - get_magic_quotes_gpc() deprecated in IDS_Monitor
5783f9a2
AF
421 ([dev/core#2366](https://lab.civicrm.org/dev/core/-/issues/2366):
422 [315](https://github.com/civicrm/civicrm-packages/pull/315) and
423 [19851](https://github.com/civicrm/civicrm-core/pull/19851))**
f912721b 424
91aa1d80 425- **Contact custom data date field not working in scheduled reminder
5783f9a2
AF
426 ([dev/core#2383](https://lab.civicrm.org/dev/core/-/issues/2383):
427 [19628](https://github.com/civicrm/civicrm-core/pull/19628))**
f912721b 428
5783f9a2
AF
429- **Add hook support for Activity Contact ([dev/core#2390](dev/core#2390):
430 [19828](https://github.com/civicrm/civicrm-core/pull/19828))**
f912721b 431
5783f9a2
AF
432- **Wrong event fee shown in CiviCRM
433 ([dev/core#2447](https://lab.civicrm.org/dev/core/-/issues/2447):
434 [19810](https://github.com/civicrm/civicrm-core/pull/19810))**
f912721b 435
5783f9a2
AF
436- **Changing a custom field from multiple choice to Text breaks the API
437 ([dev/core#2459](https://lab.civicrm.org/dev/core/-/issues/2459):
438 [19794](https://github.com/civicrm/civicrm-core/pull/19794))**
f912721b 439
5783f9a2
AF
440- **Boolean custom values can't be of type boolean
441 ([dev/core#2461](https://lab.civicrm.org/dev/core/-/issues/2461):
442 [19805](https://github.com/civicrm/civicrm-core/pull/19805))**
f912721b 443
5783f9a2
AF
444- **Feature to file emails on multiple case ids provided in the url not working
445 ([dev/core#2463](https://lab.civicrm.org/dev/core/-/issues/2463):
446 [19873](https://github.com/civicrm/civicrm-core/pull/19873) and
447 [19826](https://github.com/civicrm/civicrm-core/pull/19826))**
f912721b 448
5783f9a2
AF
449- **SearchBuilder: contact search for tags with child-tags broken when using '='
450 operator ([dev/core#2502](https://lab.civicrm.org/dev/core/-/issues/2502):
451 [19961](https://github.com/civicrm/civicrm-core/pull/19961))**
f912721b 452
5783f9a2
AF
453- **CiviReport does not localize custom fields of type Money
454 ([dev/core#2503](https://lab.civicrm.org/dev/core/-/issues/2503):
455 [19962](https://github.com/civicrm/civicrm-core/pull/19962))**
f912721b 456
5783f9a2
AF
457- **SearchKit - remove extra irrelevant fields from bridge joins
458 ([19868](https://github.com/civicrm/civicrm-core/pull/19868))**
f912721b 459
5783f9a2
AF
460- **SearchKit - Fix broken export action
461 ([20003](https://github.com/civicrm/civicrm-core/pull/20003))**
f912721b 462
5783f9a2
AF
463- **SearchKit - remove unused smartGroup code
464 ([19752](https://github.com/civicrm/civicrm-core/pull/19752))**
f912721b 465
5783f9a2
AF
466- **SearchKit - Refactor loading actions list & support custom fields for groups
467 ([19783](https://github.com/civicrm/civicrm-core/pull/19783))**
f912721b 468
91aa1d80 469- **APIv4 Explorer - Prevent long results from breaking layout
5783f9a2 470 ([19853](https://github.com/civicrm/civicrm-core/pull/19853))**
f912721b 471
5783f9a2
AF
472- **APIv4 - Code cleanup & improve links to @see annotations in Explorer
473 ([19798](https://github.com/civicrm/civicrm-core/pull/19798))**
f912721b 474
5783f9a2
AF
475- **APIv4 Explorer - Fix layout in code tab
476 ([19734](https://github.com/civicrm/civicrm-core/pull/19734))**
f912721b 477
91aa1d80 478- **APIv4 - Prevent API adding default join conditions when it shouldn't
5783f9a2 479 ([19993](https://github.com/civicrm/civicrm-core/pull/19993))**
f912721b 480
91aa1d80 481- **Fix APIv4 test sloppiness
5783f9a2 482 ([19754](https://github.com/civicrm/civicrm-core/pull/19754))**
f912721b 483
5783f9a2
AF
484- **APIv4 - Fix GetActions function to work with entityNames that don't match
485 className ([19896](https://github.com/civicrm/civicrm-core/pull/19896))**
f912721b 486
91aa1d80 487- **APIv4 - Add function to get API class name
5783f9a2 488 ([19867](https://github.com/civicrm/civicrm-core/pull/19867))**
f912721b 489
5783f9a2
AF
490- **Afform - Refresh assetBuilder when saving a form
491 ([19998](https://github.com/civicrm/civicrm-core/pull/19998))**
f912721b 492
5783f9a2
AF
493- **Afform - Fix endless spinner on "New Search Display" dropdown
494 ([19997](https://github.com/civicrm/civicrm-core/pull/19997))**
f912721b 495
5783f9a2
AF
496- **Fix issues with "Create User Record" process
497 ([20057](https://github.com/civicrm/civicrm-core/pull/20057))**
f912721b 498
5783f9a2
AF
499- **Fix entity-ref search by id & update search prompt
500 ([20050](https://github.com/civicrm/civicrm-core/pull/20050))**
f912721b 501
5783f9a2
AF
502- **Soft credit fails when membership is created using backend form
503 ([20025](https://github.com/civicrm/civicrm-core/pull/20025))**
f912721b 504
5783f9a2
AF
505- **Rename 'Misc' menu item machine name to a safe string
506 ([19996](https://github.com/civicrm/civicrm-core/pull/19996))**
f912721b 507
5783f9a2
AF
508- **replaceOrgTokens: Remove broken code
509 ([19543](https://github.com/civicrm/civicrm-core/pull/19543))**
f912721b 510
5783f9a2
AF
511- **E-notice fix on serialized setting
512 ([19969](https://github.com/civicrm/civicrm-core/pull/19969))**
f912721b 513
5783f9a2
AF
514- **Pledge - Fix re-calculation of payment dates
515 ([19990](https://github.com/civicrm/civicrm-core/pull/19990))**
f912721b 516
5783f9a2
AF
517- **Fix scrollbars on fullscreen dashboard dashlet
518 ([19981](https://github.com/civicrm/civicrm-core/pull/19981))**
f912721b 519
5783f9a2
AF
520- **Only call getGroupACLRoles if contactID is present
521 ([19894](https://github.com/civicrm/civicrm-core/pull/19894))**
f912721b 522
5783f9a2
AF
523- **Stop passing html to crmMoney
524 ([19941](https://github.com/civicrm/civicrm-core/pull/19941))**
525
526- **Fix to avoid passing non-money to money::format
527 ([19940](https://github.com/civicrm/civicrm-core/pull/19940))**
528
529- **Fix ts() namespace in searchKit & afform extensions
530 ([19729](https://github.com/civicrm/civicrm-core/pull/19729))**
531
532- **Fix for dedupe error under some mysql configs
533 ([19818](https://github.com/civicrm/civicrm-core/pull/19818))**
f912721b
AH
534
535- **Fix loop ([19858](https://github.com/civicrm/civicrm-core/pull/19858))**
536
5783f9a2
AF
537- **Export UI - Only present "save mapping" button to permissioned users
538 ([19733](https://github.com/civicrm/civicrm-core/pull/19733))**
f912721b 539
5783f9a2
AF
540- **Update SocialNetwork.tpl Twitter Intent URL
541 ([19724](https://github.com/civicrm/civicrm-core/pull/19724))**
f912721b 542
5783f9a2
AF
543- **Prevent pages and metabox from loading until CiviCRM is installed
544 ([247](https://github.com/civicrm/civicrm-wordpress/pull/247))**
f912721b 545
5783f9a2
AF
546- **Fix access permissions for sub-pages and "Quick Add" dashlet
547 ([245](https://github.com/civicrm/civicrm-wordpress/pull/245))**
f912721b 548
5783f9a2
AF
549- **Non translatable fields in profile schema
550 ([dev/core#527](https://lab.civicrm.org/dev/core/-/issues/527):
551 [19937](https://github.com/civicrm/civicrm-core/pull/19937))**
f912721b 552
fe9225a5
AH
553- **Merge Contacts fails when custom Contact Reference field allows Multi-Select
554 ([dev/core#2561](https://lab.civicrm.org/dev/core/-/issues/2561):
555 [20142](https://github.com/civicrm/civicrm-core/pull/20142))**
556
557- **Error: Undefined class constant 'MODE_CBC' in
558 `Civi\Crypto\PhpseclibCipherSuite->__construct()`
559 ([dev/core#2564](https://lab.civicrm.org/dev/core/-/issues/2564):
560 [20148](https://github.com/civicrm/civicrm-core/pull/20148))**
561
91aa1d80 562- **SearchKit - Pass-thru permission checks from SearchDisplay::run to API.get
fe9225a5
AH
563 ([20186](https://github.com/civicrm/civicrm-core/pull/20186))**
564
5783f9a2 565### CiviCampaign
f912721b 566
5783f9a2
AF
567- **On New Campaign form, placeholder text for status is weird
568 ([dev/core#2411](https://lab.civicrm.org/dev/core/-/issues/2411):
569 [19768](https://github.com/civicrm/civicrm-core/pull/19768))**
f912721b 570
5783f9a2
AF
571- **Fix incorrect placeholder text on 'Create Campaign' form
572 ([19767](https://github.com/civicrm/civicrm-core/pull/19767))**
f912721b 573
5783f9a2 574### CiviCase
f912721b 575
5783f9a2
AF
576- **Civicase: Wrong Details in Change Custom Data Activity when filling an empty
577 field ([dev/core#2019](https://lab.civicrm.org/dev/core/-/issues/2019):
578 [19735](https://github.com/civicrm/civicrm-core/pull/19735) and
579 [19741](https://github.com/civicrm/civicrm-core/pull/19741))**
f912721b 580
5783f9a2
AF
581 Changing a case custom field from blank to something doesn't show properly
582 what changed.
f912721b 583
5783f9a2
AF
584- **Activity Type and Case Type not being combined correctly in Advanced Search
585 ([dev/report#53](https://lab.civicrm.org/dev/report/-/issues/53):
586 [20009](https://github.com/civicrm/civicrm-core/pull/20009))**
f912721b 587
5783f9a2 588 Allows SearchKit to search by and display cases with their activities.
f912721b 589
5783f9a2
AF
590- **Investigate replacing civicase views with something that is not views
591 ([dev/core#2385](https://lab.civicrm.org/dev/core/-/issues/2385) and
592 [dev/core#2262](https://lab.civicrm.org/dev/core/-/issues/2262):
593 [19642](https://github.com/civicrm/civicrm-core/pull/19642))**
f912721b 594
5783f9a2 595### CiviContribute
f912721b 596
fe9225a5
AH
597- **Changing Payment Method on a Transaction causes fatal error
598 ([dev/core#2577](https://lab.civicrm.org/dev/core/-/issues/2577):
599 [20195](https://github.com/civicrm/civicrm-core/pull/20195))**
600
5783f9a2
AF
601- **Access Control by Financial Type permissioning does not cover
602 contribution_recur (Work Towards
603 [dev/core#2454](https://lab.civicrm.org/dev/core/-/issues/2454):
604 [19788](https://github.com/civicrm/civicrm-core/pull/19788))**
f912721b 605
5783f9a2 606 Ensures Contribution Recur is properly permissioned.
f912721b 607
5783f9a2
AF
608- **Warnings when saving a contribution with recognition date filled in
609 ([dev/financial#172](https://lab.civicrm.org/dev/financial/-/issues/172):
610 [19948](https://github.com/civicrm/civicrm-core/pull/19948))**
f912721b 611
5783f9a2 612 Fixes warnings when saving a contribution with a recognition date.
f912721b 613
5783f9a2
AF
614- **Contribution page creates a wrong amount and probably payment processor use
615 this wrong amount
616 ([dev/core#2449](https://lab.civicrm.org/dev/core/-/issues/2449):
617 [19807](https://github.com/civicrm/civicrm-core/pull/19807))**
f912721b 618
5783f9a2 619 Ensures amounts are saved correcly when localization settings are changed.
f912721b 620
5783f9a2
AF
621- **Activity contact is not updated when contribution contact is changed
622 ([dev/core#2450](https://lab.civicrm.org/dev/core/-/issues/2450):
623 [19820](https://github.com/civicrm/civicrm-core/pull/19820))**
f912721b 624
5783f9a2
AF
625 Ensures source/target activity contacts are updated whenever a contribution is
626 updated.
f912721b 627
5783f9a2
AF
628- **Fix recurring contribution defaults
629 ([dev/core#2487](https://lab.civicrm.org/dev/core/-/issues/2487):
630 [19934](https://github.com/civicrm/civicrm-core/pull/19934))**
f912721b 631
5783f9a2
AF
632 Updates defaults for the civicrm_contribution_recur table to bring the API
633 behaviour closer to the user interface behavior.
f912721b 634
91aa1d80 635- **Simplify decision as to whether to use a PDF on emails
5783f9a2
AF
636 ([dev/financial#162](https://lab.civicrm.org/dev/financial/-/issues/162):
637 [19486](https://github.com/civicrm/civicrm-core/pull/19486))**
f912721b 638
5783f9a2
AF
639- **Minor buttonrama issue with Cancel button after exporting financial batch
640 ([dev/financial#170](https://lab.civicrm.org/dev/financial/-/issues/170):
641 [19787](https://github.com/civicrm/civicrm-core/pull/19787))**
f912721b 642
5783f9a2
AF
643- **False positive message about missing INTL PHP extension on membership type
644 form ([dev/financial#171](https://lab.civicrm.org/dev/financial/-/issues/171):
645 [19929](https://github.com/civicrm/civicrm-core/pull/19929),
646 [19958](https://github.com/civicrm/civicrm-core/pull/19958),
647 [19880](https://github.com/civicrm/civicrm-core/pull/19880),
648 [19876](https://github.com/civicrm/civicrm-core/pull/19876) and
649 [19938](https://github.com/civicrm/civicrm-core/pull/19938))**
f912721b 650
91aa1d80 651- **PHP 7.4 - E_NOTICE every time you save a contribution
5783f9a2
AF
652 ([dev/core#2425](https://lab.civicrm.org/dev/core/-/issues/2425):
653 [19978](https://github.com/civicrm/civicrm-core/pull/19978))**
f912721b 654
91aa1d80 655- **Payment balance should be cast to float, not int, when checking if a
5783f9a2
AF
656 contribution form should load
657 ([dev/core#2453](https://lab.civicrm.org/dev/core/-/issues/2453):
658 [19777](https://github.com/civicrm/civicrm-core/pull/19777))**
f912721b 659
5783f9a2
AF
660- **CiviCRM 5.35.1, truncation of money values where $1,000 donation is recorded
661 as $1 which appears to be truncating at the thousand separator when using the
662 Australian (AU) and US Locale
663 ([dev/core#2493](https://lab.civicrm.org/dev/core/-/issues/2493):
664 [20040](https://github.com/civicrm/civicrm-core/pull/20040))**
f912721b 665
5783f9a2
AF
666- **Fix re-calculation of payment dates on pledge
667 ([19976](https://github.com/civicrm/civicrm-core/pull/19976))**
f912721b 668
5783f9a2
AF
669- **Donot over-ride total amount incase contribution has more than one line item
670 ([19951](https://github.com/civicrm/civicrm-core/pull/19951))**
f912721b 671
5783f9a2
AF
672- **Only include completed contributions in the aggregate custom search
673 ([19936](https://github.com/civicrm/civicrm-core/pull/19936))**
f912721b 674
5783f9a2
AF
675- **Set the `Other Amount` input in a price set to not autocomplete
676 ([19923](https://github.com/civicrm/civicrm-core/pull/19923))**
f912721b 677
91aa1d80 678- **Replace deprecated money_format() fn to support PHP 7.4
5783f9a2
AF
679 ([dev/translation#65](https://lab.civicrm.org/dev/translation/-/issues/65) and
680 [dev/core#1494](https://lab.civicrm.org/dev/core/-/issues/1494):
681 [19753](https://github.com/civicrm/civicrm-core/pull/19753))**
f912721b 682
5783f9a2
AF
683- **Remove text about email receipts for each recurring contribution.
684 ([dev/core#2384](https://lab.civicrm.org/dev/core/-/issues/2384):
685 [19624](https://github.com/civicrm/civicrm-core/pull/19624))**
f912721b 686
5783f9a2 687### CiviEvent
f912721b 688
5783f9a2
AF
689- **Price option reaches max amount causes critical error.
690 ([dev/event#53](https://lab.civicrm.org/dev/event/-/issues/53):
691 [20073](https://github.com/civicrm/civicrm-core/pull/20073))**
f912721b 692
5783f9a2 693 Ensures that on registration forms sold out radio price options are frozen.
f912721b 694
fe9225a5
AH
695- **Cannot "Transfer or Cancel" event participant as admin user
696 ([dev/event#54](https://lab.civicrm.org/dev/event/-/issues/54):
697 [20223](https://github.com/civicrm/civicrm-core/pull/20223))**
698
5783f9a2 699### CiviMail
f912721b 700
5783f9a2
AF
701- **Remove addressee, email_greeting_id, postal_greeting_id from exposed tokens
702 ([19782](https://github.com/civicrm/civicrm-core/pull/19782))**
f912721b 703
5783f9a2 704 Removes support for tokens that are likely to break and are redundant.
f912721b 705
5783f9a2
AF
706- **[regression] CiviMail crashing on send instead of throwing exception when
707 using Job.execute
708 ([dev/mail#72](https://lab.civicrm.org/dev/mail/-/issues/72):
709 [18466](https://github.com/civicrm/civicrm-core/pull/18466))**
f912721b 710
5783f9a2 711### CiviMember
f912721b 712
fe9225a5
AH
713- **Backend Membership Renewal returns a fatal error when min fee is empty
714 ([dev/core#2583](https://lab.civicrm.org/dev/core/-/issues/2583):
715 [20212](https://github.com/civicrm/civicrm-core/pull/20212))**
716
717- **Selecting of price sets not working anymore
718 ([dev/core#2434](https://lab.civicrm.org/dev/core/-/issues/2434):
719 [20158](https://github.com/civicrm/civicrm-core/pull/20158))**
720
721 The membership tab on the contribution page configuration form failed to
722 display the dropdown for choosing a price set. This problem was an unreleased
723 regression prior to 5.36.0 but this one form got missed when fixed.
724
91aa1d80 725- **Update to lifetime membership does not clear the end date
5783f9a2 726 ([19716](https://github.com/civicrm/civicrm-core/pull/19716))**
f912721b 727
5783f9a2 728 Fix membership to clear end date if type is updated to lifetime.
f912721b 729
fe9225a5
AH
730- **When editing a membership with no existing payments, checking the box to
731 record payments results in a total amount of NaN.N
732 ([dev/core#2560](https://lab.civicrm.org/dev/core/-/issues/2560):
733 [20127](https://github.com/civicrm/civicrm-core/pull/20127))**
734
5783f9a2 735### Drupal Integration
f912721b 736
5783f9a2
AF
737- **Rebuild the Drupal route cache.
738 ([19906](https://github.com/civicrm/civicrm-core/pull/19906))**
f912721b 739
5783f9a2
AF
740 Ensures enabling a CiviCRM extension that adds a route on Drupal 8 or 9 does
741 not result in a 404.
f912721b 742
5783f9a2
AF
743- **Drupal 8 hook_uninstall not implemented
744 ([dev/drupal#141](https://lab.civicrm.org/dev/drupal/-/issues/141):
745 [61](https://github.com/civicrm/civicrm-drupal-8/pull/61))**
f912721b 746
5783f9a2
AF
747- **Fix Drupal Base 'isFrontEndPage' Returns Wrong Value After Saving A Settings
748 Page ([dev/core#2464](https://lab.civicrm.org/dev/core/-/issues/2464):
749 [19823](https://github.com/civicrm/civicrm-core/pull/19823))**
f912721b 750
5783f9a2
AF
751- **Fix batch transaction export on D8/9
752 ([19761](https://github.com/civicrm/civicrm-core/pull/19761))**
f912721b 753
5783f9a2 754### WordPress Integration
f912721b 755
5783f9a2
AF
756- **WordPress: avoid PHP notice if the anonymous user does not have any
757 capabilities ([19732](https://github.com/civicrm/civicrm-core/pull/19732))**
f912721b 758
5783f9a2 759## <a name="misc"></a>Miscellany
f912721b 760
5783f9a2
AF
761- **Remove recaptcha library as now part of core extension
762 ([317](https://github.com/civicrm/civicrm-packages/pull/317))**
f912721b 763
5783f9a2
AF
764- **Migrate current recaptcha library into extension and fix a couple of ts
765 calls ([20011](https://github.com/civicrm/civicrm-core/pull/20011))**
f912721b 766
5783f9a2
AF
767- **Add recaptcha to distmaker
768 ([19999](https://github.com/civicrm/civicrm-core/pull/19999))**
f912721b 769
5783f9a2
AF
770- **Use standard function to add reCAPTCHA to PCPAccount form
771 ([20019](https://github.com/civicrm/civicrm-core/pull/20019))**
f912721b 772
5783f9a2
AF
773- **Make testExpiredPriceSet more realistic
774 ([19474](https://github.com/civicrm/civicrm-core/pull/19474))**
f912721b 775
5783f9a2
AF
776- **Remove safe+mode setting
777 ([19833](https://github.com/civicrm/civicrm-core/pull/19833))**
f912721b 778
5783f9a2
AF
779- **Fold back in getGroupACLs
780 ([19882](https://github.com/civicrm/civicrm-core/pull/19882))**
f912721b 781
5783f9a2
AF
782- **Remove getACLRoles
783 ([19879](https://github.com/civicrm/civicrm-core/pull/19879))**
f912721b 784
5783f9a2
AF
785- **Move setting of _includesSoftCredits out of getQuery
786 ([19860](https://github.com/civicrm/civicrm-core/pull/19860))**
f912721b 787
5783f9a2
AF
788- **Upgrade angularJs from 1.8.0 to 1.8.2
789 ([19831](https://github.com/civicrm/civicrm-core/pull/19831))**
f912721b 790
5783f9a2
AF
791- **Bump phpseclib/phpseclib from 2.0.29 to 2.0.31
792 ([19994](https://github.com/civicrm/civicrm-core/pull/19994))**
f912721b 793
5783f9a2
AF
794- **Bump y18n from 4.0.0 to 4.0.1
795 ([19944](https://github.com/civicrm/civicrm-core/pull/19944))**
f912721b 796
5783f9a2
AF
797- **Code cleanup in bootstrap.php
798 ([19834](https://github.com/civicrm/civicrm-core/pull/19834))**
f912721b 799
5783f9a2
AF
800- **Updates to ExportTest
801 ([19884](https://github.com/civicrm/civicrm-core/pull/19884))**
f912721b 802
5783f9a2
AF
803- **Update Unit tests to work with phpunit8
804 ([130](https://github.com/civicrm/civicrm-backdrop/pull/130))**
f912721b 805
5783f9a2
AF
806- **Update Unit tests to work with PHPUnit8
807 ([643](https://github.com/civicrm/civicrm-drupal/pull/643))**
f912721b 808
5783f9a2
AF
809- **Add :void return type to tearDown on a bunch of unit tests
810 ([19897](https://github.com/civicrm/civicrm-core/pull/19897))**
f912721b 811
5783f9a2
AF
812- **Tighten mysql mode in test environment
813 ([19817](https://github.com/civicrm/civicrm-core/pull/19817))**
f912721b 814
5783f9a2
AF
815- **Add further test for token custom fields
816 ([19790](https://github.com/civicrm/civicrm-core/pull/19790))**
f912721b 817
5783f9a2
AF
818- **Remove deprecated code
819 ([19919](https://github.com/civicrm/civicrm-core/pull/19919))**
f912721b 820
5783f9a2
AF
821- **Remove unused private function
822 ([19950](https://github.com/civicrm/civicrm-core/pull/19950))**
f912721b 823
5783f9a2
AF
824- **Remove empty setUp() functions
825 ([19971](https://github.com/civicrm/civicrm-core/pull/19971))**
f912721b 826
5783f9a2
AF
827- **Remove unused variables/assigns from buildMembershipBlock function
828 ([19775](https://github.com/civicrm/civicrm-core/pull/19775))**
f912721b 829
5783f9a2
AF
830- **Remove an unnecessary ampersand
831 ([19821](https://github.com/civicrm/civicrm-core/pull/19821))**
f912721b 832
5783f9a2
AF
833- **Remove now-empty function
834 ([19824](https://github.com/civicrm/civicrm-core/pull/19824))**
f912721b 835
5783f9a2
AF
836- **Remove legacy phpunit param
837 ([19836](https://github.com/civicrm/civicrm-core/pull/19836))**
f912721b 838
91aa1d80 839- **[REF] Fix APIv3 MembershipJob test failure on PHP 7.4 by only doing ch…
5783f9a2 840 ([19844](https://github.com/civicrm/civicrm-core/pull/19844))**
f912721b 841
5783f9a2
AF
842- **[REF] Extract getQueryParams
843 ([19857](https://github.com/civicrm/civicrm-core/pull/19857))**
f912721b 844
5783f9a2
AF
845- **[REF] Clarify & simplify is_recur param
846 ([19812](https://github.com/civicrm/civicrm-core/pull/19812))**
f912721b 847
5783f9a2
AF
848- **[REF] Minor function extraction
849 ([19835](https://github.com/civicrm/civicrm-core/pull/19835))**
f912721b 850
5783f9a2
AF
851- **[REF] Simplify a couple of variables
852 ([19861](https://github.com/civicrm/civicrm-core/pull/19861))**
f912721b 853
5783f9a2
AF
854- **[REF] Simplify BAO_ACL table references
855 ([19869](https://github.com/civicrm/civicrm-core/pull/19869))**
f912721b 856
5783f9a2
AF
857- **[REF] Stdise campaign_id handling
858 ([19877](https://github.com/civicrm/civicrm-core/pull/19877))**
f912721b 859
5783f9a2
AF
860- **[REF] Minor simplification around assigning taxAmount to the template
861 ([19757](https://github.com/civicrm/civicrm-core/pull/19757))**
f912721b 862
5783f9a2
AF
863- **[REF] Remove setting of unused variables
864 ([19800](https://github.com/civicrm/civicrm-core/pull/19800))**
f912721b 865
5783f9a2
AF
866- **[REF] Fold getACLs back into the calling function
867 ([19872](https://github.com/civicrm/civicrm-core/pull/19872))**
f912721b 868
5783f9a2
AF
869- **[REF] Simplify code calculating the number of membership terms
870 ([19801](https://github.com/civicrm/civicrm-core/pull/19801))**
f912721b 871
5783f9a2
AF
872- **[REF] Remove redundant toArray() function
873 ([19885](https://github.com/civicrm/civicrm-core/pull/19885))**
f912721b 874
5783f9a2
AF
875- **[REF] Store the getSearchQueryResults so it can be re-accessed
876 ([19881](https://github.com/civicrm/civicrm-core/pull/19881))**
f912721b 877
5783f9a2
AF
878- **[REF] Minor extraction to help cleanup permission code
879 ([19803](https://github.com/civicrm/civicrm-core/pull/19803))**
f912721b 880
5783f9a2
AF
881- **[REF] Minor parameter cleanup
882 ([19799](https://github.com/civicrm/civicrm-core/pull/19799))**
f912721b 883
5783f9a2
AF
884- **[REF] Extract code to get generic membership parameters
885 ([19784](https://github.com/civicrm/civicrm-core/pull/19784))**
f912721b 886
5783f9a2
AF
887- **[REF] Cleanup on permission code
888 ([19796](https://github.com/civicrm/civicrm-core/pull/19796))**
f912721b 889
5783f9a2
AF
890- **[REF] Extract getPaymentInstrumentID
891 ([19793](https://github.com/civicrm/civicrm-core/pull/19793))**
f912721b 892
5783f9a2
AF
893- **[Ref] Remove copy and paste overkill
894 ([19786](https://github.com/civicrm/civicrm-core/pull/19786))**
f912721b 895
5783f9a2
AF
896- **[REF] getCorePermissions cleanup
897 ([19789](https://github.com/civicrm/civicrm-core/pull/19789))**
f912721b 898
5783f9a2
AF
899- **[REF] Very minor simplification
900 ([19785](https://github.com/civicrm/civicrm-core/pull/19785))**
f912721b 901
91aa1d80 902- **[REF] Fix ContributionPage::recurringNotify to use APIv4, simplify params
5783f9a2 903 ([19639](https://github.com/civicrm/civicrm-core/pull/19639))**
f912721b 904
5783f9a2
AF
905- **[REF] Cleanup code to determine financial_type_id
906 ([19756](https://github.com/civicrm/civicrm-core/pull/19756))**
f912721b 907
91aa1d80 908- **[REF] [Towards membership API] Cleanup access to payment_processor_id
5783f9a2 909 ([19910](https://github.com/civicrm/civicrm-core/pull/19910))**
f912721b 910
5783f9a2
AF
911- **[REF] Remove now redundant code to set line item financial type
912 ([19745](https://github.com/civicrm/civicrm-core/pull/19745))**
f912721b 913
91aa1d80 914- **[REF] [Towards membership API] Duplicate emailReceipt function rather than
5783f9a2 915 silly sharing ([19912](https://github.com/civicrm/civicrm-core/pull/19912))**
f912721b 916
91aa1d80 917- **[REF] [Towards membership API] Simplify message functions
5783f9a2 918 ([19915](https://github.com/civicrm/civicrm-core/pull/19915))**
f912721b 919
5783f9a2
AF
920- **[REF] Extract portion of GroupContact load that builds the temporary table
921 ([19945](https://github.com/civicrm/civicrm-core/pull/19945))**
f912721b 922
5783f9a2
AF
923- **[REF] remove unused code in recordFinancialAccounts
924 ([19769](https://github.com/civicrm/civicrm-core/pull/19769))**
925
926- **[REF] Clean up code around is_email_receipt
927 ([19746](https://github.com/civicrm/civicrm-core/pull/19746))**
928
929- **[REF] Move function from static class to OO class
930 ([19955](https://github.com/civicrm/civicrm-core/pull/19955))**
931
932- **[REF] Extract getMembershipTypeValues
933 ([19924](https://github.com/civicrm/civicrm-core/pull/19924))**
934
935- **(REF) CRM_Upgrade_Form - Remove unused method getRevisionPart()
936 ([19742](https://github.com/civicrm/civicrm-core/pull/19742))**
937
91aa1d80 938- **[REF] [SearchKit Actions] Cleanup around contribution PDF common
5783f9a2
AF
939 ([19904](https://github.com/civicrm/civicrm-core/pull/19904))**
940
941- **[REF] Minor cleanup - remove unused variables
942 ([19980](https://github.com/civicrm/civicrm-core/pull/19980))**
943
944- **REF Ensure that getAmount includes 0s in decimal places up to 2 places
945 ([20074](https://github.com/civicrm/civicrm-core/pull/20074))**
946
947- **[REF] Minor cleanup - strictness & formatting
948 ([19949](https://github.com/civicrm/civicrm-core/pull/19949))**
949
91aa1d80 950- **[REF] [Towards membership API] more consistent handling on amount
5783f9a2
AF
951 ([19911](https://github.com/civicrm/civicrm-core/pull/19911))**
952
91aa1d80 953- **[REF] [Towards membership API] Simplify calculation of recurring membership
5783f9a2
AF
954 parameters ([19893](https://github.com/civicrm/civicrm-core/pull/19893))**
955
956- **[REF] Simplify setting of softcredit form options (minor)
957 ([19891](https://github.com/civicrm/civicrm-core/pull/19891))**
958
959- **[NFC] Minor coding standards cleanup
960 ([19838](https://github.com/civicrm/civicrm-core/pull/19838))**
961
91aa1d80 962- **[NFC] Add in "void" statements on various Core Ext Tests to future support PHP…
5783f9a2
AF
963 ([19832](https://github.com/civicrm/civicrm-core/pull/19832))**
964
965- **[NFC] Minor test cleanup
966 ([19852](https://github.com/civicrm/civicrm-core/pull/19852))**
967
968- **[NFC] Cleanup in test class
969 ([19866](https://github.com/civicrm/civicrm-core/pull/19866))**
970
971- **[NFC] Fix logging schema test to work on MySQL8 as it no longer outpu…
972 ([19850](https://github.com/civicrm/civicrm-core/pull/19850))**
973
974- **[NFC] Fix test failures on PHP 7.4 caused by either NULL being set fo…
975 ([19849](https://github.com/civicrm/civicrm-core/pull/19849))**
976
91aa1d80 977- **[NFC] Fix test failures on MySQL 8 caused by change in output of eith…
5783f9a2
AF
978 ([19847](https://github.com/civicrm/civicrm-core/pull/19847))**
979
980- **[NFC] Fix PHP 7.4 errors on ContributionPage tests
981 ([19846](https://github.com/civicrm/civicrm-core/pull/19846))**
982
91aa1d80 983- **[NFC] Fix Membership Type Test error on PHP 7.4
5783f9a2
AF
984 ([19845](https://github.com/civicrm/civicrm-core/pull/19845))**
985
986- **[NFC] Minor IDE cleanup in test class
987 ([19816](https://github.com/civicrm/civicrm-core/pull/19816))**
988
989- **[NFC] IDE cleanup on test class
990 ([19813](https://github.com/civicrm/civicrm-core/pull/19813))**
991
992- **NFC cleanup in test class
993 ([19953](https://github.com/civicrm/civicrm-core/pull/19953))**
994
91aa1d80 995- **[NFC] Update unit tests to be compatible with PHPUnit8
5783f9a2
AF
996 ([246](https://github.com/civicrm/civicrm-wordpress/pull/246))**
997
998- **(NFC) Add FUNDING.yml to display a SPONSOR link that directs to c.o
999 ([19946](https://github.com/civicrm/civicrm-core/pull/19946))**
1000
1001- **[NFC] Minor cleanup on test class
1002 ([19864](https://github.com/civicrm/civicrm-core/pull/19864))**
f912721b 1003
fe9225a5
AH
1004- **[REF] Fix installation of the search display table on MySQL 5.36 in tests
1005 ([20094](https://github.com/civicrm/civicrm-core/pull/20094))**
1006
f912721b
AH
1007## <a name="credits"></a>Credits
1008
1009This release was developed by the following code authors:
1010
88bd6b02 1011AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Justin Freeman; Alexy
5783f9a2
AF
1012Mikhailichenko; Calibrate - Wouter Hechtermans; Christian Wach; Circle
1013Interactive - Pradeep Nayak; CiviCoop - Jaap Jansma; CiviCRM - Coleman Watts,
1014Tim Otten; CompuCorp - Ahed Eid; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove;
1015Dave D; Francesc Bassas i Bullich; Fuzion - Jitendra Purohit; Greenpeace CEE -
1016mflandorfer; JMA Consulting - Monish Deb, Seamus Lee; Lighthouse Consulting and
1017Design - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg;
1018MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; Nicol Wistreich; Oxfam
1019Germany - Thomas Schüttler; Progressive Technology Project - Jamie McClelland;
1020Romain Thouvenin; SYSTOPIA Organisationsberatung - Björn Endres; Third Sector
1021Design - Michael McAndrew; Timbsoft Technologies - Tunbola Ogunwande; Web
1022Access - Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton
f912721b
AH
1023
1024Most authors also reviewed code for this release; in addition, the following
1025reviewers contributed their comments:
1026
5783f9a2
AF
1027Artful Robot - Rich Lott; BrightMinded Ltd - Bradley Taylor; CiviCoop - Erik
1028Hommel; CiviDesk - Nicolas Ganivet; Context Institute - Robert Gilman; Dave T;
1029Freeform Solutions - Herb van den Dool; Joinery - Allen Shaw; Megaphone
1030Technology Consulting - Dennis P. Osorio; Richard van Oosterhout; Semper IT -
fe9225a5 1031Karin Gerritsen; Skvare - Sunil Pawar; Tadpole Collective - Kevin Cristiano
5a8a1a3a
AH
1032
1033## <a name="feedback"></a>Feedback
1034
88bd6b02 1035These release notes are edited by Alice Frumin and Andie Hunt. If you'd like
5a8a1a3a
AH
1036to provide feedback on them, please log in to https://chat.civicrm.org/civicrm
1037and contact `@agh1`.