3 Released January 6, 2021
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 - **Feature to provide most used countries in top section of Country select
29 list ([19025](https://github.com/civicrm/civicrm-core/pull/19025))**
31 A new option for Pinned Countries allows administrators to specify one or more
32 commonly-used countries to appear at the top of the select list of countries
33 when it appears on forms.
35 - **Send email to contacts when clicking on their email address on the contact's
37 [dev/core#1790](https://lab.civicrm.org/dev/core/-/issues/1790):
38 [19082](https://github.com/civicrm/civicrm-core/pull/19082))**
40 This improves user experience by preventing tooltips from closing as long as
41 the user's mouse is inside of the tooltip element.
43 - **Unhide oauth extension
44 ([19107](https://github.com/civicrm/civicrm-core/pull/19107))**
46 Makes the Oauth extension available for upgrade on the extensions form.
48 - **Support utf8mb4 so notes can save Emojis and other good things (Work Towards
49 [dev/core#339](https://lab.civicrm.org/dev/core/-/issues/339):
50 [18960](https://github.com/civicrm/civicrm-core/pull/18960))**
52 When installing CiviCRM, this makes it so mysql tables are created as
53 utf8mb4 instead of utf8 by default.
55 - **crm-ui-debug - If in debug mode, then load pretty-printer for JSON data
56 ([18994](https://github.com/civicrm/civicrm-core/pull/18994))**
58 Improves debugging experience on AngularJS-based pages by printing debug data
59 formatted nicely instead of as a large text blob.
61 - **afform_html - Include Monaco dependencies
62 ([dev/core#2197](https://lab.civicrm.org/dev/core/-/issues/2197):
63 [18988](https://github.com/civicrm/civicrm-core/pull/18988))**
65 The afform_html extension depends upon the Monaco Editor. This loads the
66 Monaco library as part of core CiviCRM using Composer.
68 - **API - Finer-grained permissions for the dashboard & dashlet entities
69 ([18962](https://github.com/civicrm/civicrm-core/pull/18962))**
71 The API no longer requires the "administer CiviCRM" permission to access
72 dashboard records. Contacts with "access CiviCRM" can read dashboard records
73 for contacts they have access to, and write permissions for non-admins are
74 restricted to editing only their own dashboard.
76 - **Improve APIv4 metadata for RelationshipCache and Bridge entities in general
77 ([19101](https://github.com/civicrm/civicrm-core/pull/19101))**
79 Core changes needed so that Search Kit can support joins.
81 - **Use trait instead of class for Entity Bridges; add OptionList trait
82 ([19010](https://github.com/civicrm/civicrm-core/pull/19010))**
84 Improves APIv4 categorization of entities, which is then used to improve the
87 - **Improve schema metadata for Search Kit
88 ([19075](https://github.com/civicrm/civicrm-core/pull/19075))**
90 Improves the relevance of entities listed in Search Kit by only displaying
91 entities designated as searchable.
94 ([19150](https://github.com/civicrm/civicrm-core/pull/19150) and
95 [19105](https://github.com/civicrm/civicrm-core/pull/19105))**
97 Adds support for multiple and multi-layered joins in Search Kit.
99 - **Afform - Update fields and HTML mode in web-based editors
100 ([19053](https://github.com/civicrm/civicrm-core/pull/19053))**
102 Improves Afform administration screens by adding descriptions for the inputs
103 and a way to view/edit the HTML formulation.
105 - **Afform - Generate dashlets based on `Afform.is_dashlet` property.
106 ([19005](https://github.com/civicrm/civicrm-core/pull/19005))**
108 Makes it easier to expose a custom form on the CiviCRM dashboard by making it
109 so each Afform can be flagged with is_dashlet=1; when toggled, it will
110 register or unregister the dashlet.
112 - **Update Resource URL Helptext
113 ([19046](https://github.com/civicrm/civicrm-core/pull/19046))**
115 Updates Resource URL field help text to accurately reflect today's best
118 - **Improve bootstrap3 checkbox theming
119 ([19006](https://github.com/civicrm/civicrm-core/pull/19006))**
121 Adds some reusable styling for check boxes in Bootstrap.
123 - **changes social media iframes/scripts to links, simplifies markup, adds email
125 ([18880](https://github.com/civicrm/civicrm-core/pull/18880))**
127 Improves the display of the "Help Spread the word" section for sites using the
128 standard theme (Greenwich).
130 - **Add standard Contact fields to the Bookkeeping report template
131 ([19008](https://github.com/civicrm/civicrm-core/pull/19008))**
133 Improves the Bookkeeping report template by adding standard contact fields.
135 - **Allow Angular modules to require Resource bundles
136 ([18987](https://github.com/civicrm/civicrm-core/pull/18987))**
138 Permits Angular modules to require "bundles" from Civi::Resources.
140 - **Extensions UI tweak
141 ([18981](https://github.com/civicrm/civicrm-core/pull/18981))**
143 The subheader for extensions in the listing is now the description rather than
144 the key. The details in the expanded listing are also reordered.
148 - **Cancel first contribution associated to membership, cancels the
149 membership (Work Towards
150 [dev/core#927](https://lab.civicrm.org/dev/core/-/issues/927):
151 [19012](https://github.com/civicrm/civicrm-core/pull/19012)
152 [19014](https://github.com/civicrm/civicrm-core/pull/19014) and
153 [19015](https://github.com/civicrm/civicrm-core/pull/19015))**
155 Extends the contributioncancelactions extension to also work for Failed
156 contributions, cleans up related code and adds a test.
158 - **Deprecate BaseIPN functions validateData & LoadObject
159 (Work Towards [dev/financial#148](https://lab.civicrm.org/dev/financial/-/issues/148):
160 [19033](https://github.com/civicrm/civicrm-core/pull/19033),
161 [19034](https://github.com/civicrm/civicrm-core/pull/19034),
162 [19035](https://github.com/civicrm/civicrm-core/pull/19035),
163 [18947](https://github.com/civicrm/civicrm-core/pull/18947) and
164 [19043](https://github.com/civicrm/civicrm-core/pull/19043))**
166 Work towards simplifying the CiviContribute code.
168 - **Remove detail about updating related components when editing a
170 ([dev/core#2158](https://lab.civicrm.org/dev/core/-/issues/2158):
171 [18961](https://github.com/civicrm/civicrm-core/pull/18961))**
173 Removes some details from the message when editing a contribution status which
174 improves performance.
179 ([19020](https://github.com/civicrm/civicrm-core/pull/19020))**
181 Makes the Grant entity available in APIv4.
185 - **Remove 'onlinePendingContribution' payment support from membership edit form
186 ([dev/core#2155](https://lab.civicrm.org/dev/core/-/issues/2155):
187 [18964](https://github.com/civicrm/civicrm-core/pull/18964))**
189 Removes "Update Payment Status" checkbox from Membership Edit Form to improve
190 user experience by simplifying the UI.
192 ### WordPress Integration
194 - **Add action parameter to PCP shortcode
195 ([dev/wordpress#63](https://lab.civicrm.org/dev/wordpress/-/issues/63):
196 [19058](https://github.com/civicrm/civicrm-core/pull/19058) and
197 [226](https://github.com/civicrm/civicrm-wordpress/pull/226))**
199 Improves the PCP short code by adding an action parameter for which the options
200 are "info" and "transact". When the action parameter is set to "info" the page
201 displays the PCP info page, when it is set as "transact" the page displays the
202 relevant PCP contribution form.
204 ## <a name="bugs"></a>Bugs resolved
208 - **Multiple available languages disables kcfinder
209 ([dev/core#2263](https://lab.civicrm.org/dev/core/-/issues/2263):
210 [19245](https://github.com/civicrm/civicrm-core/pull/19245))**
212 - **upgrade can't find service
213 ([dev/core#2232](https://lab.civicrm.org/dev/core/-/issues/2232):
214 [19141](https://github.com/civicrm/civicrm-core/pull/19141) and
215 [19192](https://github.com/civicrm/civicrm-core/pull/19192))**
217 Fixes an upgrade bug where `CachedCiviContainer` has stale data after an
220 - **Can't export contacts
221 ([dev/core#2230](https://lab.civicrm.org/dev/core/-/issues/2230):
222 [19104](https://github.com/civicrm/civicrm-core/pull/19104))**
224 Fixes DB Error when you try to export contacts without selecting "All Primary
227 - **APIv4 - Fix dynamic bridge joins (used by Search Kit)
228 ([19159](https://github.com/civicrm/civicrm-core/pull/19159))**
230 Fixes a few bugs in Search Kit where extra rows were returned due to a
231 misconstructed join in APIv4, or in some cases the join would completely fail.
233 - **afform - Get default field `<label>` from `label` instead of `title`
234 ([18989](https://github.com/civicrm/civicrm-core/pull/18989))**
236 Updates afform/core and afform/gui to use better default labels -- e.g.
237 when you add the gender_id field, it should default to "Gender" (label)
238 instead of "Gender ID" (title).
240 - **afform/gui - Fix rendering of the "Form Settings"
241 ([18990](https://github.com/civicrm/civicrm-core/pull/18990))**
243 Ensures that "URL" and "Permissions" are displayed on the Afform Form Settings
246 - **Fix undeclared afform requirement of ngRoute
247 ([18975](https://github.com/civicrm/civicrm-core/pull/18975))**
249 Fixes a crash when embedding an afform directive on other Angular pages.
251 - **Do not attempt to obsolete primary key on log tables (Work Towards
252 [dev/core#2120](https://lab.civicrm.org/dev/core/-/issues/2120):
253 [18748](https://github.com/civicrm/civicrm-core/pull/18748))**
255 - **BUG: when changing a group option value CiviCRM does not update existing
256 records ([dev/core#2153](https://lab.civicrm.org/dev/core/-/issues/2153):
257 [18959](https://github.com/civicrm/civicrm-core/pull/18959) and
258 [18912](https://github.com/civicrm/civicrm-core/pull/18912))**
260 - **Reports cannot filter for Contacts with multiple selections in a
261 multi-select Custom Field
262 ([dev/core#2162](https://lab.civicrm.org/dev/core/-/issues/2162):
263 [18978](https://github.com/civicrm/civicrm-core/pull/18978))**
265 - **Custom fields of type "Integer" with radio buttons can cause Advanced Search
266 to break ([dev/core#2188](https://lab.civicrm.org/dev/core/-/issues/2188):
267 [19123](https://github.com/civicrm/civicrm-core/pull/19123) and
268 [18970](https://github.com/civicrm/civicrm-core/pull/18970))**
270 - **E_NOTICE when calling CRM_Core_BAO_SchemaHandler::createTable with logging
271 turned on ([dev/core#2190](https://lab.civicrm.org/dev/core/-/issues/2190):
272 [18985](https://github.com/civicrm/civicrm-core/pull/18985))**
274 - **E_NOTICE when creating custom field of type select
275 ([dev/core#2196](https://lab.civicrm.org/dev/core/-/issues/2196):
276 [18991](https://github.com/civicrm/civicrm-core/pull/18991))**
278 - **APIv3 - Fix legacy handling for html_type Autocomplete-Select
279 ([18949](https://github.com/civicrm/civicrm-core/pull/18949))**
281 - **Fix Invalid argument PHP warning
282 ([19219](https://github.com/civicrm/civicrm-core/pull/19219))**
284 - **DispatchPolicy - Actively report any upgrade problems with
285 hook_civicrm_permission
286 ([19217](https://github.com/civicrm/civicrm-core/pull/19217))**
288 - **Fix failure to assign view tpl variables to view page if context=search is
289 in the url ([19189](https://github.com/civicrm/civicrm-core/pull/19189))**
291 - **Check for membership type fee before applying tax
292 ([19007](https://github.com/civicrm/civicrm-core/pull/19007))**
294 - **Don't break clickthrough URLs when there's leading whitespace
295 ([18965](https://github.com/civicrm/civicrm-core/pull/18965))**
297 - **Add a way to choose between nl_NL and nl_BE
298 ([18963](https://github.com/civicrm/civicrm-core/pull/18963))**
300 - **Ensure "civicrm_initialized" action only fires once
301 ([221](https://github.com/civicrm/civicrm-wordpress/pull/221))**
303 - **Search kit - fix bugs introduced during refactoring
304 ([19261](https://github.com/civicrm/civicrm-core/pull/19261))**
306 - **Fix "Save Matching Contact" button ([dev/core#2287](https://lab.civicrm.org/dev/core/-/issues/2287):
307 [19328](https://github.com/civicrm/civicrm-core/pull/19328))**
311 - **Campaigns > Reserve Respondents causes SQL error
312 ([dev/core#2172](https://lab.civicrm.org/dev/core/-/issues/2172):
313 [18948](https://github.com/civicrm/civicrm-core/pull/18948))**
315 Fixes a bug where searching for respondents to a campaign resulted in a SQL
320 - **Next scheduled recurring date set to 0 - details emerging (Work Towards
321 [dev/core#2231](https://lab.civicrm.org/dev/core/-/issues/2231):
322 [19119](https://github.com/civicrm/civicrm-core/pull/19119))**
324 Fixes failure to calculate next_scheduled_date for contribution series
325 initiated on CiviCRM 5.29 or later.
327 - **Paypal Standard IPNs not being correctly handled leaving contributions as
328 Pending (incomplete transaction) (Work Towards
329 [dev/core#1931](https://lab.civicrm.org/dev/core/-/issues/1931):
330 [18980](https://github.com/civicrm/civicrm-core/pull/18980))**
332 Prevents PayPal from double-encoding the IPN Notify URL.
334 - **Orange Paypal Pro button not redirecting properly after reCaptcha on Paypal
335 ([dev/financial#153](https://lab.civicrm.org/dev/financial/-/issues/153):
336 [18993](https://github.com/civicrm/civicrm-core/pull/18993))**
338 - **civicrm_api3_contribution_transact deprecation message has broken docs link
339 ([dev/core#2235](https://lab.civicrm.org/dev/core/-/issues/2235):
340 [19139](https://github.com/civicrm/civicrm-core/pull/19139))**
342 - **Handle possibility of fee_amount = ''
343 ([19120](https://github.com/civicrm/civicrm-core/pull/19120))**
347 - **"Self-service eligibility" has incorrect behavior when "hours to cancel" is
348 zero ([dev/event#44](https://lab.civicrm.org/dev/event/-/issues/44):
349 [18950](https://github.com/civicrm/civicrm-core/pull/18950))**
351 Don't allow self-service cancelling after an event when 'hours to cancel' is
354 - **Find Participants: Broken "Edit" button
355 ([dev/core#2248](https://lab.civicrm.org/dev/core/-/issues/2248):
356 [19183](https://github.com/civicrm/civicrm-core/pull/19183))**
358 - **E_NOTICE when deleting participant
359 ([19011](https://github.com/civicrm/civicrm-core/pull/19011))**
361 - **CiviEvent - Error registering participants via search task
362 ([19125](https://github.com/civicrm/civicrm-core/pull/19125))**
364 - **Event Full: fix translation regression
365 ([19027](https://github.com/civicrm/civicrm-core/pull/19027))**
369 - **Export selected entries in Membership search results when selecting fields:
370 all results are returned, not selected entries
371 ([dev/core#2246](https://lab.civicrm.org/dev/core/-/issues/2246):
372 [19176](https://github.com/civicrm/civicrm-core/pull/19176))**
374 ### Drupal Integration
376 - **Wrong link to Drupal's permissions page
377 ([dev/drupal#146](https://lab.civicrm.org/dev/drupal/-/issues/146):
378 [18986](https://github.com/civicrm/civicrm-core/pull/18986))**
380 Ensure that the link to Drupal Access Control points to the right place
381 regardless of which Drupal version you are using (it was broken for Drupal 8
384 - **D8/D9 Fix Session Start Handling
385 ([dev/drupal#149](https://lab.civicrm.org/dev/drupal/-/issues/149):
386 [19044](https://github.com/civicrm/civicrm-core/pull/19044))**
388 - **Update civicrm.module install links
389 ([630](https://github.com/civicrm/civicrm-drupal/pull/630) and
390 [629](https://github.com/civicrm/civicrm-drupal/pull/629))**
392 ### WordPress Integration
394 - **Upgrade CiviCRM 5.28.3 to 5.30.0 with Clean URLs and WordPress Base Page
395 "CiviCRM" breaks Mosaico IMG URLs and Email Tracked URLs (Partial Fix For
396 [dev/core#2213](https://lab.civicrm.org/dev/core/-/issues/2213):
397 [19063](https://github.com/civicrm/civicrm-core/pull/19063))**
399 Ensures WordPress does not show a 404 when wpBasePage is saved in mixed-case
400 (e.g. "CiviCRM") and that it renders CiviCRM content as expected.
402 - **Fix assignment of base page template
403 ([227](https://github.com/civicrm/civicrm-wordpress/pull/227))**
405 ## <a name="misc"></a>Miscellany
407 - **Standardise more params in completeOrder
408 ([18952](https://github.com/civicrm/civicrm-core/pull/18952))**
410 - **Fix mglaman mapping
411 ([19134](https://github.com/civicrm/civicrm-core/pull/19134))**
413 - **Fix APIv4 test to assert an exception is thrown
414 ([19009](https://github.com/civicrm/civicrm-core/pull/19009))**
416 - **Menu links for Petitions, Surveys do not open correct tab (Cleanup towards
417 [dev/core#2215](https://lab.civicrm.org/dev/core/-/issues/2215):
418 [19065](https://github.com/civicrm/civicrm-core/pull/19065))**
420 - **Handle emojis less fatally where not supported (Test for
421 [dev/core#2165](https://lab.civicrm.org/dev/core/-/issues/2165):
422 [18918](https://github.com/civicrm/civicrm-core/pull/18918))**
424 - **Clean up search actions in core to make them available from search builder
425 (Clean Up Towards [dev/core#2066](https://lab.civicrm.org/dev/core/-/issues/2066):
426 [18772](https://github.com/civicrm/civicrm-core/pull/18772))**
428 - **finish 'this round' of completeOrder
429 cleanup(Work Towards [dev/financial#152](https://lab.civicrm.org/dev/financial/-/issues/152):
430 [19016](https://github.com/civicrm/civicrm-core/pull/19016))**
432 - **Minor code cleanup - dedupe isNull checks
433 ([18819](https://github.com/civicrm/civicrm-core/pull/18819))**
435 - **Rewrite jquery.dashboard.js as Angular app
436 ([18971](https://github.com/civicrm/civicrm-core/pull/18971))**
438 - **Delete outdated/unused crmExample Angular module
439 ([19049](https://github.com/civicrm/civicrm-core/pull/19049))**
441 - **Deprecate UFGroup::add parameter ids
442 ([19060](https://github.com/civicrm/civicrm-core/pull/19060))**
444 - **Extract function that generates upgrade link for extensions
445 ([19070](https://github.com/civicrm/civicrm-core/pull/19070))**
447 - **[REF] For the time being have phpcs ignore eval usages
448 ([225](https://github.com/civicrm/civicrm-wordpress/pull/225))**
450 - **[REF] Remove xssString as it is providing a false sense of security
451 ([312](https://github.com/civicrm/civicrm-packages/pull/312))**
453 - **[REF] Minor variable cleanup
454 ([18935](https://github.com/civicrm/civicrm-core/pull/18935))**
456 - **[Ref] Use variables directly
457 ([18936](https://github.com/civicrm/civicrm-core/pull/18936))**
459 - **[REF] Remove always FALSE variable from transitionComponents
460 ([18983](https://github.com/civicrm/civicrm-core/pull/18983))**
462 - **[REF] Decouple crmD3 angular module from CiviMail
463 ([19047](https://github.com/civicrm/civicrm-core/pull/19047))**
465 - **[REF] Remove xssString as it is providing a false sense of security
466 ([19045](https://github.com/civicrm/civicrm-core/pull/19045))**
468 - **[REF] remove obscure use of objects from A.net
469 ([19040](https://github.com/civicrm/civicrm-core/pull/19040))**
471 - **[REF] Simplify sendNotification determination
472 ([19054](https://github.com/civicrm/civicrm-core/pull/19054))**
474 - **[REF] Stop passing objects to recur in paypal pro - pass specific objects
475 ([19041](https://github.com/civicrm/civicrm-core/pull/19041))**
477 - **[REF] remove obscure use of objects from Anet.ipn
478 ([19039](https://github.com/civicrm/civicrm-core/pull/19039))**
480 - **[REF] Remove code Coleman hates
481 ([19038](https://github.com/civicrm/civicrm-core/pull/19038))**
483 - **[REF] Simplify single function to receive contribution not objects
484 ([19032](https://github.com/civicrm/civicrm-core/pull/19032))**
486 - **REF Simplify tokenProcessor code
487 ([18612](https://github.com/civicrm/civicrm-core/pull/18612))**
489 - **[REF] Cleanup Ang modules in core to follow conventions
490 ([19052](https://github.com/civicrm/civicrm-core/pull/19052))**
492 - **[REF] Remove excess handling around contact_id
493 ([19050](https://github.com/civicrm/civicrm-core/pull/19050))**
495 - **Remove extra handling around contact id
496 ([19051](https://github.com/civicrm/civicrm-core/pull/19051))**
498 - **Remove unused hook_civicrm_crudLink and switch to using metadata for
499 crudLinks ([18916](https://github.com/civicrm/civicrm-core/pull/18916))**
501 - **Remove use of nullArray in delete hooks
502 ([19059](https://github.com/civicrm/civicrm-core/pull/19059))**
504 - **Remove legacy check
505 ([19042](https://github.com/civicrm/civicrm-core/pull/19042))**
507 - **Remove some deprecated code
508 ([19037](https://github.com/civicrm/civicrm-core/pull/19037))**
510 - **Remove support for pre 4.2 Civi in drush
511 ([628](https://github.com/civicrm/civicrm-drupal/pull/628))**
513 - **Remove always-true if
514 ([18934](https://github.com/civicrm/civicrm-core/pull/18934))**
516 - **Remove always true if
517 ([18946](https://github.com/civicrm/civicrm-core/pull/18946))**
519 - **Remove return value on transitionComponents
520 ([18979](https://github.com/civicrm/civicrm-core/pull/18979))**
522 - **Remove unused params, return params from processFail
523 ([18998](https://github.com/civicrm/civicrm-core/pull/18998))**
525 - **Remove unused parameters from cancel
526 ([18997](https://github.com/civicrm/civicrm-core/pull/18997))**
528 - **[NFC] Add in an Emoji test for APIv3 as per Eileen's PR
529 ([19078](https://github.com/civicrm/civicrm-core/pull/19078))**
531 - **[NFC] Remove boilerplate comment from .ang.php files
532 ([19048](https://github.com/civicrm/civicrm-core/pull/19048))**
534 - **[NFC] Minor margin tidy up
535 ([19013](https://github.com/civicrm/civicrm-core/pull/19013))**
537 - **[NFC] Follow-on to 18963 to add example setting in civicrm.settings template
538 for setting CMS inheritance for nl_BE
539 ([18966](https://github.com/civicrm/civicrm-core/pull/18966))**
541 - **[NFC] Make all files conform to CiviCRM code styling
542 ([223](https://github.com/civicrm/civicrm-wordpress/pull/223))**
544 - **[NFC] Housekeeping
545 ([222](https://github.com/civicrm/civicrm-wordpress/pull/222))**
547 - **[NFC] Refactor plugin for greater clarity
548 ([228](https://github.com/civicrm/civicrm-wordpress/pull/228))**
550 - **MembershipRenewalTest - Address assertions that started failing circa Jan 1,
551 2021 ([19310](https://github.com/civicrm/civicrm-core/pull/19310))**
553 - **Fix various `ts()` strings ([19333](https://github.com/civicrm/civicrm-core/pull/19333))**
555 ## <a name="credits"></a>Credits
557 This release was developed by the following code authors:
559 AGH Strategies - Alice Frumin, Andie Hunt; Alexy Mikhailichenko; Asylum Seekers
560 Centre; Bluehorn Digital - Matt Glaman; Christian Wach; CiviCRM - Coleman Watts,
561 Tim Otten; CiviDesk - Sunil Pawar, Yashodha Chaku; CompuCorp - René Olivo; Coop
562 SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; enCircle Solutions Ltd. -
563 Darren Woods; Giant Rabbit - Peter Haight; JMA Consulting - Seamus Lee;
564 Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire;
565 Nicol Wistreich; Squiffle Consulting - Aidan Saunders; Tadpole Collective -
566 Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton
568 Most authors also reviewed code for this release; in addition, the following
569 reviewers contributed their comments:
571 a-n The Artists Information Company - William Mortada; Agileware - Justin
572 Freeman; CiviDesk - Nicolas Ganivet; Freeform Solutions - Herb van den Dool;
573 MJCO - Mikey O'Toole; Semper IT - Karin Gerritsen
575 ## <a name="feedback"></a>Feedback
577 These release notes are edited by Alice Frumin and Andie Hunt. If you'd like
578 to provide feedback on them, please log in to https://chat.civicrm.org/civicrm