3 Released December 4, 2019
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?** | **yes** |
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** |
24 ## <a name="features"></a>Features
28 - **Replace complex logic in email templates with simple logic on billing name
30 ([dev/core#1344](https://lab.civicrm.org/dev/core/issues/1344):
31 [15653](https://github.com/civicrm/civicrm-core/pull/15653),
32 [15688](https://github.com/civicrm/civicrm-core/pull/15688),
33 [15646](https://github.com/civicrm/civicrm-core/pull/15646),
34 [15651](https://github.com/civicrm/civicrm-core/pull/15651),
35 [15682](https://github.com/civicrm/civicrm-core/pull/15682) and
36 [15680](https://github.com/civicrm/civicrm-core/pull/15680))**
38 The Billing Name and Address and Credit Card Information sections are now
39 included when the billing name and credit card type fields are available,
40 respectively. This replaces template-based logic regarding the payment
41 method, amount, waitlist status, and more with the logic used when collecting
42 and processing this information.
44 - **Contact Display Name vs Email Greeting in Workflow templates
45 ([dev/core#781](https://lab.civicrm.org/dev/core/issues/781):
46 [15491](https://github.com/civicrm/civicrm-core/pull/15491))**
48 This ensures all standard workflow message templates use the contact's email
49 greeting. Before this change some standard workflow message templates used a
50 hard-coded "Dear" followed by the display name.
52 - **Workflow templates - Update 'Thank You' & other text corrections
53 ([dev/core#1316](https://lab.civicrm.org/dev/core/issues/1316):
54 [15749](https://github.com/civicrm/civicrm-core/pull/15749),
55 [15745](https://github.com/civicrm/civicrm-core/pull/15745),
56 [15503](https://github.com/civicrm/civicrm-core/pull/15503) and
57 [15751](https://github.com/civicrm/civicrm-core/pull/15751))**
59 Improves grammar and readability of the standard workflow templates.
61 - **Workflow templates - Include displayname in subject
62 ([dev/core#1320](https://lab.civicrm.org/dev/core/issues/1320):
63 [15513](https://github.com/civicrm/civicrm-core/pull/15513))**
65 This adds a contact's display name to the subject of some workflow templates
66 to make them more personal, less likely to be grouped together by email
67 clients, and more likely to be opened.
69 - **Replace Open Flash Charts with charts that work
70 ([15448](https://github.com/civicrm/civicrm-core/pull/15448),
71 [268](https://github.com/civicrm/civicrm-packages/pull/268),
72 [267](https://github.com/civicrm/civicrm-packages/pull/267) and
73 [15493](https://github.com/civicrm/civicrm-core/pull/15493))**
75 These changes move CiviCRM charts to use dc.js (which is based upon
76 Crossfilter and D3.js) instead of the outdated Open Flash Chart library.
78 - **Add freeform relative date for 'This Fiscal Year'
79 ([14894](https://github.com/civicrm/civicrm-core/pull/14894))**
81 Adds support for freeform relative dates (this_n.year & this_n.fiscal_year).
82 To utilize this new functionality administrators must add an option value to
83 the `relative_date_filters` option group.
85 - **Remove the sentence: "Please print this page for your records." from the
87 ([dev/core#371](https://lab.civicrm.org/dev/core/issues/371):
88 [15467](https://github.com/civicrm/civicrm-core/pull/15467))**
90 Removes the text "Print for your records" to discourage people from wasting
94 ([15322](https://github.com/civicrm/civicrm-core/pull/15322))**
96 This removes the print icon from the upper left hand corner of all pages. The
97 icon generally linked to a version of the page stripped of styling, but
98 printing the page through the browser's normal print command nearly always
101 - **Replace all instances of CRM_Core_Fatal with throw new CRM_Core_Exception
102 (Work towards [dev/core#560](https://lab.civicrm.org/dev/core/issues/560):
103 [15608](https://github.com/civicrm/civicrm-core/pull/15608) and
104 [15623](https://github.com/civicrm/civicrm-core/pull/15623))**
106 Works towards throwing exceptions (instead of fatal errors) in
107 several places including if aborting because if a type of a param error.
109 - **Make relationship description searchable
110 ([dev/core#1257](https://lab.civicrm.org/dev/core/issues/1257):
111 [15358](https://github.com/civicrm/civicrm-core/pull/15358))**
113 Exposes the relationship description field to the advanced search form.
115 - **Add in method to allow extensions to opt out of using temporary table when
116 building ACL Contact Cache
117 ([15701](https://github.com/civicrm/civicrm-core/pull/15701))**
119 Adds in getter and setter functions and a static class variable to
120 determine if a temporary table should be used when building the ACL contact
123 - **Re-arrange change log advanced search panel so both modified fields are next
124 to each other ([15712](https://github.com/civicrm/civicrm-core/pull/15712))**
126 This switches the modified date and changed date to appear in the reverse
127 order in order to improve the appearance.
129 - **Schema changes for PaymentProcessor and PaymentProcessorType to support
130 apiv4 entities ([15733](https://github.com/civicrm/civicrm-core/pull/15733))**
132 Begins work to add `PaymentProcesor` and `PaymentProcessorType` entities to
135 - **Remove CIVICRM_SUPPORT_MULTIPLE_LOCKS and make it always enabled if
136 available ([15604](https://github.com/civicrm/civicrm-core/pull/15604))**
138 Makes `CIVICRM_SUPPORT_MULTIPLE_LOCKS` turned on by default so that by default
139 sites can use multiple locks on modern versions of MySQL/MariaDB.
141 - **Add help text to payment processor subject field
142 ([15590](https://github.com/civicrm/civicrm-core/pull/15590))**
144 Improves consistency by adding a help icon to the subject field on the
145 "Settings - Payment Processor" form (CiviCRM Admin bar -> Adminster -> System
146 Settings -> Payment Processors add or edit a payment processor).
148 - **Generic Settings Pages: Make getSettingPageFilter() public so we can use it
149 in hooks ([15576](https://github.com/civicrm/civicrm-core/pull/15576))**
151 Makes the `_filter` property available in hooks so extension developers can
154 - **Update api3 explorer url path for consistency
155 ([15597](https://github.com/civicrm/civicrm-core/pull/15597))**
157 Changes the path to access the Api3 explorer to `civicrm/api3` so that it
158 is consistent with `civicrm/api4`, `civicrm/api` now redirects to
161 - **Improvements to copying events and contribution pages
162 ([15144](https://github.com/civicrm/civicrm-core/pull/15144))**
164 Ensures when an admin copies an event or contribution page the current user ID
165 and time are stored in the `created_date` and `created_id` fields.
166 Additionally, ensures when copying a contribution page the user is
167 redirected to the 'edit' screen for the newly copied page.
169 - **Allow custom ts functions in extensions; defer custom ts calls until booted
170 ([15411](https://github.com/civicrm/civicrm-core/pull/15411))**
172 Makes it possible for developers to write custom translate functions in
175 - **Update Sending Emails section of configuration checklist
176 ([dev/core#1278](https://lab.civicrm.org/dev/core/issues/1278):
177 [15359](https://github.com/civicrm/civicrm-core/pull/15359))**
179 Improves the readability of the "Sending Emails" section of the configuration
182 - **Support street address sorting for contact detail report
183 ([15581](https://github.com/civicrm/civicrm-core/pull/15581))**
185 Improves the "Contact Detail" report template by making it possible to sort by
190 - **Unable to use url search arguments in 'Advanced Search' using force=1 (Work
191 Towards [dev/core#692](https://lab.civicrm.org/dev/core/issues/692):
192 [15370](https://github.com/civicrm/civicrm-core/pull/15370))**
194 Improves the "Find Cases" form's ability to accept url arguments.
196 - **Convert case activity links to 'actionLinks'
197 ([14349](https://github.com/civicrm/civicrm-core/pull/14349))**
199 Converts Case activity links to use actionLinks so they can be accessed by
200 extension developers using the hook `hook_civicrm_links`.
202 - **Format details for case custom data activity in a human readable format
203 ([13365](https://github.com/civicrm/civicrm-core/pull/13365))**
205 Improves readability of the activity details saved to case "Change Custom
210 - **Payment processor names: separate internal and external usage
211 ([dev/financial#2](https://lab.civicrm.org/dev/financial/issues/2):
212 [15418](https://github.com/civicrm/civicrm-core/pull/15418),
213 [15497](https://github.com/civicrm/civicrm-core/pull/15497),
214 [15617](https://github.com/civicrm/civicrm-core/pull/15617) and
215 [15632](https://github.com/civicrm/civicrm-core/pull/15632))**
217 Adds a new field "Payment Processor Title" to the "Edit Payment Processor"
218 form if configured the title will appear on front end forms. This allows
219 administrators to configure internal and external names for payment
220 processors. For example, internally a payment processor may be called "Action
221 Fund - Stripe" while externally It may use the label "Credit Card". Ensures
222 that the front end title of the payment processor is used in receipts when
225 - **Payments - Where do we store IDs from payment processor?
226 ([dev/financial#57](https://lab.civicrm.org/dev/financial/issues/57):
227 [15468](https://github.com/civicrm/civicrm-core/pull/15468))**
229 Adds an `order_reference` field to `civicrm_financial_trxn` table. The
230 `order_reference` field is intended to hold the payment processor provided
231 external reference to an order / invoice (when applicable/possible).
233 - **New methodology for storing template contributions (Work towards
234 [dev/financial#72](https://lab.civicrm.org/dev/financial/issues/72):
235 [15472](https://github.com/civicrm/civicrm-core/pull/15472),
236 [15470](https://github.com/civicrm/civicrm-core/pull/15470),
237 [15550](https://github.com/civicrm/civicrm-core/pull/15550),
238 [15431](https://github.com/civicrm/civicrm-core/pull/15431),
239 [15456](https://github.com/civicrm/civicrm-core/pull/15456),
240 [15433](https://github.com/civicrm/civicrm-core/pull/15433) and
241 [15419](https://github.com/civicrm/civicrm-core/pull/15419))**
243 Moves towards a new methodology for storing template contributions by: using a
244 standard function to create contribution status dropdowns for batch
245 contribution entry and the batch pending contribution status update task, adds
246 a new contribution status "Template", adds an `is_template` field to
247 contributions. Adds some logic surrounding pulling Contributions templates
248 using the new `is_template` field.
250 - **PaymentProcessor.pay should handle 'invoice_id' & map it to a getter so
251 processors can retrieve it
252 ([dev/financial#77](https://lab.civicrm.org/dev/financial/issues/77):
253 [15639](https://github.com/civicrm/civicrm-core/pull/15639))**
255 Makes `contribution_id` required when calling the `PaymentProcessor.pay` API.
257 - **Order.create should not require total amount
258 ([dev/financial#73](https://lab.civicrm.org/dev/financial/issues/73):
259 [15501](https://github.com/civicrm/civicrm-core/pull/15501))**
261 Updates the Order.create API to require `total_amount` OR `line_items` instead
262 of solely requiring `total_amount`.
264 - **Order api updates to fix participant handling & deprecate creating
265 'completed ([15514](https://github.com/civicrm/civicrm-core/pull/15514))**
267 Improves the Order api by making it so status is no longer required for
268 creating participants and creating completed orders is deprecated.
270 - **Develop getter & setter structure for Payment classes (Work towards
271 [dev/financial#82](https://lab.civicrm.org/dev/financial/issues/82):
272 [15707](https://github.com/civicrm/civicrm-core/pull/15707) and
273 [15509](https://github.com/civicrm/civicrm-core/pull/15509))**
275 Begins work to refactor how CRM_Core_Payment works so that `doPayment` accepts
276 a consistent defined set of variables.
278 - **Contribution Summary report only shows first 50 entries
279 ([dev/core#1252](https://lab.civicrm.org/dev/core/issues/1252):
280 [15528](https://github.com/civicrm/civicrm-core/pull/15528))**
282 Adds support for paging on the Contribution Summary Report.
284 - **Provide precautionary handling for theoretical error scenario.
285 ([15748](https://github.com/civicrm/civicrm-core/pull/15748))**
287 Provides protection against fatal errors when adding payments if
288 `financial_items` have not been created.
290 - **Support chaining Payment.create from Order api
291 ([15548](https://github.com/civicrm/civicrm-core/pull/15548))**
293 Adds support to chain a `Payment.create` call from an `Order.create` api call.
295 - **Translate two string in AdditionalPayment form
296 ([15577](https://github.com/civicrm/civicrm-core/pull/15577))**
298 Translates two strings on the Additional Payment form.
300 ### WordPress Integration
302 - **Switch WP over to new installer
303 ([dev/wordpress#37](https://lab.civicrm.org/dev/wordpress/issues/37):
304 [165](https://github.com/civicrm/civicrm-wordpress/pull/165))**
306 Improves the CiviCRM installation process for WordPress sites by redirecting
307 users to an install screen when the CiviCRM plugin is activated.
309 ## <a name="bugs"></a>Bugs resolved
313 - **Add support for bulkcreates (Work towards
314 [dev/core#1093](https://lab.civicrm.org/dev/core/issues/1093):
315 [15599](https://github.com/civicrm/civicrm-core/pull/15599))**
317 Fixes a fatal error when updating a custom field with logging enabled.
319 - **Attachment API for event custom field gives: Failed to run Permissions
320 checks ([dev/core#1205](https://lab.civicrm.org/dev/core/issues/1205):
321 [15580](https://github.com/civicrm/civicrm-core/pull/15580))**
323 Fixes a bug where using the Attachment API for a custom file field would fail
324 with a permission denied error.
326 - **Email Processor drops the other attachments if there's more than 3
327 ([dev/core#1270](https://lab.civicrm.org/dev/core/issues/1270):
328 [15438](https://github.com/civicrm/civicrm-core/pull/15438))**
330 Fixes a bug where the email processor would drop attachments if there were
331 more attachments in the incoming email than the limit set at system settings -
334 - **Fix CSS for public select2 elements regardless of parent theme box-size
335 ([15442](https://github.com/civicrm/civicrm-core/pull/15442))**
337 Fixes the height of select2 boxes (so that they do not appears squished) on
338 front facing forms across CMS's and browsers.
340 - **CiviCRM Dashboard does not respect multiple domains
341 ([dev/core#1200](https://lab.civicrm.org/dev/core/issues/1200):
342 [15283](https://github.com/civicrm/civicrm-core/pull/15283))**
344 Ongoing fixes for the CiviCRM Dashboard when using multiple Domains.
346 - **Warning: array_key_exists(): The first argument should be either a string or
347 an integer in CRM_Contact_Form_Search::getModeValue()
348 ([dev/core#1347](https://lab.civicrm.org/dev/core/issues/1347):
349 [15650](https://github.com/civicrm/civicrm-core/pull/15650))**
351 Fixes a php warning on the advanced search form when opening some accordions.
353 - **Report improvements
354 ([CRM-21677](https://issues.civicrm.org/jira/browse/CRM-21677):
355 [15567](https://github.com/civicrm/civicrm-core/pull/15567))**
357 Removes redundant gender evaluation code from the Case Demographic Report
360 - **Re-installation of Extension With Custom Fields and Logging Enabled Causes
361 Error ([dev/core#1383](https://lab.civicrm.org/dev/core/issues/1383):
362 [15816](https://github.com/civicrm/civicrm-core/pull/15816))**
364 - **Php 7.3 fix - don't mis-use continue
365 ([15737](https://github.com/civicrm/civicrm-core/pull/15737))**
367 Fixes some php warnings regarding using continue where break would be
368 preferable for sites running PHP 7.3.
370 - **Allow regen.sh to work with either upper/lower case for CMS name to match
371 elsewhere ([15647](https://github.com/civicrm/civicrm-core/pull/15647))**
373 Ensures regen.sh works with both Proper and lower case CMS names.
375 - **Make sure labels match the actual date input format
376 ([15520](https://github.com/civicrm/civicrm-core/pull/15520))**
378 Ensures the labels of the date input format dropdown (under
379 `/civicrm/admin/setting/date`) match the actual value of the formats.
381 - **Can't search for activity subjects starting with 1 - and many more caching
382 issues ([dev/core#1411](https://lab.civicrm.org/dev/core/issues/1411):
383 [15918](https://github.com/civicrm/civicrm-core/pull/15918))**
385 The query to fill the SQL cache would fail in a variety of cases, either
386 returning no results or running a fresh, uncached set of results.
388 - **Fix fatal error when sorting by status in activity search
389 ([15923](https://github.com/civicrm/civicrm-core/pull/15923))**
391 - **E Notice 'info' Extension.php:248 -> When installing via cv
392 ([dev/core#1371](https://lab.civicrm.org/dev/core/issues/1371):
393 [15762](https://github.com/civicrm/civicrm-core/pull/15762))**
395 - **Reports show " " in filters with child-groups
396 ([dev/core#826](https://lab.civicrm.org/dev/core/issues/826):
397 [15293](https://github.com/civicrm/civicrm-core/pull/15293))**
399 - **Upgrade failure with 5.19 involving interaction between APIv4 and extensions
400 ([dev/core#1376](https://lab.civicrm.org/dev/core/issues/1376):
401 [15765](https://github.com/civicrm/civicrm-core/pull/15765))**
403 - **Fixing a fatal error when installing extensions with Option Values defined
404 in XML ([15643](https://github.com/civicrm/civicrm-core/pull/15643))**
406 - **Civi\Core\Container - Fix warning about Symfony 3=>4 and boot services
407 ([15704](https://github.com/civicrm/civicrm-core/pull/15704))**
409 - **Customfields attached to addresses break the profile page
410 ([dev/core#1324](https://lab.civicrm.org/dev/core/issues/1324):
411 [15541](https://github.com/civicrm/civicrm-core/pull/15541))**
413 - **Fix bug in SQL queue that can cause tasks to be run twice in a
414 multiprocess environment
415 ([15421](https://github.com/civicrm/civicrm-core/pull/15421))**
417 - **Fixes an issue where the two arrays weren't always being merged correctly
418 ([15482](https://github.com/civicrm/civicrm-core/pull/15482))**
420 - **Fix error when adding activities from Search Builder
421 ([15522](https://github.com/civicrm/civicrm-core/pull/15522))**
423 - **Do no invoke Hooks via UF unless container has been built or it is a hook
424 designed to run without container being built
425 ([15339](https://github.com/civicrm/civicrm-core/pull/15339))**
427 - **Ensure front-end hooks are only registered on main query
428 ([166](https://github.com/civicrm/civicrm-wordpress/pull/166))**
430 - **Fix E_NOTICE for is_required in address form
431 ([15423](https://github.com/civicrm/civicrm-core/pull/15423))**
433 - **Customfields of type Multiselect attached to an Address do not render in
434 profile page (appear empty)
435 ([dev/core#1282](https://lab.civicrm.org/dev/core/issues/1282):
436 [15375](https://github.com/civicrm/civicrm-core/pull/15375) and
437 [15638](https://github.com/civicrm/civicrm-core/pull/15638))**
439 - **Upgrade to CiviCRM 5.20.beta fails because of MessageTemplate error
440 ([marketing/civicrm-website#163](https://lab.civicrm.org/marketing/civicrm-website/issues/163):
441 [15844](https://github.com/civicrm/civicrm-core/pull/15844))**
443 This change allows the upgrade process to sidestep missing system workflow
444 message templates rather than failing when trying to update them.
446 - **Link to docs.civicrm.org instead of wiki
447 ([15973](https://github.com/civicrm/civicrm-core/pull/15973))**
449 Outdated links to the old CiviCRM wiki that appear in upgrade messages have
450 been replaced with links to the current user documentation.
452 - **Ensure that Relative key is not added for non Select Date is_search_range
453 custom fields ([15977](https://github.com/civicrm/civicrm-core/pull/15977) and
454 [16002](https://github.com/civicrm/civicrm-core/pull/16002))**
458 - **Fix longstanding name vs label problems for case roles
459 ([dev/core#1046](https://lab.civicrm.org/dev/core/issues/1046):
460 [15556](https://github.com/civicrm/civicrm-core/pull/15556),
461 [15483](https://github.com/civicrm/civicrm-core/pull/15483), and
462 [15939](https://github.com/civicrm/civicrm-core/pull/15939))**
464 Case roles are now defined in case types as relationship type names instead of
465 labels. This fixes a variety of bugs for CiviCRM instances with case roles
466 that rely on relationships where the label does not match the name. A new
467 system check will alert administrators if case types stored in XML files need
470 - **Saving a case type can give a php warning, but the warning is more hidden
471 than usual so it seems like everything is ok
472 ([dev/core#1335](https://lab.civicrm.org/dev/core/issues/1335):
473 [15554](https://github.com/civicrm/civicrm-core/pull/15554))**
475 Prevents a php warning "htmlspecialchars() expects parameter 1 to be string,
476 array given" when saving case type.
478 - **Reinstate Case ID search field
479 ([15935](https://github.com/civicrm/civicrm-core/pull/15935))**
481 This resolves a regression in 5.20.beta where the case search lacked a case ID
484 - **Upgrade script to flip autoassignees using bidirectional relationship in
485 older civicase configs
486 ([15542](https://github.com/civicrm/civicrm-core/pull/15542))**
488 Fixes a visual display issue for sites with configured activity autoassignees
489 in a CiviCase timeline using "by relationship" with a bidirectional
490 relationship (e.g. sibling) prior to 5.16 . Specifically, sites with this
491 setup will see a blank on the case type edit screen. It doesn't affect
492 operation, and saving the case type doesn't lose any info, but it's a visual
493 confusion. This upgrade script flips the a's and b's for those settings.
495 - **Minor a_b/b_a mixup on case type edit screen
496 ([15412](https://github.com/civicrm/civicrm-core/pull/15412))**
498 - **Print Merge document from case search doesn't file on correct contact.
499 ([dev/core#893](https://lab.civicrm.org/dev/core/issues/893):
500 [15626](https://github.com/civicrm/civicrm-core/pull/15626))**
502 - **Ensure that using case_start_date_high and case_start_date_low etc in url
503 variables works in force=1 mode
504 ([15619](https://github.com/civicrm/civicrm-core/pull/15619))**
506 - **Minimal fix for new enotice on case.subject
507 ([15616](https://github.com/civicrm/civicrm-core/pull/15616))**
509 - **Clicking on a contact's cases tab gives Network Error Unable to reach the
510 server ([dev/core#1381](https://lab.civicrm.org/dev/core/issues/1381):
511 [15804](https://github.com/civicrm/civicrm-core/pull/15804))**
515 - **Respect calling code passing in 'null' for creditnote_id.
516 ([15232](https://github.com/civicrm/civicrm-core/pull/15232))**
518 Fixes an issue where the contribution BAO disregards 'null' when passed in for
521 - **Change test to use preferred methods, fix revealed money bug
522 ([15622](https://github.com/civicrm/civicrm-core/pull/15622))**
524 Ensures that Payment.create cleans the `total_amount` field like
527 - **Membership and Event Related Contributions - shows all contributions
528 ([dev/core#1435](https://lab.civicrm.org/dev/core/issues/1435):
529 [16013](https://github.com/civicrm/civicrm-core/pull/16013))**
531 This resolves a regression when viewing a membership or participant record
532 where the related contributions show all contributions, not those related to
535 - **Fix cancel payment action to reverse financial items related to cancelled
536 payment ([15630](https://github.com/civicrm/civicrm-core/pull/15630))**
538 Fixes a bug where the `financial_entity_trxn` entries associated with a
539 canceled payment were not being reversed as they should have been.
541 - **Missing Financial type and Credit Account Code in Bookkeeping Transaction
543 [dev/financial#40](https://lab.civicrm.org/dev/financial/issues/40):
544 [15740](https://github.com/civicrm/civicrm-core/pull/15740))**
546 Fixes an issue whereby `civicrm_entity_financial_trxn` records for the
547 `civicrm_financial_item` table were not created when refunding against line
548 items with a quantity of zero - i.e. where there were selected check boxes &
551 - **Deprecate Contribute.transact api
552 ([dev/financial#79](https://lab.civicrm.org/dev/financial/issues/79):
553 [15564](https://github.com/civicrm/civicrm-core/pull/15564),
554 [15591](https://github.com/civicrm/civicrm-core/pull/15591) and
555 [15504](https://github.com/civicrm/civicrm-core/pull/15504))**
557 Marks the `Contribute.transact` as deprecated in the API explorer, adds a
558 noisy deprecation warning to Contribute.transact and moves it to its own file.
560 - **Cleanup date handling on Payment.create
561 ([15687](https://github.com/civicrm/civicrm-core/pull/15687))**
563 Ensures that adding a payment on the `AdditionalPaymentForm` does not change
564 the Contribution `receive_date`.
566 - **Ensure contributionRecurID is set on processor
567 ([15673](https://github.com/civicrm/civicrm-core/pull/15673))**
569 Ensures that `contributionRecurID` is available to payment processors that
570 need it in `cancelSubscription`.
572 - **fix 'balance due' on Pledge Detail for non-US installs
573 ([15543](https://github.com/civicrm/civicrm-core/pull/15543))**
575 Fixes a bug where the Pledge Detail report crashed when "Balance Due" was
576 selected and the label of either of the pledge statuses "Completed" or
577 "Canceled" had been modified.
579 - **Record Refund fails due to thousands separator in amount
580 ([dev/core#1409](https://lab.civicrm.org/dev/core/issues/1409):
581 [15889](https://github.com/civicrm/civicrm-core/pull/15889))**
583 This bug was sidestepped by removing the Net Amount field on the Record Refund
586 - **Incorrect allocation of payment on an edited multi-line item event
588 ([dev/financial#34](https://lab.civicrm.org/dev/financial/issues/34):
589 [14763](https://github.com/civicrm/civicrm-core/pull/14763))**
591 - **Incorrect Allocation of refunded line items on Multi Event Registrations
592 ([dev/financial#94](https://lab.civicrm.org/dev/financial/issues/94):
593 [15664](https://github.com/civicrm/civicrm-core/pull/15664))**
595 - **Conditionally add contribution metadata for advanced search only if the user
596 has access to CiviContribute
597 ([15966](https://github.com/civicrm/civicrm-core/pull/15966))**
599 - **Fix ambiguous column in Contribution Search query with ORDER BY
600 ([15899](https://github.com/civicrm/civicrm-core/pull/15899))**
602 This fixes an issue where columns whose names are not unique in the underlying
603 query of a search cause a database error when they're used as a sort column.
605 - **Custom Search: Find Contributors by Aggregate Totals does not return results
606 if 'Choose date range' is selected and end date is empty
607 ([dev/core#1297](https://lab.civicrm.org/dev/core/issues/1297):
608 [15415](https://github.com/civicrm/civicrm-core/pull/15415))**
610 - **Custom Search: Search actions broken on Find Contributors by Aggregate
611 Totals ([dev/core#1377](https://lab.civicrm.org/dev/core/issues/1377):
612 [15873](https://github.com/civicrm/civicrm-core/pull/15873))**
614 - **Fix Sybunt to select mark rows as selected
615 ([15872](https://github.com/civicrm/civicrm-core/pull/15872))**
617 This resolves a bug where checking result rows on the SYBUNT custom search
618 would not actually select them or increment the "selected" count of rows.
620 - **Remove unhelpful alert from contribution search
621 ([15787](https://github.com/civicrm/civicrm-core/pull/15787))**
623 This removes the "We did not recognize the search field..." warning that would
624 appear when searching on certain fields even as the search would accurately
625 filter on the field's value.
627 - **Save & Next button on Contribution Page Widgets tab does not move user to
628 next step ([dev/core/1266](https://lab.civicrm.org/dev/core/issues/1266):
629 [15323](https://github.com/civicrm/civicrm-core/pull/15323))**
631 - **Fix parameters for statusBounce in AdditionalPayment
632 ([15579](https://github.com/civicrm/civicrm-core/pull/15579))**
634 - **Fix deprecation warning on Price Set report
635 ([15952](https://github.com/civicrm/civicrm-core/pull/15952))**
637 - **RepeatTransaction API incorrectly calculates the total amount when recur
638 payment has tax amount.
639 ([dev/core#1317](https://lab.civicrm.org/dev/core/issues/1317):
640 [15517](https://github.com/civicrm/civicrm-core/pull/15517))**
642 - **Incorrect line items recorded with contribution repeattransaction api.
643 ([dev/core#1367](https://lab.civicrm.org/dev/core/issues/1367):
644 [15735](https://github.com/civicrm/civicrm-core/pull/15735))**
646 - **Contribution Detail Report gives incorrect results when `force=1`
647 ([dev/report#20](https://lab.civicrm.org/dev/report/issues/20):
648 [15315](https://github.com/civicrm/civicrm-core/pull/15315))**
650 - **Fix typo in parameter description for PaymentProcessor.pay
651 ([15476](https://github.com/civicrm/civicrm-core/pull/15476))**
653 - **Fix Payment.create with a negative value to create the correct financial
654 items ([15705](https://github.com/civicrm/civicrm-core/pull/15705))**
656 - **Fix Payment.create bug whereby payment_processor_id is not being used for
658 ([15640](https://github.com/civicrm/civicrm-core/pull/15640))**
660 - **Fix bug whereby cidZero does not prepopulate billing details for selected
661 contact for pay later.
662 ([15565](https://github.com/civicrm/civicrm-core/pull/15565))**
664 - **Contribution Dashboard still uses broken Open Flash Charts
665 ([dev/core#1309](https://lab.civicrm.org/dev/core/issues/1309):
666 [15474](https://github.com/civicrm/civicrm-core/pull/15474))**
668 - **Fix 5.20 regression on retrieving template transaction with no logged in
669 user ([15976](https://github.com/civicrm/civicrm-core/pull/15976))**
673 - **Event Participants actions (Print Name Badges, Export...) ignores search
674 criteria ([dev/core#1422](https://lab.civicrm.org/dev/core/issues/1422):
675 [15962](https://github.com/civicrm/civicrm-core/pull/15962))**
677 This resolves an issue where the action would be based upon all participants
678 of all events rather than all of the results of the current search.
680 - **Fix loading of profile fields on additional participant form
681 ([15698](https://github.com/civicrm/civicrm-core/pull/15698))**
683 Fixes a bug where no profile fields were loaded on the additional participant
684 form of an Online Registration form configured to accept multiple
687 - **Fix logic determining whether (masked) credit card details are displayed in
688 event online receipts
689 ([15532](https://github.com/civicrm/civicrm-core/pull/15532))**
691 Fixes Event online receipts to display credit card info if available.
695 - **Grant in Edit mode doesn't show the associated contact and standardize all
697 ([dev/core#1065](https://lab.civicrm.org/dev/core/issues/1065):
698 [15362](https://github.com/civicrm/civicrm-core/pull/15362),
699 [15321](https://github.com/civicrm/civicrm-core/pull/15321) and
700 [15744](https://github.com/civicrm/civicrm-core/pull/15744))**
704 - **Add in unit test for namespaced fields in mailing reports and also fix issue
705 where by mailing_name has been namespaced also in 5.20 (Follow-up to
706 [dev/mail#56](https://lab.civicrm.org/dev/mail/issues/56) and
707 [dev/mail#57](https://lab.civicrm.org/dev/mail/issues/57):
708 [15782](https://github.com/civicrm/civicrm-core/pull/15782))**
712 - **Duplicated inherited membership with multiple relationships when adding a
714 ([dev/core#1361](https://lab.civicrm.org/dev/core/issues/1361):
715 [15731](https://github.com/civicrm/civicrm-core/pull/15731))**
717 Fixes a bug where duplicate inherited relationships were being created for the
720 - **Agile fixFix inherited membership being deleted when there is still a valid
722 ([15062](https://github.com/civicrm/civicrm-core/pull/15062))**
724 Fixes a bug where contacts with two or more relationships to a member contact
725 would lose their inherited relationship if one of their other relationships
728 - **Unable to edit the membership end date for members that have a recurring
729 payment ([dev/core#1126](https://lab.civicrm.org/dev/core/issues/1126):
730 [15540](https://github.com/civicrm/civicrm-core/pull/15540))**
732 ### Backdrop Integration
734 - **Backdrop support for adding roles and perms
735 ([infra/ops#906](https://lab.civicrm.org/infra/ops/issues/906):
736 [15571](https://github.com/civicrm/civicrm-core/pull/15571))**
738 Ensures that one can build a Backdrop/CiviCRM site with a demo user with
739 the permissions expected of a demo user.
741 ### WordPress Integration
743 - **Reinstate traversal as "method of last resort" to find WordPress (Follow-up
744 from [dev/core#1412](https://lab.civicrm.org/dev/core/issues/1412):
745 [15929](https://github.com/civicrm/civicrm-core/pull/15929))**
747 This restores code removed in 5.19.3 to resolve the location of the CiviCRM
748 code in WordPress, only executing it as a fallback method if the new method
751 ## <a name="misc"></a>Miscellany
753 - **Replace jcalendar instances with datepicker
754 ([dev/core#561](https://lab.civicrm.org/dev/core/issues/561):
755 [15661](https://github.com/civicrm/civicrm-core/pull/15661),
756 [15677](https://github.com/civicrm/civicrm-core/pull/15677),
757 [15694](https://github.com/civicrm/civicrm-core/pull/15694),
758 [15671](https://github.com/civicrm/civicrm-core/pull/15671),
759 [15637](https://github.com/civicrm/civicrm-core/pull/15637),
760 [15633](https://github.com/civicrm/civicrm-core/pull/15633),
761 [15614](https://github.com/civicrm/civicrm-core/pull/15614),
762 [15710](https://github.com/civicrm/civicrm-core/pull/15710),
763 [15719](https://github.com/civicrm/civicrm-core/pull/15719),
764 [15618](https://github.com/civicrm/civicrm-core/pull/15618),
765 [15636](https://github.com/civicrm/civicrm-core/pull/15636),
766 [15693](https://github.com/civicrm/civicrm-core/pull/15693),
767 [15711](https://github.com/civicrm/civicrm-core/pull/15711),
768 [15702](https://github.com/civicrm/civicrm-core/pull/15702) and
769 [15635](https://github.com/civicrm/civicrm-core/pull/15635))**
771 - **Api support for deduping (Code cleanup in preparation for
772 [dev/core#1230](https://lab.civicrm.org/dev/core/issues/1230):
773 [15184](https://github.com/civicrm/civicrm-core/pull/15184))**
775 - **group.get API (v3) fails to find groups of one group_type if group has
776 multiple types (Test for
777 [dev/core#1321](https://lab.civicrm.org/dev/core/issues/1321):
778 [15546](https://github.com/civicrm/civicrm-core/pull/15546))**
780 - **composer.{json,lock} - Make the "tplaner/when" exception for old PHP
781 reproducible ([15732](https://github.com/civicrm/civicrm-core/pull/15732))**
783 - **Add in xkerman/restricted-unserialize package
784 ([15730](https://github.com/civicrm/civicrm-core/pull/15730))**
786 - **INTL_IDNA_VARIANT_2003 deprecated in PHP_7.2
787 ([266](https://github.com/civicrm/civicrm-packages/pull/266))**
789 - **Extract contribution search functions to help with case search improvements
790 ([15373](https://github.com/civicrm/civicrm-core/pull/15373))**
792 - **Further cleanup and clarification on MembershipPayment
793 ([15407](https://github.com/civicrm/civicrm-core/pull/15407))**
795 - **The loop doth process too much, methinks
796 ([15473](https://github.com/civicrm/civicrm-core/pull/15473))**
798 - **[Membership-backoffice] Reduce reliance on multiple specific but confusing
800 ([14919](https://github.com/civicrm/civicrm-core/pull/14919))**
802 - **Simplify logic for displaying card details for Event online registration
803 Confirm, Thankyou page
804 ([15533](https://github.com/civicrm/civicrm-core/pull/15533))**
806 - **Fix typo in Manager.php
807 ([15518](https://github.com/civicrm/civicrm-core/pull/15518))**
809 - **Update my organisation
810 ([15469](https://github.com/civicrm/civicrm-core/pull/15469))**
812 - **Combine IF clause for readability.
813 ([15568](https://github.com/civicrm/civicrm-core/pull/15568))**
815 - **Switch creation of ParticipantPayment to use API
816 ([15500](https://github.com/civicrm/civicrm-core/pull/15500))**
818 - **Remove when package from packages
819 ([264](https://github.com/civicrm/civicrm-packages/pull/264))**
821 - **Cast result of getContributionBalance to float to match comment block.
822 ([15621](https://github.com/civicrm/civicrm-core/pull/15621))**
824 - **Remove obsolete supportStorageOfAccents() method.
825 ([15589](https://github.com/civicrm/civicrm-core/pull/15589))**
827 - **Upgrade When package to the lastest version
828 ([15223](https://github.com/civicrm/civicrm-core/pull/15223))**
830 - **Api4 explorer: Fix variable leaking to global scope
831 ([15615](https://github.com/civicrm/civicrm-core/pull/15615))**
833 - **Improve metadata support for table civicrm_mailing_job in search
834 ([15634](https://github.com/civicrm/civicrm-core/pull/15634))**
836 - **Change parent class on mailing_form
837 ([15629](https://github.com/civicrm/civicrm-core/pull/15629))**
839 - **Add uniquenames for mailing_name, mailing_job_status
840 ([15652](https://github.com/civicrm/civicrm-core/pull/15652))**
842 - **Add getQillValue fn to generalise qill string construct
843 ([15667](https://github.com/civicrm/civicrm-core/pull/15667))**
845 - **Remove scriptFee & scriptArray params
846 ([dev/event#19](https://lab.civicrm.org/dev/event/issues/19):
847 [15679](https://github.com/civicrm/civicrm-core/pull/15679))**
849 - **Fix the relationship direction in testSingleMembershipForTwoRelationships
850 ([15738](https://github.com/civicrm/civicrm-core/pull/15738))**
852 - **Remove recordPayment function.
853 ([15684](https://github.com/civicrm/civicrm-core/pull/15684))**
855 - **Eliminate silly parameter
856 ([15723](https://github.com/civicrm/civicrm-core/pull/15723))**
858 - **Use Yes-No radio instead of checkbox on search form.
859 ([15669](https://github.com/civicrm/civicrm-core/pull/15669))**
861 - **Cleanup following smart group conversions and fix the old name of the
862 relationship date relative fields for conversion and add a unit test
863 ([15648](https://github.com/civicrm/civicrm-core/pull/15648))**
865 - **Remove a redundant call to formatParamsForPaymentProcessor in
866 AdditionalPayment form
867 ([15578](https://github.com/civicrm/civicrm-core/pull/15578))**
869 - **Remove extraneous full stop, line
870 ([15531](https://github.com/civicrm/civicrm-core/pull/15531))**
872 - **Remove early return on joinTable
873 ([15721](https://github.com/civicrm/civicrm-core/pull/15721))**
875 - **Remove unused, hidden subsystem for "persistent DB tpl strings"
876 ([15660](https://github.com/civicrm/civicrm-core/pull/15660))**
878 - **Fix test setup Function to use order api
879 ([15620](https://github.com/civicrm/civicrm-core/pull/15620))**
881 - **Delete mkdocs.yml
882 ([15658](https://github.com/civicrm/civicrm-core/pull/15658))**
884 - **[NFC] minor simplification
885 ([15425](https://github.com/civicrm/civicrm-core/pull/15425))**
887 - **[NFC] code formatting
888 ([15424](https://github.com/civicrm/civicrm-core/pull/15424))**
890 - **[NFC] dev/core#1046 - minor consistency change
891 ([15486](https://github.com/civicrm/civicrm-core/pull/15486))**
893 - **[NFC] dev/core#1046 - more accurate column heading
894 ([15485](https://github.com/civicrm/civicrm-core/pull/15485))**
896 - **[NFC] comments tidy up …
897 ([15607](https://github.com/civicrm/civicrm-core/pull/15607))**
899 - **[NFC] dev/core#1336 Update doc blocks for various ACL related functions
900 ([15603](https://github.com/civicrm/civicrm-core/pull/15603))**
902 - **[NFC] Cleanup on exceptions
903 ([15750](https://github.com/civicrm/civicrm-core/pull/15750))**
905 - **(NFC) Remove windows-specific debugging code from 11 years ago
906 ([15736](https://github.com/civicrm/civicrm-core/pull/15736))**
908 - **[NFC] Allow users on backdrop to trigger regen.sh
909 ([15717](https://github.com/civicrm/civicrm-core/pull/15717))**
911 - **[NFC] Fix exception thrown to std CRM_Core_Exception
912 ([15716](https://github.com/civicrm/civicrm-core/pull/15716))**
914 - **[NFC] various code cleanup on CRM_Contact_BAO_Query
915 ([15713](https://github.com/civicrm/civicrm-core/pull/15713))**
917 - **[NFC] Test class preliminary clean up
918 ([15685](https://github.com/civicrm/civicrm-core/pull/15685))**
920 - **[NFC] test cleanup
921 ([15683](https://github.com/civicrm/civicrm-core/pull/15683))**
923 - **[NFC] define variable type
924 ([15681](https://github.com/civicrm/civicrm-core/pull/15681))**
926 - **[NFC] Remove unreachable lines
927 ([15672](https://github.com/civicrm/civicrm-core/pull/15672))**
929 - **[NFC] Test cleanup - switch to OrderApi in test setup, add throws, use sin…
930 ([15662](https://github.com/civicrm/civicrm-core/pull/15662))**
932 - **[NFC] reformat BAO_Case file
933 ([15627](https://github.com/civicrm/civicrm-core/pull/15627))**
935 - **[NFC] Add date information to MailingJob Schema
936 ([15628](https://github.com/civicrm/civicrm-core/pull/15628))**
938 - **[NFC] Add in debugging to try and resolve E2E Cache intermitant test …
939 ([15625](https://github.com/civicrm/civicrm-core/pull/15625))**
941 - **Fix test to be more valid
942 ([15743](https://github.com/civicrm/civicrm-core/pull/15743))**
944 - **Add test to lock in obscure custom join handling
945 ([15715](https://github.com/civicrm/civicrm-core/pull/15715))**
947 - **Test improvements
948 ([15720](https://github.com/civicrm/civicrm-core/pull/15720))**
950 - **Test calling CRM_Financial_BAO_PaymentProcessor::getPaymentProcessors
951 ([15499](https://github.com/civicrm/civicrm-core/pull/15499))**
953 - **Update tests to simulate labels that are not the same as names
954 ([15399](https://github.com/civicrm/civicrm-core/pull/15399))**
956 - **Add test for participant receipts, super minor consistency fix.
957 ([15525](https://github.com/civicrm/civicrm-core/pull/15525))**
959 - **[Code-quality] remove references to where_tables, where_clause
960 ([14891](https://github.com/civicrm/civicrm-core/pull/14891))**
962 - **REF Move ipAddress and CC expiry date to prepareParamsForPaymentProcessor
963 ([15291](https://github.com/civicrm/civicrm-core/pull/15291))**
965 - **REF Use the new prepareParamsForPaymentProcessor function in more places
966 ([15281](https://github.com/civicrm/civicrm-core/pull/15281))**
968 - **[REF] Remove transaction as part of minor code cleanup
969 ([15460](https://github.com/civicrm/civicrm-core/pull/15460))**
971 - **[ref] Simplify function signature as parameter is not used
972 ([15459](https://github.com/civicrm/civicrm-core/pull/15459))**
974 - **[REF] move definition of important values & retrieval outside payment…
975 ([15458](https://github.com/civicrm/civicrm-core/pull/15458))**
977 - **[REF] Minor cleanup to determine taxterm with a helper function.
978 ([15488](https://github.com/civicrm/civicrm-core/pull/15488))**
980 - **[REF] Replace deprecated function call with a more readable alternative
981 ([15489](https://github.com/civicrm/civicrm-core/pull/15489))**
983 - **[REF] remove call to deprecated function
984 ([15465](https://github.com/civicrm/civicrm-core/pull/15465))**
986 - **[REF] Fix typos and remove unused variables
987 ([15462](https://github.com/civicrm/civicrm-core/pull/15462))**
989 - **[REF] Rename balanceTrxnParams variable to paymentTrxnParams
990 ([15535](https://github.com/civicrm/civicrm-core/pull/15535))**
992 - **[REF] minor extraction with code to build dedupe arrays
993 ([15519](https://github.com/civicrm/civicrm-core/pull/15519))**
995 - **[REF] basic extraction of sendMails functionality along with a small test
996 extension ([15516](https://github.com/civicrm/civicrm-core/pull/15516))**
998 - **[REF] remove obsolete code.
999 ([15515](https://github.com/civicrm/civicrm-core/pull/15515))**
1001 - **[REF] Deprecate calls to createCreditNoteId
1002 ([15492](https://github.com/civicrm/civicrm-core/pull/15492))**
1004 - **[REF] minor extraction in dedupe code
1005 ([15587](https://github.com/civicrm/civicrm-core/pull/15587))**
1007 - **[REF] minor extraction - Extract code to update line items to paid
1008 ([15602](https://github.com/civicrm/civicrm-core/pull/15602))**
1010 - **[REF] Remove usage of CRM_ACL_BAO_Cache::deleteEntry in favour of usi…
1011 ([15611](https://github.com/civicrm/civicrm-core/pull/15611))**
1013 - **[REF] Remove CRM_Exception in favour of CRM_Core_Exception
1014 ([15610](https://github.com/civicrm/civicrm-core/pull/15610))**
1016 - **[REF] minor refactor towards removing complexity.
1017 ([15594](https://github.com/civicrm/civicrm-core/pull/15594))**
1019 - **[REF] minor tidy ups on very nasty function
1020 ([15722](https://github.com/civicrm/civicrm-core/pull/15722))**
1022 - **[REF] Remove early return on joinTable
1023 ([15718](https://github.com/civicrm/civicrm-core/pull/15718))**
1025 - **[REF] remove as a return Param of getHierContactDetails
1026 ([15714](https://github.com/civicrm/civicrm-core/pull/15714))**
1028 - **[REF] minor code simplification
1029 ([15728](https://github.com/civicrm/civicrm-core/pull/15728))**
1031 - **[REF] Move calls to CRM_Core_BAO_FinancialTrxn::createDeferredTrxn back to
1032 the calling functions.
1033 ([15641](https://github.com/civicrm/civicrm-core/pull/15641))**
1035 - **[REF] Refactor Smart Group Cache population code to be less intensive
1036 ([15588](https://github.com/civicrm/civicrm-core/pull/15588))**
1038 - **[REF] Refactor ACL Contact Cache generation to be more efficient
1039 ([15592](https://github.com/civicrm/civicrm-core/pull/15592))**
1041 - **[REF] extract chunk of code that creates the financial items for a given
1042 line. ([15613](https://github.com/civicrm/civicrm-core/pull/15613))**
1044 - **[REF] Further deconstruction of updateFinancialAccounts
1045 ([15631](https://github.com/civicrm/civicrm-core/pull/15631))**
1047 - **[REF] simplify definition of isARefund
1048 ([15601](https://github.com/civicrm/civicrm-core/pull/15601))**
1050 ## <a name="credits"></a>Credits
1052 This release was developed by the following code authors:
1054 a-n The Artists Information Company - William Mortada; AGH Strategies - Alice
1055 Frumin, Andrew Hunt, Eli Lisseck; Agileware - Pengyi Zhang; Alexy
1056 Mikhailichenko; Australian Greens - Seamus Lee; Christian Wach; CiviCoop - Jaap
1057 Jansma; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku;
1058 CompuCorp- Camilo Rodriguez, Davi Alexandre, Omar Abu Hussein; Dave D;
1059 Electronic Frontier Foundation - Mark Burdett; Florian Kohrt; Freeform
1060 Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Greenpeace CEE -
1061 Patrick Figel; iXiam - César Ramos; JMA Consulting - Monish Deb; John Kingsnorth;
1062 Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; MJW
1063 Consulting - Matthew Wire; Mountev Ltd; Richard van Oosterhout; Squiffle
1064 Consulting - Aidan Saunders; SYSTOPIA Organisationsberatung - Björn Endres;
1065 Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton,
1068 Most authors also reviewed code for this release; in addition, the following
1069 reviewers contributed their comments:
1071 a-n The Artists Information Company - William Mortada; Agileware - Justin
1072 Freeman; Artful Robot - Rich Lott; Blackfly Solutions - Alan Dixon; Circle
1073 Interactive - Dave Jenkins, Pradeep Nayak; CompuCorp - Jamie Novick; Coop
1074 SymbioTIC - Mathieu Lutfy; Fuzion - Luke Stewart; iXiam - Vangelis Pantazis; JMA
1075 Consulting - Joe Murray; Nicol Wistreich; Ray Wright; Red Hot Irons - Heather
1076 Oliver; Skvare - Mark Hanna; OSSeed Technologies LLP - Sushant Paste
1078 ## <a name="feedback"></a>Feedback
1080 These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like
1081 to provide feedback on them, please log in to https://chat.civicrm.org/civicrm
1082 and contact `@agh1`.