3 Released December 1, 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?** | **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 - **APIv4 - Add managed entity functionality
29 ([21955](https://github.com/civicrm/civicrm-core/pull/21955))**
31 APIv4 support for managed entities.
33 - **APIv4 - Add 'match' param to save action
34 ([21857](https://github.com/civicrm/civicrm-core/pull/21857))**
36 Adds a 'match' param to the APIv4 save action.
38 - **RelationshipCache - Add case_id column
39 ([21845](https://github.com/civicrm/civicrm-core/pull/21845))**
41 Makes it possible to show case relationships in SearchKit.
43 - **SearchKit - Support download formats xlsx, ods, pdf
44 ([21351](https://github.com/civicrm/civicrm-core/pull/21351))**
46 Extends download format support for SearchKit to include xlsx, ods and pdf.
48 - **SearchKit - default displays and ACL-aware links
49 ([21929](https://github.com/civicrm/civicrm-core/pull/21929))**
51 Gives every SavedSearch an auto-generated table display, and makes use
52 of it in the UI to more conveniently view or embed a saved search without
53 needing to manually create a display. In the UI it's referred to as the
54 "Search results table" to emphasize the fact that it's the same table as
55 shown on the "compose search" screen, and is not configurable like other
58 - **SearchKit server-side rendering
59 ([21820](https://github.com/civicrm/civicrm-core/pull/21820))**
61 Improves SearchKit by doing more of the rendering work server-side. This
62 allows for more nuanced permission checks of actions, better rendering of
63 spreadsheets, and opens the door for advanced token formatting.
65 - **User experience improvement - CiviCRM Manage Events page, expand the Find
66 Events criteria by default
67 ([21953](https://github.com/civicrm/civicrm-core/pull/21953))**
69 Improves user experience on the Manage Events page by making the Find Events
70 Criteria open by default.
72 - **add 'minute' as recurring unit
73 ([21893](https://github.com/civicrm/civicrm-core/pull/21893))**
75 Adds minute as a recurring unit option.
77 ### Wordpress Integration
79 - **Introduce "Shortcode Display Mode" setting and functionality
80 ([258](https://github.com/civicrm/civicrm-wordpress/pull/258))**
82 Introduces a new metabox with a "Shortcode Display Mode" setting.
84 ## <a name="bugs"></a>Bugs resolved
88 - **DB upgrade fails for 5.15->5.36
89 ([dev/core#2550](https://lab.civicrm.org/dev/core/-/issues/2550):
90 [21997](https://github.com/civicrm/civicrm-core/pull/21997))**
92 - **Meta - token usage 5.43 standardisation effort (Work Towards
93 [dev/core#2864](https://lab.civicrm.org/dev/core/-/issues/2864):
94 [21816](https://github.com/civicrm/civicrm-core/pull/21816) and
95 [21847](https://github.com/civicrm/civicrm-core/pull/21847)**
97 Removes call to getTokenDetails from Contribute pdf letter and standardizes
98 two pledge templates to use tokens.
100 - **Message about dependent extensions when installing an extension uses "key"
102 ([dev/core#2876](https://lab.civicrm.org/dev/core/-/issues/2876):
103 [21852](https://github.com/civicrm/civicrm-core/pull/21852))**
105 - **Emails can't resolve tokens for non-contact components for recipients added
106 to the list after email form was opened
107 ([dev/core#2895](https://lab.civicrm.org/dev/core/-/issues/2895):
108 [21815](https://github.com/civicrm/civicrm-core/pull/21815))**
110 - **Remove reference to CiviCRM forum in HTTP error message
111 ([dev/core#2903](https://lab.civicrm.org/dev/core/-/issues/2903):
112 [21844](https://github.com/civicrm/civicrm-core/pull/21844))**
114 - **Repair "Norwegian Bokmål"
115 ([dev/core#2909](https://lab.civicrm.org/dev/core/-/issues/2909):
116 [21974](https://github.com/civicrm/civicrm-core/pull/21974) and
117 [21813](https://github.com/civicrm/civicrm-core/pull/21813))**
119 - **APIv4 - Add backticks around fields in join criteria
120 ([22051](https://github.com/civicrm/civicrm-core/pull/22051))**
122 - **APIv4 - Fix performance drag caused by getInfoItem calling the API
123 ([21920](https://github.com/civicrm/civicrm-core/pull/21920))**
125 - **SearchKit - Fix permission to access default display and download
126 spreadsheets ([21977](https://github.com/civicrm/civicrm-core/pull/21977))**
128 - **SearchKit - Fix incorrect pager count when using filters
129 ([21967](https://github.com/civicrm/civicrm-core/pull/21967))**
131 - **SearchKit - Conditional style rules for rows/cells
132 ([21947](https://github.com/civicrm/civicrm-core/pull/21947))**
134 - **Use null variables rather than isset in Core_Block
135 ([21957](https://github.com/civicrm/civicrm-core/pull/21957))**
137 - **GroupContactCache: Drop temp table *after* releasing lock
138 ([21942](https://github.com/civicrm/civicrm-core/pull/21942))**
140 - **Ensure no_licence is assigned for drop.tpl
141 ([21934](https://github.com/civicrm/civicrm-core/pull/21934))**
143 - **Handling for intermittent Im->getfields error
144 ([21952](https://github.com/civicrm/civicrm-core/pull/21952))**
146 - **Avoid hardcoded text in error strings; make translatable
147 ([21948](https://github.com/civicrm/civicrm-core/pull/21948))**
149 - **Don't hardcode Period Type in Manage Premiums template.
150 ([21954](https://github.com/civicrm/civicrm-core/pull/21954))**
152 - **Avoid harcoded text in setStatus calls; make translatable
153 ([21949](https://github.com/civicrm/civicrm-core/pull/21949))**
155 - **Make miscellaneous strings translatable
156 ([21950](https://github.com/civicrm/civicrm-core/pull/21950))**
158 - **Make hardcoded labels passed to setTitle translatable
159 ([21917](https://github.com/civicrm/civicrm-core/pull/21917))**
161 - **Remove use of hardcoded strings in Dedupe templates
162 ([21843](https://github.com/civicrm/civicrm-core/pull/21843))**
164 - **Makes hardcoded placeholder strings translatable
165 ([21842](https://github.com/civicrm/civicrm-core/pull/21842))**
167 - **Make hardcoded strings translatable.
168 ([21810](https://github.com/civicrm/civicrm-core/pull/21810))**
170 - **Make error message translatable - remove tag tasks.
171 ([21904](https://github.com/civicrm/civicrm-core/pull/21904))**
173 - **Make error messages translatable.
174 ([21905](https://github.com/civicrm/civicrm-core/pull/21905))**
176 - **Ensure communityMessages is assigned to the template.
177 ([21951](https://github.com/civicrm/civicrm-core/pull/21951))**
179 - **Accessibility: Fix label associations for DepupeFind template.
180 ([21946](https://github.com/civicrm/civicrm-core/pull/21946))**
182 - **Updates centering of text and tables for Workflow Message Templates
183 ([21888](https://github.com/civicrm/civicrm-core/pull/21888),
184 [21890](https://github.com/civicrm/civicrm-core/pull/21890),
185 [21889](https://github.com/civicrm/civicrm-core/pull/21889),
186 [21861](https://github.com/civicrm/civicrm-core/pull/21861),
187 [21887](https://github.com/civicrm/civicrm-core/pull/21887),
188 [21860](https://github.com/civicrm/civicrm-core/pull/21860),
189 [21886](https://github.com/civicrm/civicrm-core/pull/21886),
190 [21859](https://github.com/civicrm/civicrm-core/pull/21859),
191 [21883](https://github.com/civicrm/civicrm-core/pull/21883),
192 [21881](https://github.com/civicrm/civicrm-core/pull/21881),
193 [21885](https://github.com/civicrm/civicrm-core/pull/21885),
194 [21862](https://github.com/civicrm/civicrm-core/pull/21862),
195 [21884](https://github.com/civicrm/civicrm-core/pull/21884),
196 [21882](https://github.com/civicrm/civicrm-core/pull/21882),
197 [21871](https://github.com/civicrm/civicrm-core/pull/21871),
198 [21879](https://github.com/civicrm/civicrm-core/pull/21879),
199 [21870](https://github.com/civicrm/civicrm-core/pull/21870),
200 [21880](https://github.com/civicrm/civicrm-core/pull/21880),
201 [21869](https://github.com/civicrm/civicrm-core/pull/21869),
202 [21877](https://github.com/civicrm/civicrm-core/pull/21877),
203 [21872](https://github.com/civicrm/civicrm-core/pull/21872),
204 [21875](https://github.com/civicrm/civicrm-core/pull/21875),
205 [21873](https://github.com/civicrm/civicrm-core/pull/21873),
206 [21874](https://github.com/civicrm/civicrm-core/pull/21874),
207 [21876](https://github.com/civicrm/civicrm-core/pull/21876),
208 [21878](https://github.com/civicrm/civicrm-core/pull/21878),
209 [21850](https://github.com/civicrm/civicrm-core/pull/21850) and
210 [21863](https://github.com/civicrm/civicrm-core/pull/21863))**
212 - **Add help tip to comment block
213 ([21902](https://github.com/civicrm/civicrm-core/pull/21902))**
215 - **Use HTML_Purifier from composer and rely on autoloader
216 ([334](https://github.com/civicrm/civicrm-packages/pull/334))**
218 - **Use HTMLPurifier from composer instead of packages
219 ([21620](https://github.com/civicrm/civicrm-core/pull/21620))**
221 - **Change DAO's that have `'default' => 'NULL'` into `'default' => NULL`,
222 i.e. true NULL ([21573](https://github.com/civicrm/civicrm-core/pull/21573))**
224 - **Correct CMS name on profile UF group types
225 ([21900](https://github.com/civicrm/civicrm-core/pull/21900))**
227 - **Prevent Undefined Index PHP notices with Afform entity metadata without an
228 icon ([21898](https://github.com/civicrm/civicrm-core/pull/21898))**
230 - **Export - Fix undefined tpl var
231 ([21891](https://github.com/civicrm/civicrm-core/pull/21891))**
233 - **typo fixes ([21868](https://github.com/civicrm/civicrm-core/pull/21868))**
235 - **Add alt attribute to image on PCPInfo template.
236 ([21808](https://github.com/civicrm/civicrm-core/pull/21808))**
238 - **Miscellaneous spelling fixes
239 ([21918](https://github.com/civicrm/civicrm-core/pull/21918))**
241 - **Fix unreplaced template vars in civicrm.settings.php when using wp-cli
242 installer ([257](https://github.com/civicrm/civicrm-wordpress/pull/257))**
244 - **$sid doesn't get set on upgrade runFinish
245 ([21798](https://github.com/civicrm/civicrm-core/pull/21798))**
247 - **Do not find references for empty values
248 ([21799](https://github.com/civicrm/civicrm-core/pull/21799))**
250 - **Fix hookTokens to be clearable outside the class
251 ([21836](https://github.com/civicrm/civicrm-core/pull/21836))**
253 - **Use SVG for 'Empowered by' logo
254 ([21841](https://github.com/civicrm/civicrm-core/pull/21841))**
258 - **Stop flushing caches on enable civiCampaign
259 ([21833](https://github.com/civicrm/civicrm-core/pull/21833))**
263 - **Financial record processing - extract to new class to faciliate cleanup
264 (Work Towards [dev/core#2715](https://lab.civicrm.org/dev/core/-/issues/2715):
265 [21391](https://github.com/civicrm/civicrm-core/pull/21391))**
267 Removes the mystery `self::_trxns` property.
269 - **Add financial validation check (to the extent we can)
270 ([21848](https://github.com/civicrm/civicrm-core/pull/21848))**
274 - **ensure events with single quotes can be share via social
275 ([21811](https://github.com/civicrm/civicrm-core/pull/21811))**
277 - **event token values missing from pdf export from participant search
278 ([dev/core#2947](https://lab.civicrm.org/dev/core/-/issues/2947):
279 [22046](https://github.com/civicrm/civicrm-core/pull/22046))**
283 - **Handle checking smartgroups when generating list of groups to unsubscribe
284 ([21176](https://github.com/civicrm/civicrm-core/pull/21176))**
286 - **CiviCRM APIv3, Improve API Exception error message when trying to subscribe
287 to a non-Public Mailing Group
288 ([21697](https://github.com/civicrm/civicrm-core/pull/21697))**
290 ### Drupal Integration
292 - **"Your browser session has expired and we are unable to complete your form
293 submission" on all D9.2 anonymous sessions
294 ([dev/drupal#169](https://lab.civicrm.org/dev/drupal/-/issues/169):
295 [22071](https://github.com/civicrm/civicrm-core/pull/22071))**
297 - **Prevent autoload conflicts if HTML_Purifier is already in Drupal libraries
298 ([649](https://github.com/civicrm/civicrm-drupal/pull/649))**
300 ### Joomla Integration
302 - **Fatal error on visiting CiviCRM paths having `task` query param in it twice
303 ([dev/joomla#36](https://lab.civicrm.org/dev/joomla/-/issues/36):
304 [21922](https://github.com/civicrm/civicrm-core/pull/21922))**
306 ### WordPress Integration
308 - **Displaying map for contact address causes WP error
309 ([dev/core#2942](https://lab.civicrm.org/dev/core/-/issues/2942):
310 [21980](https://github.com/civicrm/civicrm-core/pull/21980))**
312 - **Resources are not loaded for nested shortcodes - breaks usage
313 with Divi, Avada, etc.
314 ([dev/wordpress#105](https://lab.civicrm.org/dev/wordpress/-/issues/105):
315 [259](https://github.com/civicrm/civicrm-wordpress/pull/259))**
317 ## <a name="misc"></a>Miscellany
319 - **Switch replaceGreetingTokens over
320 ([21790](https://github.com/civicrm/civicrm-core/pull/21790))**
322 - **Simplify usage of getting domain from email
323 ([21925](https://github.com/civicrm/civicrm-core/pull/21925))**
325 - **AllCoreTables - Allow virtual entities to share a DAO class
326 ([21853](https://github.com/civicrm/civicrm-core/pull/21853))**
328 - **Restrict "Oops" to administrative errors
329 ([21838](https://github.com/civicrm/civicrm-core/pull/21838))**
331 - **Update docblock for alterPaymentProcessorParams because rawParams might be
332 a payment propertyBag
333 ([21897](https://github.com/civicrm/civicrm-core/pull/21897))**
335 - **Fix cleanup on test, also NFC cleanup
336 ([21910](https://github.com/civicrm/civicrm-core/pull/21910))**
338 - **Fix unreplaced template vars in civicrm.settings.php when using legacy
339 installer ([21692](https://github.com/civicrm/civicrm-core/pull/21692))**
341 - **Remove use of spacer.gif img elements in CRM_Utils_Weight
342 ([21807](https://github.com/civicrm/civicrm-core/pull/21807))**
344 - **Remove reference to CiviCRM forum in HTTP error message
345 ([21840](https://github.com/civicrm/civicrm-core/pull/21840))**
347 - **Remove unnecessary pass-by-reference
348 ([21903](https://github.com/civicrm/civicrm-core/pull/21903))**
350 - **Remove unused function
351 ([21928](https://github.com/civicrm/civicrm-core/pull/21928))**
353 - **Remove unused function from GroupContactCache
354 ([21938](https://github.com/civicrm/civicrm-core/pull/21938))**
356 - **Remove "Connections" from navigation menu
357 ([21930](https://github.com/civicrm/civicrm-core/pull/21930))**
359 - **Remove calls to CRM_Utils_Token::getDomainTokenReplacement
360 ([21964](https://github.com/civicrm/civicrm-core/pull/21964))**
362 - **Remove remaining usages of contact & domain values in participant templates
363 ([21963](https://github.com/civicrm/civicrm-core/pull/21963))**
365 - **Remove call to getTokenDetails
366 ([21972](https://github.com/civicrm/civicrm-core/pull/21972))**
368 - **Remove another call to getTokenDetails
369 ([21794](https://github.com/civicrm/civicrm-core/pull/21794))**
371 - **Add in 5.43.1 and 5.43.2 Release Notes
372 ([22085](https://github.com/civicrm/civicrm-core/pull/22085))**
374 - **[REF] Parameter simplification
375 ([21804](https://github.com/civicrm/civicrm-core/pull/21804))**
377 - **[Ref] Make functions private to protect them
378 ([21915](https://github.com/civicrm/civicrm-core/pull/21915))**
380 - **[REF] Move another function to the FinancialProcessor
381 ([21914](https://github.com/civicrm/civicrm-core/pull/21914))**
383 - **[REF] Update date formatting in the html template to match the text
384 template and regenerate civicrm_generated file
385 ([21961](https://github.com/civicrm/civicrm-core/pull/21961))**
387 - **[REF] Regenerate generated civicrm file after recent template updates
388 ([21970](https://github.com/civicrm/civicrm-core/pull/21970))**
390 - **[REF] Skip testCutesyTokenData on php8 for the moment
391 ([22043](https://github.com/civicrm/civicrm-core/pull/22043))**
393 - **[REF] Upgrade CKEditor to 4.17
394 ([22092](https://github.com/civicrm/civicrm-core/pull/22092))**
396 - **[REF] CRM_Core_Menu - Fix syntax, undefined variables, unused code,
397 pass-by-ref ([21926](https://github.com/civicrm/civicrm-core/pull/21926))**
399 - **Improve tests around the Order.create API and membership
400 ([21892](https://github.com/civicrm/civicrm-core/pull/21892))**
402 - **Convert more tests to use full form flow
403 ([21931](https://github.com/civicrm/civicrm-core/pull/21931))**
405 - **Fix test to use postProcess flow
406 ([21849](https://github.com/civicrm/civicrm-core/pull/21849))**
408 - **Preparatory cleanup in test class
409 ([21846](https://github.com/civicrm/civicrm-core/pull/21846))**
411 - **Add test for selvSvcUpdate, switch to using tokens
412 ([21937](https://github.com/civicrm/civicrm-core/pull/21937))**
414 - **Add test for selvsvctransfer, remove use of `$contact` from template
415 ([21855](https://github.com/civicrm/civicrm-core/pull/21855))**
417 - **[NFC] [Tests] remove code smell - unnecessary double quotes
418 ([21932](https://github.com/civicrm/civicrm-core/pull/21932))**
420 - **[NFC] [REF] Test class cleanup
421 ([21921](https://github.com/civicrm/civicrm-core/pull/21921))**
423 - **(NFC) Fix quote style for valid HTML - notifications.tpl
424 ([21791](https://github.com/civicrm/civicrm-core/pull/21791))**
426 - **Fix a few more tests to use a more realistic flow
427 ([21907](https://github.com/civicrm/civicrm-core/pull/21907))**
429 - **Fix more tests to use the full form flow
430 ([21906](https://github.com/civicrm/civicrm-core/pull/21906))**
432 ## <a name="credits"></a>Credits
434 This release was developed by the following code authors:
436 AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Francis Whittle,
437 Justin Freeman; BrightMinded Ltd - Bradley Taylor; Christian Wach;
438 CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Dave D;
439 Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit;
440 Jens Schuppe; JMA Consulting - Seamus Lee; Maria; Megaphone Technology
441 Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive
442 Technology Project - Jamie McClelland; Skvare - Sunil Pawar;
443 Wikimedia Foundation - Eileen McNaughton
445 Most authors also reviewed code for this release; in addition, the following
446 reviewers contributed their comments:
448 Artful Robot - Rich Lott; Australian Greens - John Twyman;
449 Coop SymbioTIC - Mathieu Lutfy; Fuzion - Peter Davis;
450 JMA Consulting - Monish Deb; Semper IT - Karin Gerritsen;
451 Tadpole Collective - Kevin Cristiano; Third Sector Design - Kurund Jalmi
453 ## <a name="feedback"></a>Feedback
455 These release notes are edited by Alice Frumin and Andie Hunt. If you'd like
456 to provide feedback on them, please log in to https://chat.civicrm.org/civicrm