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