5 - **[Synopsis](#synopsis)**
6 - **[Features](#features)**
7 - **[Bugs resolved](#bugs)**
8 - **[Miscellany](#misc)**
9 - **[Credits](#credits)**
10 - **[Feedback](#feedback)**
12 ## <a name="synopsis"></a>Synopsis
14 | *Does this version...?* | |
15 |:--------------------------------------------------------------- |:-------:|
16 | Fix security vulnerabilities? | no |
17 | **Change the database schema?** | **yes** |
18 | **Alter the API?** | **yes** |
19 | Require attention to configuration options? | no |
20 | **Fix problems installing or upgrading to a previous version?** | **yes** |
21 | **Introduce features?** | **yes** |
22 | **Fix bugs?** | **yes** |
24 ## <a name="features"></a>Features
28 - **Menubar - Add "find menu item" search feature
29 ([16597](https://github.com/civicrm/civicrm-core/pull/16597))**
31 Adds a new "Find menu item" search under the "Home" (Civi logo) menu which
32 allows user to locate menu items by typing a few letters.
34 - **Allow advanced search for contributions without a soft credit related
35 ([dev/core#1386](https://lab.civicrm.org/dev/core/issues/1386):
36 [15834](https://github.com/civicrm/civicrm-core/pull/15834) and
37 [16622](https://github.com/civicrm/civicrm-core/pull/16622))**
39 Improves the Advanced Search UI "Contributions" section "Contributions or Soft
40 Credits?" field field by adding a fifth option "Contributions without a soft
41 credit" and updating the labels for the other options.
43 - **Allow payment processors to indicate whether they require an email address
44 ([dev/core#1584](https://lab.civicrm.org/dev/core/issues/1584):
45 [16503](https://github.com/civicrm/civicrm-core/pull/16503))**
47 Adds a function to indicate whether a payment processor requires an email
48 address which can be used to determine whether drupal webform should require
51 - **Show full description under select2 options
52 ([dev/core#1587](https://lab.civicrm.org/dev/core/issues/1587):
53 [16507](https://github.com/civicrm/civicrm-core/pull/16507) and
54 [16510](https://github.com/civicrm/civicrm-core/pull/16510))**
56 Improves the usability of Select-2 drop downs by displaying the
57 full description in a tool tip when hovering over an option.
59 - **Migrate installers to "setup" API (Work Towards
60 [dev/core#1615](https://lab.civicrm.org/dev/core/issues/1615):
61 [16618](https://github.com/civicrm/civicrm-core/pull/16618))**
63 Migrates `civicrm-setup` from its own git repo to `civicrm-core.git:setup/`.
65 - **APIv4-based smart groups
66 ([16876](https://github.com/civicrm/civicrm-core/pull/16876),
67 [16666](https://github.com/civicrm/civicrm-core/pull/16666) and
68 [16834](https://github.com/civicrm/civicrm-core/pull/16834))**
70 Allows smart groups to be created with APIv4 params in addition to via search
71 form values. Adds a user interface to save smart groups from the APIv4
74 - **Style & layout clean up
75 ([16680](https://github.com/civicrm/civicrm-core/pull/16680))**
77 Improves the Contribution Invoice template by cleaning it up, improving
78 the layout and making the CiviCRM logo comply with the display "empowered by
81 - **Relationship report - add sort order for end date
82 ([16512](https://github.com/civicrm/civicrm-core/pull/16512))**
84 Improves the Relationship report by making end date available as a field to
87 - **add column for report
88 ([16523](https://github.com/civicrm/civicrm-core/pull/16523))**
90 Adds "is active?" as an option for the "Columns" tab for the Relationship
93 - **Make php 7.3 the recommended php version
94 ([16459](https://github.com/civicrm/civicrm-core/pull/16459))**
96 Makes the recommended php version 7.3.
98 - **Increase php min recommended version
99 ([16668](https://github.com/civicrm/civicrm-core/pull/16668))**
101 Makes the minimum recommended php version 7.2 (it was 7.1).
103 - **Add pseudoconstant for priceset
104 ([16665](https://github.com/civicrm/civicrm-core/pull/16665) and
105 [16648](https://github.com/civicrm/civicrm-core/pull/16648))**
107 Adds a pseudo constant for price set so that the API accepts `price_set_id` by
110 - **[Feature] Add in new hook alterUFFields to allow extensions to modify which
111 fields can be added to a profile
112 ([16655](https://github.com/civicrm/civicrm-core/pull/16655))**
114 Adds a new hook `hook_civicrm_alterUFFields` which allows extensions to modify
117 - **Enable the "sequentialcreditnotes" extension on new installations
118 ([16598](https://github.com/civicrm/civicrm-core/pull/16598))**
120 Ensures the new core extension `sequenttialcreditnotes` is added on upgrade
123 - **Move settings definition on contribution settings form to metadata.
124 ([16513](https://github.com/civicrm/civicrm-core/pull/16513))**
126 Moves from hard coded settings on contribution settings forms to setting a
127 spec for adding settings to a contribution form making it possible for
128 extension developers to modify the settings using a hook (like the
129 `sequentialcreditnotes` extension).
131 - **Making the poor performance associated with the `creditnote_id` field opt in
132 rather than opt out (Work Towards
133 [dev/financial#84](https://lab.civicrm.org/dev/financial/issues/84):
134 [16531](https://github.com/civicrm/civicrm-core/pull/16531) and
135 [16664](https://github.com/civicrm/civicrm-core/pull/16664))**
137 Refactors code in preparation of make the credit note field opt in.
138 Additionally, makes it possible to hide extensions by tagging them
139 "mgmt:hidden" and hides the `sequentialcreditnotes` extension.
141 - **Upgrade Net_SMTP Package and remove now unneeded patches and move to using
142 composer patches rather than patching in a script file
143 ([16498](https://github.com/civicrm/civicrm-core/pull/16498))**
145 Updates the `Net_SMTP` package to the latest version of the library and
146 standardizes patches.
148 - **info.xml - Allow extensions to define a list of tags
149 ([16551](https://github.com/civicrm/civicrm-core/pull/16551))**
151 Makes it so that extension developers can register tags in the info.xml file.
153 - **Speed boost for civicrm/ajax/checkemail
154 ([15824](https://github.com/civicrm/civicrm-core/pull/15824))**
156 Performance improvement for `civicrm/ajax/checkemail` which is used when
157 adding a cc email address to an email message among other places.
159 - **Improve activity query performance in Constituent Detail Report
160 ([13078](https://github.com/civicrm/civicrm-core/pull/13078))**
162 Improves performance of the "Constituent Detail Report" template.
164 - **Added conditional check so that it can be altered by hook
165 ([16499](https://github.com/civicrm/civicrm-core/pull/16499))**
167 Added a conditional check for printing blocks so that they can be easily
170 - **Enable jQuery validate on register/contribution forms
171 ([16494](https://github.com/civicrm/civicrm-core/pull/16494))**
173 Makes jQuery validate available by default on frontend contribution /
178 - **Add ts() for a sentence 'Add to case as role'
179 ([16630](https://github.com/civicrm/civicrm-core/pull/16630))**
181 Improves translation by making the string 'Add to case as role'
184 - **Add CiviCase option for showing case activities in normal views
185 ([16360](https://github.com/civicrm/civicrm-core/pull/16360))**
187 Provides a setting controlling whether activities that belong to cases are
188 visible outside of cases.
192 - **Proposal: Add in payment_processor-{payment processor type} class attribute
194 ([dev/financial#105](https://lab.civicrm.org/dev/financial/issues/105):
195 [15940](https://github.com/civicrm/civicrm-core/pull/15940))**
197 Adds a css class to each radio button for payment processor options so that
198 they can be styled distinctly.
200 - **Payment edit link cannot be modified
201 ([dev/financial#117](https://lab.civicrm.org/dev/financial/issues/117):
202 [16504](https://github.com/civicrm/civicrm-core/pull/16504))**
204 Makes it so the edit payment link on view of a Contribution can be modified by
205 `hook_civicrm_links`.
207 - **Proposal - move source & received date to near the top on ContributionView
208 form ([dev/financial#118](https://lab.civicrm.org/dev/financial/issues/118):
209 [16565](https://github.com/civicrm/civicrm-core/pull/16565))**
211 Improves the UI of Contributions in view mode by moving the source and date
212 fields closer to the top.
216 - **Pass template_type through to alterMailing hook
217 ([16529](https://github.com/civicrm/civicrm-core/pull/16529))**
219 Improves `hook_civicrm_alterMailing` by passing the `template_type`
220 (traditional or mosaico).
222 ### Drupal Integration
224 - **Use `civicrm-setup` to handle installation
225 ([dev/drupal#4](https://lab.civicrm.org/dev/drupal/issues/4):
226 [16628](https://github.com/civicrm/civicrm-core/pull/16628))**
228 Improves the installation process for drupal 8 by making it so `civicrm-setup`
229 reports the pending action.
231 ## <a name="bugs"></a>Bugs resolved
235 - **Export Problems from Advanced Search - Searchable Numeric Fields Throw SQL
236 Error & Not all Rows Exported
237 ([CRM-607](https://issues.civicrm.org/jira/browse/CRM-607):
238 [16627](https://github.com/civicrm/civicrm-core/pull/16627))**
240 Fixes a syntax error for smart groups that reference custom fields that have
243 - **Do not CC or BCC (Event) Contribution invoice
244 ([dev/core#1436](https://lab.civicrm.org/dev/core/issues/1436):
245 [16005](https://github.com/civicrm/civicrm-core/pull/16005))**
247 Ensures Contribution Invoices are not sent to the CC and BCC email address(s)
248 configured for Event Confirmation purposes.
250 - **Group search form template does not add Datatables CSS classes (DT_RowClass)
251 ([dev/core#1547](https://lab.civicrm.org/dev/core/issues/1547):
252 [16359](https://github.com/civicrm/civicrm-core/pull/16359) and
253 [16743](https://github.com/civicrm/civicrm-core/pull/16743))**
255 Ensures child groups are nested on the Manage Groups form.
257 - **Multisite domain group fails on 5.20.0 (Work Towards
258 [dev/core#1450](https://lab.civicrm.org/dev/core/issues/1450):
259 [16095](https://github.com/civicrm/civicrm-core/pull/16095))**
261 Improves performance of the multi site domain group to keep it from crashing
262 on sites with large domain groups.
264 - **scheduled reminder: select participant role permissions require admin &
265 don't match rest of scheduled reminder permissions
266 ([dev/core#1568](https://lab.civicrm.org/dev/core/issues/1568):
267 [16455](https://github.com/civicrm/civicrm-core/pull/16455))**
269 Ensures that non-administrator users setting scheduled reminders can limit by
272 - **Custom Group Types not filterable
273 ([dev/core#1577](https://lab.civicrm.org/dev/core/issues/1577):
274 [16475](https://github.com/civicrm/civicrm-core/pull/16475))**
276 Ensures that the "Custom Group Type" filter works on the "Manage Groups" form.
278 - **E_WARNING on New/Edit Tag screen
279 ([dev/core#1593](https://lab.civicrm.org/dev/core/issues/1593) and
280 [dev/core#1536](https://lab.civicrm.org/dev/core/issues/1536):
281 [16554](https://github.com/civicrm/civicrm-core/pull/16554))**
283 Fixes count E_WARNING on the Tag screen.
285 - **Extension unit tests broken in master
286 ([dev/core#1594](https://lab.civicrm.org/dev/core/issues/1594):
287 [16544](https://github.com/civicrm/civicrm-core/pull/16544))**
289 Ensures extension unit tests run.
291 - **Undefined offset 0 in system check for custom fields after upgrade to 5.23
292 ([dev/core#1636](https://lab.civicrm.org/dev/core/issues/1636):
293 [16707](https://github.com/civicrm/civicrm-core/pull/16707))**
295 Fixes an E_NOTICE "Undefined index 0 line 109 in
296 CRM/Utils/Check/Component/Schema.php" when logging in to a site with smart
297 groups that don't have `form_values[0]` (most likely made thru the API).
299 - **Fix SettingTrait YesNo translation
300 ([16685](https://github.com/civicrm/civicrm-core/pull/16685))**
302 Ensures "Yes/no" radio admin settings are correctly translated.
304 - **TokenProcessor - fix greetings tokens
305 ([16624](https://github.com/civicrm/civicrm-core/pull/16624))**
307 Ensure greetings tokens get populated as expected.
309 - **Contact Type Values with Cap in order to be well translated with ts()
310 ([16638](https://github.com/civicrm/civicrm-core/pull/16638))**
312 Ensures Contact Types get translated in the task menu.
314 - **CommunicationPreferences 'loclize' -> 'localize'
315 ([16633](https://github.com/civicrm/civicrm-core/pull/16633))**
317 Ensures the "Communication Preferences" field options get localized.
319 - **Convert civicrm_note.modified_date to timestamp
320 ([16338](https://github.com/civicrm/civicrm-core/pull/16338))**
322 Ensures the `civicrm_note.modified_date` field stores the date and time before
323 this change this field only stored the date.
325 - **Fix two more php-finding regexes
326 ([16606](https://github.com/civicrm/civicrm-core/pull/16606))**
328 Ensures the APIv4 explorer loads regardless regardless of the enclosing path.
330 - **Settings Fix setting readonly attribute
331 ([16451](https://github.com/civicrm/civicrm-core/pull/16451))**
333 Ensures that when a setting is defined via "civicrm.settings.php" it is set to
336 - **Fix issues with retrieving supportsTestMode/supportsLiveMode for payment
337 processors ([15330](https://github.com/civicrm/civicrm-core/pull/15330))**
339 Improves performance and ensures that one cannot select a live payment
340 processor on the back end payment form in test mode.
342 - **State/province not copied on shared address
343 ([dev/core#1605](https://lab.civicrm.org/dev/core/issues/1605):
344 [16649](https://github.com/civicrm/civicrm-core/pull/16649))**
346 - **Activity Summary civireport gives fatal error when grouping activity date by
347 quarter ([dev/core#1619](https://lab.civicrm.org/dev/core/issues/1619):
348 [16643](https://github.com/civicrm/civicrm-core/pull/16643))**
350 - **Fix parameter format for upgrade call to install/enable
351 sequentialcreditnotes
352 ([16686](https://github.com/civicrm/civicrm-core/pull/16686))**
354 - **Activity Report: filtering by "is null" or "is not null" is ignored
355 ([dev/core#1627](https://lab.civicrm.org/dev/core/issues/1627):
356 [16672](https://github.com/civicrm/civicrm-core/pull/16672))**
358 - **Fix backoffice participant partial payments to be stdised & not miscalculate
359 net_amount ([16442](https://github.com/civicrm/civicrm-core/pull/16442))**
361 - **Throwing API_Exception if file fails to copy when creating attachment
362 ([16465](https://github.com/civicrm/civicrm-core/pull/16465))**
364 - **Do not enable core payment processor types that we believe likely don't work
366 ([16362](https://github.com/civicrm/civicrm-core/pull/16362))**
368 - **Resolve notices if first donation amount and date columns were disabled
369 ([16491](https://github.com/civicrm/civicrm-core/pull/16491))**
371 - **Allow any casting done in Type::validate to bubble up to
372 Request::retrieveValue
373 ([16525](https://github.com/civicrm/civicrm-core/pull/16525))**
375 - **Fix a PHP notice for users with limited permissions when loading a contact's
376 summary ([16515](https://github.com/civicrm/civicrm-core/pull/16515))**
378 - **Do not fatally fail on angular pages if an extension is missing
379 ([16533](https://github.com/civicrm/civicrm-core/pull/16533))**
381 - **fix contribution summary report's statistics when grouping and having
382 ([16467](https://github.com/civicrm/civicrm-core/pull/16467))**
384 - **Fix smart group custom field check to cope with api error
385 ([16750](https://github.com/civicrm/civicrm-core/pull/16750))**
387 - **Inline editing not working on admin option value-like screens
388 ([dev/core#1651](https://lab.civicrm.org/dev/core/issues/1651):
389 [16779](https://github.com/civicrm/civicrm-core/pull/16779) and
390 [16791](https://github.com/civicrm/civicrm-core/pull/16791))**
392 - **Fix fatal error on loading extension page when an extension has been deleted
393 ([16752](https://github.com/civicrm/civicrm-core/pull/16752))**
395 - **Can't install 5.23 in another language
396 ([dev/translation#40](https://lab.civicrm.org/dev/translation/issues/40):
397 [16842](https://github.com/civicrm/civicrm-core/pull/16842))**
399 - **Don't cache the full path of extensions so they don't break with dynamic
401 ([dev/cloud-native#21](https://lab.civicrm.org/dev/cloud-native/issues/21):
402 [15410](https://github.com/civicrm/civicrm-core/pull/15410))**
404 - **Monetary Amount Display setting not respected for price set totals
405 ([dev/core#1019](https://lab.civicrm.org/dev/core/issues/1019):
406 [16487](https://github.com/civicrm/civicrm-core/pull/16487))**
408 - **mailing label primary address selection ignored if global option
409 searchPrimaryDetailsOnly disabled
410 ([dev/core#1158](https://lab.civicrm.org/dev/core/issues/1158):
411 [14928](https://github.com/civicrm/civicrm-core/pull/14928) and
412 [16640](https://github.com/civicrm/civicrm-core/pull/16640))**
414 - **APIv4 - Correctly return null values from DAO save actions
415 ([16645](https://github.com/civicrm/civicrm-core/pull/16645))**
417 - **Api4 - Display sql errors in explorer
418 ([16641](https://github.com/civicrm/civicrm-core/pull/16641))**
420 - **"DB Error: unknown error" when merging if duplicate contact has null
421 created_date ([dev/core#1589](https://lab.civicrm.org/dev/core/issues/1589):
422 [16543](https://github.com/civicrm/civicrm-core/pull/16543))**
424 - **Exporting contacts via membership dashboard click through selects all
426 ([dev/user-interface#14](https://lab.civicrm.org/dev/user-interface/issues/14):
427 [16763](https://github.com/civicrm/civicrm-core/pull/16763) and
428 [16933](https://github.com/civicrm/civicrm-core/pull/16933))**
430 Fixes a bug where the links from the membership dashboard 'appear to work' but
431 then don't work in export.
435 - **Secondarily order campaign dashboard by id
436 ([15316](https://github.com/civicrm/civicrm-core/pull/15316))**
438 Improves the "Campaign Dashboard" by organizing Campaigns by Start Date and
439 then Id so that if campaigns are rapidly added they show up in the correct
444 - **Case Activities Report includes core activities *always*
445 ([dev/core#1366](https://lab.civicrm.org/dev/core/issues/1366):
446 [16669](https://github.com/civicrm/civicrm-core/pull/16669),
447 [16660](https://github.com/civicrm/civicrm-core/pull/16660) and
448 [15998](https://github.com/civicrm/civicrm-core/pull/15998))**
450 Improves printing/generating the Case Activity Audit by skipping a screen
451 that does not work and cleaning up the code.
453 - **Incorrect boolean comparisons in ang/crmCaseType/list.html for is_active and
454 is_reserved ([dev/core#1451](https://lab.civicrm.org/dev/core/issues/1451):
455 [16035](https://github.com/civicrm/civicrm-core/pull/16035))**
457 Ensures the correct drop down actions are displayed on the case type listing
460 - **My Case dashlet doesn't sort by name but contact_id instead
461 ([dev/core#1623](https://lab.civicrm.org/dev/core/issues/1623):
462 [16647](https://github.com/civicrm/civicrm-core/pull/16647))**
464 Ensures the case dashlet sorts by contact sort name.
466 - **Remove hardcoded settings from form and use SettingForm.tpl for Case
467 settings ([16600](https://github.com/civicrm/civicrm-core/pull/16600))**
469 - **Adding a timeline to a case doesn't get the last activity in the timeline
470 right ([dev/core#1675](https://lab.civicrm.org/dev/core/issues/1675):
471 [16926](https://github.com/civicrm/civicrm-core/pull/16926))**
475 - **when importing contributions, can't match contact on phone number
476 ([dev/core#1438](https://lab.civicrm.org/dev/core/issues/1438):
477 [16009](https://github.com/civicrm/civicrm-core/pull/16009))**
479 Ensures when importing contributions, phone number is listed as a field to
480 match on and that matching via phone number works as expected.
482 - **Invoice does not assign/display the contact's country
483 ([dev/financial#109](https://lab.civicrm.org/dev/financial/issues/109):
484 [15964](https://github.com/civicrm/civicrm-core/pull/15964))**
486 - **CRM_Utils_Money::equals should round to monetary values then compare, not do
487 a difference comparison.
488 ([dev/financial#104](https://lab.civicrm.org/dev/financial/issues/104):
489 [15856](https://github.com/civicrm/civicrm-core/pull/15856))**
491 - **Count refunds when calculating amount due for an invoice
492 ([16506](https://github.com/civicrm/civicrm-core/pull/16506))**
496 - **Unsubscribe broken on multilingual sites -- may cause mass unsubscribes to
497 all groups ([dev/core#1622](https://lab.civicrm.org/dev/core/issues/1622):
498 [16634](https://github.com/civicrm/civicrm-core/pull/16634))**
502 - **Deleting memberships does not delete its related line item.
503 ([dev/membership#17](https://lab.civicrm.org/dev/membership/issues/17):
504 [15859](https://github.com/civicrm/civicrm-core/pull/15859))**
506 - **Related / Inherited Memberships: Custom fields not filled with data
507 ([dev/core#1365](https://lab.civicrm.org/dev/core/issues/1365):
508 [15884](https://github.com/civicrm/civicrm-core/pull/15884))**
510 ### Backdrop Integration
512 - **bin/*, extern/* - Fix leak of "$config" in global namespace backdrop
513 ([16702](https://github.com/civicrm/civicrm-core/pull/16702))**
515 This removes the `$config` variable from some pre CMS boot locations to avoid
516 issues with backdrop compatability.
518 ### Drupal Integration
520 - **Multi-select custom data shows values not labels in drupal user record
521 ([CRM-984](https://issues.civicrm.org/jira/browse/CRM-984):
522 [549](https://github.com/civicrm/civicrm-drupal/pull/549))**
524 Ensures that the "Add CiviCRM Tag to Contact" action lists Tags as options
527 - **Check email when creating a user in drupal 8
528 ([15390](https://github.com/civicrm/civicrm-core/pull/15390))**
530 Ensures when creating a new Drupal8 user via a CiviCRM profile, the email
531 address entered is validated as a unique user email.
533 - **`E2E_Cache_*Test` raises dependency-hell in D8
534 ([dev/core#1562](https://lab.civicrm.org/dev/core/issues/1562):
535 [16522](https://github.com/civicrm/civicrm-core/pull/16522))**
537 ### Joomla Integration
539 - **CiviCRM upgrade to 5.23.0 breaks payment processor
540 ([dev/financial#120](https://lab.civicrm.org/dev/financial/issues/120):
541 [16761](https://github.com/civicrm/civicrm-core/pull/16761))**
543 Fixes loading of several javascript and css assets on front end pages (such as
544 the contribution page) in Joomla.
546 - **CiviCRM menu disappears and upgrade to 5.23.x fails if Joomla is in a folder
548 ([dev/joomla#26](https://lab.civicrm.org/dev/joomla/issues/26):
549 [16887](https://github.com/civicrm/civicrm-core/pull/16887))**
551 ### WordPress Integration
553 - **5.23 breaks WP admin menu links
554 ([dev/core#1637](https://lab.civicrm.org/dev/core/issues/1637):
555 [16721](https://github.com/civicrm/civicrm-core/pull/16721),
556 [16735](https://github.com/civicrm/civicrm-core/pull/16735))**
558 - **Fix display of administrator permissions in WordPress Multisite
559 ([dev/core#1628](https://lab.civicrm.org/dev/core/issues/1628):
560 [16675](https://github.com/civicrm/civicrm-core/pull/16675))**
562 Ensures that users with the role "Network
563 Administrator" can limit the permissions for users with the role "Site
564 Administrator" for WordPress with Multisite.
566 - **Fix synchronisation of Users to Contacts in WordPress Multisite
567 ([dev/core#1629](https://lab.civicrm.org/dev/core/issues/1629):
568 [16676](https://github.com/civicrm/civicrm-core/pull/16676))**
570 For WordPress Multisite's ensures that only users of a particular sub site are
571 synced to CiviCRM for that sub site.
573 ## <a name="misc"></a>Miscellany
575 - **Update CKEditor 4.14
576 ([16841](https://github.com/civicrm/civicrm-core/pull/16841))**
578 - **Remove fatal from form
579 ([16500](https://github.com/civicrm/civicrm-core/pull/16500))**
581 - **Add deprecation notices on PartialAmount params
582 ([16505](https://github.com/civicrm/civicrm-core/pull/16505))**
584 - **fix headers ([16492](https://github.com/civicrm/civicrm-core/pull/16492))**
586 - **API Kernel - cleanup deprecated fn & unused param
587 ([16511](https://github.com/civicrm/civicrm-core/pull/16511))**
589 - **Common.js - remove duplicate function
590 ([16508](https://github.com/civicrm/civicrm-core/pull/16508))**
592 - **Fix calls to Request::retrieve
593 ([16526](https://github.com/civicrm/civicrm-core/pull/16526))**
595 - **APIv4 - merge ActionUtil with Request::create
596 ([16516](https://github.com/civicrm/civicrm-core/pull/16516))**
599 ([16486](https://github.com/civicrm/civicrm-core/pull/16486))**
601 - **Remove reference to mysql 5.0 & 5.1
602 ([16539](https://github.com/civicrm/civicrm-core/pull/16539))**
604 - **Change "Added By" to "Added by"
605 ([16527](https://github.com/civicrm/civicrm-core/pull/16527))**
607 - **Remove old defines for flexmailer that haven't been required since CiviCRM
608 5.x ([16528](https://github.com/civicrm/civicrm-core/pull/16528))**
610 - **Make savedSearch bao sane
611 ([16575](https://github.com/civicrm/civicrm-core/pull/16575))**
613 - **Add deprecation notice
614 ([16585](https://github.com/civicrm/civicrm-core/pull/16585))**
616 - **Move determination of year & month to formatCreditCardDetails
617 ([16562](https://github.com/civicrm/civicrm-core/pull/16562))**
619 - **Add description to params for api3 Payment.get
620 ([16602](https://github.com/civicrm/civicrm-core/pull/16602))**
622 - **Move sequentialcreditnotes under `ext/` folder
623 ([16616](https://github.com/civicrm/civicrm-core/pull/16616))**
625 - **Removed Invalid Parameter from function doc
626 ([16631](https://github.com/civicrm/civicrm-core/pull/16631))**
628 - **civicrm.settings.php.template - Simplify examples of `$civicrm_setting`
629 ([16636](https://github.com/civicrm/civicrm-core/pull/16636))**
631 - **Remove unused columns from civicrm_saved_search
632 ([16637](https://github.com/civicrm/civicrm-core/pull/16637))**
634 - **News dashboard - Code cleanup to update js & css
635 ([16632](https://github.com/civicrm/civicrm-core/pull/16632))**
637 - **Fix mistake in comment
638 ([16657](https://github.com/civicrm/civicrm-core/pull/16657))**
640 - **Remove helper function now that contribution settings is not weirdly stored
641 ([16566](https://github.com/civicrm/civicrm-core/pull/16566))**
643 - **added sudo constant for sms api type
644 ([16679](https://github.com/civicrm/civicrm-core/pull/16679))**
646 - **Add setEntityId() to entityForm
647 ([16020](https://github.com/civicrm/civicrm-core/pull/16020))**
649 - **Remove deprecated function CRM_Contact_BAO_GroupContactCache::remove
650 ([16682](https://github.com/civicrm/civicrm-core/pull/16682))**
652 - **Ancient switch statement that provides hardcoded translation doesn't do
654 ([dev/translation#37](https://lab.civicrm.org/dev/translation/issues/37):
655 [16619](https://github.com/civicrm/civicrm-core/pull/16619))**
657 - **Cleanup copyValues DAO function
658 ([16589](https://github.com/civicrm/civicrm-core/pull/16589))**
660 - **Remove unused code
661 ([16493](https://github.com/civicrm/civicrm-core/pull/16493))**
663 - **remove unnecessary file
664 ([16502](https://github.com/civicrm/civicrm-core/pull/16502))**
666 - **[REF] Fix static call to non-static function.
667 ([16552](https://github.com/civicrm/civicrm-core/pull/16552))**
669 - **[REF] Change function signature to support moving this off the form layer
670 ([16677](https://github.com/civicrm/civicrm-core/pull/16677))**
672 - **[REF] Remove FPDI library from packages as it is deployed by composer
673 ([287](https://github.com/civicrm/civicrm-packages/pull/287))**
675 - **[REF] Use relative path for finding the advmultiseletct javascript
676 ([286](https://github.com/civicrm/civicrm-packages/pull/286))**
678 - **[REF] Remove patch from dompdf cleanup script that is no longer needed
679 ([16490](https://github.com/civicrm/civicrm-core/pull/16490))**
681 - **(REF) Move CIVICRM_MAIL_LOG logic from patch-files to wrapper-class
682 ([16497](https://github.com/civicrm/civicrm-core/pull/16497))**
684 - **[REF] Remove never used property
685 ([16540](https://github.com/civicrm/civicrm-core/pull/16540))**
687 - **([REF] Fix handling of owner url parameter from Membership Dashboard
688 [16937](https://github.com/civicrm/civicrm-core/pull/16937))**
690 - **REF Refactor ActivityTokens to use a trait that can be shared with other
691 entities ([16468](https://github.com/civicrm/civicrm-core/pull/16468))**
693 - **[REF] Extract function to getTransactionInfo
694 ([16545](https://github.com/civicrm/civicrm-core/pull/16545))**
696 - **[REF] Update civicrm_generated following merge of #16362
697 ([16605](https://github.com/civicrm/civicrm-core/pull/16605))**
699 - **[REF] Extract self-service eligibility code into its own function
700 ([16615](https://github.com/civicrm/civicrm-core/pull/16615))**
702 - **[REF] Only call getACLs when contact_id is present, remove handling
703 ([16667](https://github.com/civicrm/civicrm-core/pull/16667))**
705 - **[REF] Deprecate _html2pdf_tcpdf function in favour of _html2pdf_dompdf
706 ([16662](https://github.com/civicrm/civicrm-core/pull/16662))**
708 - **[REF] simple function extraction
709 ([16642](https://github.com/civicrm/civicrm-core/pull/16642))**
711 - **[REF] Removed unused function
712 ([16663](https://github.com/civicrm/civicrm-core/pull/16663))**
714 - **[REF] Refactor adding payment processor radio section onto register and
715 contribution main forms
716 ([16595](https://github.com/civicrm/civicrm-core/pull/16595))**
718 - **[REF] Add in pre and post hooks to UFField Entity
719 ([16653](https://github.com/civicrm/civicrm-core/pull/16653))**
721 - **[NFC] Use insert ignore for inserts into civicrm_extension to stop warnings
722 on duplicate entry for sequential credit notes extension
723 ([16644](https://github.com/civicrm/civicrm-core/pull/16644))**
725 - **[NFC] dev/core#1466 Update Documentation URLS to be the correct links in the
726 security component check
727 ([dev/core#1466](https://lab.civicrm.org/dev/core/issues/1466):
728 [16085](https://github.com/civicrm/civicrm-core/pull/16085))**
730 - **[NFC] Convert Custom Field BAO file to use short array syntax
731 ([16613](https://github.com/civicrm/civicrm-core/pull/16613))**
733 - **[NFC] dev/core#1621 Extend unit tests to ensure that entity financial
734 account is correctly deleted when financial type is deleted
735 ([dev/core#1621](https://lab.civicrm.org/dev/core/issues/1621):
736 [16639](https://github.com/civicrm/civicrm-core/pull/16639))**
738 - **[NFC] Minor code cleanup
739 ([16563](https://github.com/civicrm/civicrm-core/pull/16563))**
741 - **[NFC] Preliminary cleanup
742 ([16557](https://github.com/civicrm/civicrm-core/pull/16557))**
744 - **(NFC) Fix typo - no hyphen in 'override'
745 ([16571](https://github.com/civicrm/civicrm-core/pull/16571))**
747 - **(NFC) Remove `$Id$` from header
748 ([16582](https://github.com/civicrm/civicrm-core/pull/16582))**
750 - **[NFC] Test cleanup.
751 ([16581](https://github.com/civicrm/civicrm-core/pull/16581))**
753 - **[NFC] Add missing letter "h" in upgrade script for task description
754 ([16687](https://github.com/civicrm/civicrm-core/pull/16687))**
756 - **[TEST] Unit test environment no longer working on windows after latest
758 ([dev/core#1572](https://lab.civicrm.org/dev/core/issues/1572):
759 [16477](https://github.com/civicrm/civicrm-core/pull/16477))**
761 - **[TEST] CRM_Event_BAO_AdditionalPaymentTest::testAddPartialPayment should
762 have status transition checks fixed & enabled
763 ([dev/financial#102](https://lab.civicrm.org/dev/financial/issues/102):
764 [16564](https://github.com/civicrm/civicrm-core/pull/16564))**
766 ## <a name="credits"></a>Credits
768 This release was developed by the following code authors:
770 a-n The Artists Information Company - William Mortada; AGH Strategies - Alice
771 Frumin, Andie Hunt; Agileware - Agileware Team, Francis Whittle; Alexy
772 Mikhailichenko; breheret; Calibrate - Wouter Hechtermans; CEPR - Josh Brown;
773 Chris Burgess; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCoop -
774 Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku;
775 Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark
776 Burdett; Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool;
777 Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick
778 Figel; GMCVO Databases - Jade Gaunt; iXiam - Luciano Spiegel; Jens Schuppe; JMA
779 Consulting - Monish Deb, Seamus Lee; Kartik Kathuria; Lighthouse Design and
780 Consulting - Brian Shaughnessy; Makoa - Usha F. Matisson; Megaphone Technology
781 Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology
782 Project - Jamie McClelland; Richard van Oosterhout; Roomify, LLC - Adrian
783 Rollett; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin
784 Cristiano; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston, Maggie
787 Most authors also reviewed code for this release; in addition, the following
788 reviewers contributed their comments:
790 a-n The Artists Information Company - William Mortada; Agileware - Justin
791 Freeman; Andrew Cormick-Dockery; Artful Robot - Rich Lott; Betty Dolfing;
792 British Humanist Association - Andrew West; CiviCoop - Jaap Jansma, Matthijs
793 Keijser; CiviDesk - Sunil Pawar; Joinery - Allen Shaw; MJCO - Mikey O'Toole;
794 Simon John Parker; Third Sector Design - Michael McAndrew;
796 ## <a name="feedback"></a>Feedback
798 These release notes are edited by Alice Frumin and Andie Hunt. If you'd like
799 to provide feedback on them, please log in to https://chat.civicrm.org/civicrm