Commit | Line | Data |
---|---|---|
d9c2f6dd AH |
1 | # CiviCRM 5.45.0 |
2 | ||
8fbcb9f3 | 3 | Released January 5, 2022 |
d9c2f6dd | 4 | |
8fbcb9f3 | 5 | - **[Synopsis](#synopsis)** |
d9c2f6dd AH |
6 | - **[Features](#features)** |
7 | - **[Bugs resolved](#bugs)** | |
8 | - **[Miscellany](#misc)** | |
9 | - **[Credits](#credits)** | |
8fbcb9f3 AH |
10 | - **[Feedback](#feedback)** |
11 | ||
12 | ||
13 | ## <a name="synopsis"></a>Synopsis | |
14 | ||
15 | | *Does this version...?* | | | |
16 | |:--------------------------------------------------------------- |:-------:| | |
dc8317be AF |
17 | | Fix security vulnerabilities? | no | |
18 | | **Change the database schema?** | **yes** | | |
19 | | **Alter the API?** | **yes** | | |
20 | | Require attention to configuration options? | no | | |
21 | | Fix problems installing or upgrading to a previous version? | no | | |
22 | | **Introduce features?** | **yes** | | |
23 | | **Fix bugs?** | **yes** | | |
d9c2f6dd AH |
24 | |
25 | ## <a name="features"></a>Features | |
26 | ||
d9c2f6dd AH |
27 | ### Core CiviCRM |
28 | ||
dc8317be AF |
29 | - **Add CiviX class in Core? (Work Towards |
30 | [civix#175](https://github.com/totten/civix/issues/175): | |
31 | [22198](https://github.com/civicrm/civicrm-core/pull/22198) and | |
32 | [22199](https://github.com/civicrm/civicrm-core/pull/22199))** | |
d9c2f6dd | 33 | |
dc8317be | 34 | Adds support for mixins to civix and updates core extensions to use them. |
d9c2f6dd | 35 | |
dc8317be AF |
36 | - **Escape-on-Input => Escape-on-Output (Work Towards |
37 | [dev/core#1328](https://lab.civicrm.org/dev/core/-/issues/1328): | |
38 | [21956](https://github.com/civicrm/civicrm-core/pull/21956))** | |
d9c2f6dd | 39 | |
dc8317be | 40 | Adds option to enable escape-on-output. |
d9c2f6dd | 41 | |
dc8317be AF |
42 | - **APIv4 Explorer - Optionally view results in PHP format |
43 | ([22010](https://github.com/civicrm/civicrm-core/pull/22010))** | |
d9c2f6dd | 44 | |
dc8317be AF |
45 | Improves the APIv4 Explorer UX by showing output in PHP format as well as |
46 | JSON. | |
d9c2f6dd | 47 | |
dc8317be AF |
48 | - **APIv4 - Add SortableEntity type which auto-adjusts weights |
49 | ([22137](https://github.com/civicrm/civicrm-core/pull/22137))** | |
d9c2f6dd | 50 | |
dc8317be | 51 | Gives APIv4 the ability to manage the "weight" of certain entities. |
d9c2f6dd | 52 | |
dc8317be AF |
53 | - **APIv4 - Add export action for managed entities |
54 | ([22014](https://github.com/civicrm/civicrm-core/pull/22014))** | |
d9c2f6dd | 55 | |
dc8317be AF |
56 | Adds a new APIv4 export action which generates an exportable array suitable |
57 | for use in a .mgd.php file. | |
d9c2f6dd | 58 | |
dc8317be AF |
59 | - **APIv4 - Opt-in more ManagedEntity types |
60 | ([22068](https://github.com/civicrm/civicrm-core/pull/22068))** | |
d9c2f6dd | 61 | |
dc8317be AF |
62 | Adds the ManagedEntity trait to a number of entities that are commonly used |
63 | for configuration, making it possible to work with them as APIv4 managed | |
64 | entities. | |
d9c2f6dd | 65 | |
dc8317be AF |
66 | - **SearchKit - Animated loading skeleton |
67 | ([22019](https://github.com/civicrm/civicrm-core/pull/22019))** | |
d9c2f6dd | 68 | |
dc8317be AF |
69 | Shows a wireframe "skeleton" while loading results in SearchKit. Improves the |
70 | user perception of load times. | |
d9c2f6dd | 71 | |
dc8317be AF |
72 | - **SearchKit - tabbed display for custom vs packaged searches |
73 | ([21986](https://github.com/civicrm/civicrm-core/pull/21986))** | |
d9c2f6dd | 74 | |
dc8317be AF |
75 | Splits the SearchKit admin UI in to 2 tabs - one for custom (locally-created) |
76 | searches, and one for packaged searches (defined in extensions). Adds a | |
77 | "revert" button for packaged searches. | |
d9c2f6dd | 78 | |
dc8317be AF |
79 | - **SearchKit - Add default text/image to displays; support custom file fields |
80 | ([21992](https://github.com/civicrm/civicrm-core/pull/21992))** | |
d9c2f6dd | 81 | |
dc8317be AF |
82 | Allows for "placeholder" text in a search display when a column value is |
83 | empty. Also works for image fields. Image fields now support custom file | |
84 | fields to display images out-of-the-box. | |
d9c2f6dd | 85 | |
dc8317be AF |
86 | - **SearchKit - Add drag-sortable weight functionality |
87 | ([22081](https://github.com/civicrm/civicrm-core/pull/22081))** | |
d9c2f6dd | 88 | |
dc8317be | 89 | Allows SearchKit table displays to be drag-sortable. |
d9c2f6dd | 90 | |
dc8317be AF |
91 | - **SearchKit - enable search by case role |
92 | ([22121](https://github.com/civicrm/civicrm-core/pull/22121))** | |
d9c2f6dd | 93 | |
dc8317be | 94 | Permits searching for contacts by case role in SearchKit. |
d9c2f6dd | 95 | |
dc8317be AF |
96 | - **SearchKit - Allow searches of OptionValues, LocationTypes, CustomFields |
97 | ([22151](https://github.com/civicrm/civicrm-core/pull/22151))** | |
d9c2f6dd | 98 | |
dc8317be AF |
99 | Flips the switch on a few entities to be searchable in SearchKit, with an eye |
100 | toward more UIs being built with it. | |
d9c2f6dd | 101 | |
dc8317be AF |
102 | - **SearchKit - Improve UX for refresh after editing |
103 | ([22125](https://github.com/civicrm/civicrm-core/pull/22125))** | |
d9c2f6dd | 104 | |
dc8317be AF |
105 | Makes editing records faster and easier, and fixes a bug where the pager |
106 | count would not be correctly updated. | |
d9c2f6dd | 107 | |
dc8317be AF |
108 | - **SearchKit - Improve search listing UI |
109 | ([22114](https://github.com/civicrm/civicrm-core/pull/22114))** | |
d9c2f6dd | 110 | |
dc8317be AF |
111 | Makes a few improvements to the main SearchKit screen (the tabbed listing of |
112 | Saved Searches) specifically: | |
d9c2f6dd | 113 | |
dc8317be AF |
114 | - More responsive switching between tabs |
115 | - Bookmarkable urls for each tab | |
116 | - Fixes the "modified" column for packaged searches, only showing a value if | |
117 | the packaged version has been overridden | |
118 | - Only shows "revert" button when a packaged search has been overridden | |
d9c2f6dd | 119 | |
dc8317be AF |
120 | - **Update Afform & search kit info |
121 | ([22126](https://github.com/civicrm/civicrm-core/pull/22126))** | |
d9c2f6dd | 122 | |
dc8317be AF |
123 | Updates SearchKit and Afform info.xml files with more helpful and less |
124 | confusing titles, descriptions and links. | |
d9c2f6dd | 125 | |
dc8317be AF |
126 | - **Afform - Add table of submission results |
127 | ([22009](https://github.com/civicrm/civicrm-core/pull/22009))** | |
d9c2f6dd | 128 | |
dc8317be | 129 | Uses a SearchDisplay in an Afform to display form submissions. |
d9c2f6dd | 130 | |
dc8317be AF |
131 | - **Afform - Display the extension in which an Afform is packaged |
132 | ([21960](https://github.com/civicrm/civicrm-core/pull/21960))** | |
d9c2f6dd | 133 | |
dc8317be | 134 | Displays extension name in the UI for packaged Afforms. |
d9c2f6dd | 135 | |
dc8317be AF |
136 | - **Make more hardcoded strings available for translation |
137 | ([21994](https://github.com/civicrm/civicrm-core/pull/21994))** | |
d9c2f6dd | 138 | |
dc8317be | 139 | Improves translation. |
d9c2f6dd | 140 | |
dc8317be AF |
141 | - **Alter default frequency for scheduled reminders job |
142 | ([dev/core#2916](https://lab.civicrm.org/dev/core/-/issues/2916): | |
143 | [21835](https://github.com/civicrm/civicrm-core/pull/21835))** | |
d9c2f6dd | 144 | |
dc8317be | 145 | Changes the scheduled reminder job to default to run hourly instead of daily. |
d9c2f6dd | 146 | |
dc8317be AF |
147 | - **Display higher severity status checks first |
148 | ([22143](https://github.com/civicrm/civicrm-core/pull/22143))** | |
d9c2f6dd | 149 | |
dc8317be AF |
150 | Improves user experience on the status page by displaying highest severity |
151 | status checks first. | |
d9c2f6dd | 152 | |
dc8317be AF |
153 | - **Sort list of extensions alphabetically in 'Extensions ok' check |
154 | ([22142](https://github.com/civicrm/civicrm-core/pull/22142))** | |
d9c2f6dd | 155 | |
dc8317be AF |
156 | Improves user experience by sorting the list of extensions alphabetically in |
157 | the 'Extensions ok' check. | |
d9c2f6dd | 158 | |
dc8317be | 159 | ## <a name="bugs"></a>Bugs resolved |
d9c2f6dd | 160 | |
dc8317be | 161 | ### Core CiviCRM |
d9c2f6dd | 162 | |
dc8317be AF |
163 | - **Email to Activity processing: If there's a matching org contact and no |
164 | matching individual, then file on the org instead of creating a new individual | |
165 | ([dev/core#2872](https://lab.civicrm.org/dev/core/-/issues/2872): | |
166 | [21983](https://github.com/civicrm/civicrm-core/pull/21983))** | |
d9c2f6dd | 167 | |
dc8317be AF |
168 | - **Activity redirects to search instead of view |
169 | ([dev/core#2894](https://lab.civicrm.org/dev/core/-/issues/2894): | |
170 | [22088](https://github.com/civicrm/civicrm-core/pull/22088))** | |
d9c2f6dd | 171 | |
dc8317be AF |
172 | - **Can't save extra custom fields when inline and required |
173 | ([dev/core#2912](https://lab.civicrm.org/dev/core/-/issues/2912): | |
174 | [21936](https://github.com/civicrm/civicrm-core/pull/21936))** | |
d9c2f6dd | 175 | |
dc8317be AF |
176 | - **Hidden submit buttons are confusing for keyboard users |
177 | ([dev/core#2919](https://lab.civicrm.org/dev/core/-/issues/2919): | |
178 | [21854](https://github.com/civicrm/civicrm-core/pull/21854))** | |
d9c2f6dd | 179 | |
dc8317be AF |
180 | - **some PDFs hard-code format to "a3 landscape", overriding default PDF format |
181 | ([dev/core#2959](https://lab.civicrm.org/dev/core/-/issues/2959): | |
182 | [22098](https://github.com/civicrm/civicrm-core/pull/22098))** | |
d9c2f6dd | 183 | |
dc8317be AF |
184 | - **All custom fields broken on edit forms |
185 | ([dev/core#2973](https://lab.civicrm.org/dev/core/-/issues/2973): | |
186 | [22178](https://github.com/civicrm/civicrm-core/pull/22178))** | |
d9c2f6dd | 187 | |
dc8317be AF |
188 | - **APIv4 Export - Fix logic for exporting pseudoconstant syntax |
189 | ([22201](https://github.com/civicrm/civicrm-core/pull/22201))** | |
d9c2f6dd | 190 | |
dc8317be AF |
191 | - **APIv4 - Add fixes & tests for domain-specific managed entities |
192 | ([22173](https://github.com/civicrm/civicrm-core/pull/22173))** | |
d9c2f6dd | 193 | |
dc8317be AF |
194 | - **Api v4 contact delete bug |
195 | ([dev/core#2757](https://lab.civicrm.org/dev/core/-/issues/2757): | |
196 | [21232](https://github.com/civicrm/civicrm-core/pull/21232))** | |
d9c2f6dd | 197 | |
dc8317be AF |
198 | - **APIv4 - Delete unused OptionList trait |
199 | ([22158](https://github.com/civicrm/civicrm-core/pull/22158))** | |
d9c2f6dd | 200 | |
dc8317be AF |
201 | - **APIv4 - Treat navigation permissions as array, add pseudoconstant for |
202 | operator ([22160](https://github.com/civicrm/civicrm-core/pull/22160))** | |
d9c2f6dd | 203 | |
dc8317be AF |
204 | - **APIv4 - Fix checkAccess for CiviCase or other entities with nonstandard |
205 | class names ([22090](https://github.com/civicrm/civicrm-core/pull/22090))** | |
d9c2f6dd | 206 | |
dc8317be AF |
207 | - **SearchKit with Form Builder when viewed on the front-end displays a CiviCRM |
208 | breadcrumb trail which can duplicate the existing website breadcrumb trail | |
209 | ([22087](https://github.com/civicrm/civicrm-core/pull/22087))** | |
d9c2f6dd | 210 | |
dc8317be AF |
211 | - **SearchKit - Fix undefined variable for searches of Afforms etc. |
212 | ([22218](https://github.com/civicrm/civicrm-core/pull/22218))** | |
d9c2f6dd | 213 | |
dc8317be AF |
214 | - **[Smarty variables] Consistently assign isAdmin at php layer |
215 | ([22189](https://github.com/civicrm/civicrm-core/pull/22189))** | |
d9c2f6dd | 216 | |
dc8317be AF |
217 | - **Smarty variables] Remove isset from a.net |
218 | ([22191](https://github.com/civicrm/civicrm-core/pull/22191))** | |
d9c2f6dd | 219 | |
dc8317be AF |
220 | - **[Smarty variables] remove isset from Mail accounts |
221 | ([22190](https://github.com/civicrm/civicrm-core/pull/22190))** | |
d9c2f6dd | 222 | |
dc8317be AF |
223 | - **[Smarty variables] Remove another isset - user dashboard |
224 | ([22181](https://github.com/civicrm/civicrm-core/pull/22181))** | |
d9c2f6dd | 225 | |
dc8317be AF |
226 | - **Smarty variables] Remove isset from relationship tab |
227 | ([22177](https://github.com/civicrm/civicrm-core/pull/22177))** | |
d9c2f6dd | 228 | |
dc8317be AF |
229 | - **[Smarty variables] [CiviCase] remove isset from case dashboard |
230 | ([22176](https://github.com/civicrm/civicrm-core/pull/22176))** | |
d9c2f6dd | 231 | |
dc8317be AF |
232 | - **[Smarty variables] - remove isset |
233 | ([22185](https://github.com/civicrm/civicrm-core/pull/22185))** | |
d9c2f6dd | 234 | |
dc8317be AF |
235 | - **[Smarty variables] Fix contribution tab to work with escape by default |
236 | ([22179](https://github.com/civicrm/civicrm-core/pull/22179))** | |
d9c2f6dd | 237 | |
dc8317be AF |
238 | - **[Smarty variables] The last isset.... |
239 | ([22196](https://github.com/civicrm/civicrm-core/pull/22196))** | |
d9c2f6dd | 240 | |
dc8317be AF |
241 | - **Smarty variables] Prevent settings form assigned html from being escaped |
242 | ([22165](https://github.com/civicrm/civicrm-core/pull/22165))** | |
d9c2f6dd | 243 | |
dc8317be AF |
244 | - **[Smarty variable][Civicase] remove isset |
245 | ([22175](https://github.com/civicrm/civicrm-core/pull/22175))** | |
d9c2f6dd | 246 | |
dc8317be AF |
247 | - **[Smarty variables] Remove isset from add new group form |
248 | ([22184](https://github.com/civicrm/civicrm-core/pull/22184))** | |
d9c2f6dd | 249 | |
dc8317be AF |
250 | - **[Smarty Variables] Remove isset from location type form |
251 | ([22167](https://github.com/civicrm/civicrm-core/pull/22167))** | |
d9c2f6dd | 252 | |
dc8317be AF |
253 | - **[Smarty variables] Remove issets from scheduled job screen |
254 | ([22166](https://github.com/civicrm/civicrm-core/pull/22166))** | |
d9c2f6dd | 255 | |
dc8317be AF |
256 | - **[Smarty variables] [custom data form] Template notice cleanup - make sane |
257 | ([22138](https://github.com/civicrm/civicrm-core/pull/22138))** | |
d9c2f6dd | 258 | |
dc8317be AF |
259 | - **[Smarty variables] [report test]Ensure smarty variables are consistently |
260 | assigned in report | |
261 | ([22147](https://github.com/civicrm/civicrm-core/pull/22147))** | |
d9c2f6dd | 262 | |
dc8317be AF |
263 | - **[Smarty variables] [Activity form] Ensure separation,tag are assigned to |
264 | the template ([22152](https://github.com/civicrm/civicrm-core/pull/22152))** | |
d9c2f6dd | 265 | |
dc8317be AF |
266 | - **[Smarty variables] Specify isRepeatingEntity when including |
267 | ConfirmRepeatMode.tpl | |
268 | ([22155](https://github.com/civicrm/civicrm-core/pull/22155))** | |
d9c2f6dd | 269 | |
dc8317be AF |
270 | - **[Smarty variables] Ensure groupElementType is always set |
271 | ([22074](https://github.com/civicrm/civicrm-core/pull/22074))** | |
d9c2f6dd | 272 | |
dc8317be AF |
273 | - **[Smarty variables] [contact summary] Assign variable to determine whether |
274 | to show email signature field | |
275 | ([22132](https://github.com/civicrm/civicrm-core/pull/22132))** | |
d9c2f6dd | 276 | |
dc8317be AF |
277 | - **[Smarty variables] Use always-assigned isTagSet to determine if is tagset |
278 | ([22154](https://github.com/civicrm/civicrm-core/pull/22154))** | |
d9c2f6dd | 279 | |
dc8317be AF |
280 | - **[Smarty variables] [Activity form] Ensure activityTypeFile is always |
281 | assigned ([22153](https://github.com/civicrm/civicrm-core/pull/22153))** | |
d9c2f6dd | 282 | |
dc8317be AF |
283 | - **Remove issets from Activity search screen |
284 | ([22180](https://github.com/civicrm/civicrm-core/pull/22180))** | |
d9c2f6dd | 285 | |
dc8317be AF |
286 | - **Remove isset checks on isForm |
287 | ([22174](https://github.com/civicrm/civicrm-core/pull/22174))** | |
d9c2f6dd | 288 | |
dc8317be AF |
289 | - **Remove isset from custom data tpls |
290 | ([22124](https://github.com/civicrm/civicrm-core/pull/22124))** | |
d9c2f6dd | 291 | |
dc8317be AF |
292 | - **Remove issets from Options.tpl |
293 | ([22079](https://github.com/civicrm/civicrm-core/pull/22079))** | |
d9c2f6dd | 294 | |
dc8317be AF |
295 | - **Remove a bunch of isset from options.tpl |
296 | ([22111](https://github.com/civicrm/civicrm-core/pull/22111))** | |
d9c2f6dd | 297 | |
dc8317be AF |
298 | - **Remove isset from Datasource.tpl |
299 | ([21988](https://github.com/civicrm/civicrm-core/pull/21988))** | |
d9c2f6dd | 300 | |
dc8317be AF |
301 | - **Remove smarty isset in favour of always set |
302 | ([22084](https://github.com/civicrm/civicrm-core/pull/22084))** | |
d9c2f6dd | 303 | |
dc8317be AF |
304 | - **Escape-on-output: Cleanup addCampaignToSearch, remove isset |
305 | ([22035](https://github.com/civicrm/civicrm-core/pull/22035))** | |
d9c2f6dd | 306 | |
dc8317be AF |
307 | - **OptionValue - Fix checking if domain is set |
308 | ([22095](https://github.com/civicrm/civicrm-core/pull/22095))** | |
d9c2f6dd | 309 | |
dc8317be AF |
310 | - **Fix all the issets that affect ability to load contact summary page |
311 | ([22030](https://github.com/civicrm/civicrm-core/pull/22030))** | |
d9c2f6dd | 312 | |
dc8317be AF |
313 | - **Remove use of isset for info.tpl |
314 | ([22028](https://github.com/civicrm/civicrm-core/pull/22028))** | |
d9c2f6dd | 315 | |
dc8317be AF |
316 | - **Ensure smarty variable formTpl is set |
317 | ([22018](https://github.com/civicrm/civicrm-core/pull/22018))** | |
d9c2f6dd | 318 | |
dc8317be AF |
319 | - **Enotice fixes - ensure a couple more variables are consistently assigned |
320 | ([22148](https://github.com/civicrm/civicrm-core/pull/22148))** | |
d9c2f6dd | 321 | |
dc8317be AF |
322 | - **Fix broken extension page smarty assignment |
323 | ([22168](https://github.com/civicrm/civicrm-core/pull/22168))** | |
d9c2f6dd | 324 | |
dc8317be AF |
325 | - **Ensure custom fields properties are assigned to the template |
326 | ([22139](https://github.com/civicrm/civicrm-core/pull/22139))** | |
d9c2f6dd | 327 | |
dc8317be AF |
328 | - **Ensure context is always assigned |
329 | ([22141](https://github.com/civicrm/civicrm-core/pull/22141))** | |
d9c2f6dd | 330 | |
dc8317be AF |
331 | - **FormBuilder - Hide configuration options that do not apply to certain form |
332 | types ([22127](https://github.com/civicrm/civicrm-core/pull/22127))** | |
d9c2f6dd | 333 | |
dc8317be AF |
334 | - **Ensure CMSPrint variables are assigned to the template |
335 | ([22134](https://github.com/civicrm/civicrm-core/pull/22134))** | |
d9c2f6dd | 336 | |
dc8317be AF |
337 | - **Ensure tab headers are assigned, fix widget form test |
338 | ([22135](https://github.com/civicrm/civicrm-core/pull/22135))** | |
d9c2f6dd | 339 | |
dc8317be AF |
340 | - **Ensure buildForm is called to assign values |
341 | ([22128](https://github.com/civicrm/civicrm-core/pull/22128))** | |
d9c2f6dd | 342 | |
dc8317be AF |
343 | - **Update Fields.tpl |
344 | ([22129](https://github.com/civicrm/civicrm-core/pull/22129))** | |
d9c2f6dd | 345 | |
dc8317be AF |
346 | - **Add Colombia missing state |
347 | ([22007](https://github.com/civicrm/civicrm-core/pull/22007))** | |
d9c2f6dd | 348 | |
dc8317be AF |
349 | - **Use getEntityNameForTable() instead of getClassForTable(), as this might |
350 | yield ambiguous results | |
351 | ([22116](https://github.com/civicrm/civicrm-core/pull/22116))** | |
d9c2f6dd | 352 | |
dc8317be AF |
353 | - **Suppresses error logging on every page load when open_basedir restriction |
354 | in effect: File(/CRM/Core/Smarty/plugins/) is not within the allowed path(s) | |
355 | ([21589](https://github.com/civicrm/civicrm-core/pull/21589))** | |
d9c2f6dd | 356 | |
dc8317be AF |
357 | - **Bypass any default escaping for blog, getting started |
358 | ([22119](https://github.com/civicrm/civicrm-core/pull/22119))** | |
d9c2f6dd | 359 | |
dc8317be AF |
360 | - **Do not use default escaping on address display |
361 | ([22120](https://github.com/civicrm/civicrm-core/pull/22120))** | |
d9c2f6dd | 362 | |
dc8317be AF |
363 | - **Throw spaghetti |
364 | ([22070](https://github.com/civicrm/civicrm-core/pull/22070))** | |
d9c2f6dd | 365 | |
dc8317be AF |
366 | - **Allow "Download chart" text to be translated. |
367 | ([22106](https://github.com/civicrm/civicrm-core/pull/22106))** | |
d9c2f6dd | 368 | |
dc8317be AF |
369 | - **Contribution amounts configuration page is borked when translation contains |
370 | apostrophe ([22091](https://github.com/civicrm/civicrm-core/pull/22091))** | |
d9c2f6dd | 371 | |
dc8317be AF |
372 | - **Use smarty:nodefaults with smarty.get |
373 | ([22082](https://github.com/civicrm/civicrm-core/pull/22082))** | |
d9c2f6dd | 374 | |
dc8317be AF |
375 | - **Ensure masterAddress is always assigned |
376 | ([22076](https://github.com/civicrm/civicrm-core/pull/22076))** | |
d9c2f6dd | 377 | |
dc8317be AF |
378 | - **Ensure paramSubType is always set |
379 | ([22075](https://github.com/civicrm/civicrm-core/pull/22075))** | |
d9c2f6dd | 380 | |
dc8317be AF |
381 | - **Do not check is context is set, should always be |
382 | ([22069](https://github.com/civicrm/civicrm-core/pull/22069))** | |
d9c2f6dd | 383 | |
dc8317be AF |
384 | - **Fix typo in smarty template "gender_display" |
385 | ([22066](https://github.com/civicrm/civicrm-core/pull/22066))** | |
d9c2f6dd | 386 | |
dc8317be AF |
387 | - **Ensure context is always set |
388 | ([22056](https://github.com/civicrm/civicrm-core/pull/22056))** | |
d9c2f6dd | 389 | |
dc8317be AF |
390 | - **Ensure contactTag is always set |
391 | ([22055](https://github.com/civicrm/civicrm-core/pull/22055))** | |
d9c2f6dd | 392 | |
dc8317be AF |
393 | - **php8 - fix for breadcrumb fails during tests |
394 | ([22059](https://github.com/civicrm/civicrm-core/pull/22059))** | |
d9c2f6dd | 395 | |
dc8317be AF |
396 | - **Mark a few more token functions as deprected |
397 | ([22044](https://github.com/civicrm/civicrm-core/pull/22044))** | |
d9c2f6dd | 398 | |
dc8317be AF |
399 | - **Ensure gender_display is always set |
400 | ([22047](https://github.com/civicrm/civicrm-core/pull/22047))** | |
d9c2f6dd | 401 | |
dc8317be AF |
402 | - **ManagedEntities - Track modification and auto-update |
403 | ([21989](https://github.com/civicrm/civicrm-core/pull/21989))** | |
d9c2f6dd | 404 | |
dc8317be AF |
405 | - **Ensure userRecordUrl is always set- fixes enotice with escape-on-output |
406 | ([22042](https://github.com/civicrm/civicrm-core/pull/22042))** | |
d9c2f6dd | 407 | |
dc8317be AF |
408 | - **Fix tabs getting overwritten by double foreach loop |
409 | ([22040](https://github.com/civicrm/civicrm-core/pull/22040))** | |
d9c2f6dd | 410 | |
dc8317be AF |
411 | - **Ensure imageUrl is always set |
412 | ([22031](https://github.com/civicrm/civicrm-core/pull/22031))** | |
d9c2f6dd | 413 | |
dc8317be AF |
414 | - **Escape-on-output-proof enotice fixes |
415 | ([22036](https://github.com/civicrm/civicrm-core/pull/22036))** | |
d9c2f6dd | 416 | |
dc8317be AF |
417 | - **Do not smarty encode quicksearch html |
418 | ([22033](https://github.com/civicrm/civicrm-core/pull/22033))** | |
d9c2f6dd | 419 | |
dc8317be AF |
420 | - **Ensure action is set when loading contactFooter |
421 | ([22029](https://github.com/civicrm/civicrm-core/pull/22029))** | |
d9c2f6dd | 422 | |
dc8317be AF |
423 | - **Flip logic for determining if $section variable is set. |
424 | ([22027](https://github.com/civicrm/civicrm-core/pull/22027))** | |
d9c2f6dd | 425 | |
dc8317be AF |
426 | - **Ensure beginHookFormElements is assigned |
427 | ([22000](https://github.com/civicrm/civicrm-core/pull/22000))** | |
d9c2f6dd | 428 | |
dc8317be AF |
429 | - **CRM_Utils_File::isChildPath - Fix checking of non-existent paths |
430 | ([22021](https://github.com/civicrm/civicrm-core/pull/22021))** | |
d9c2f6dd | 431 | |
dc8317be AF |
432 | - **Ensure hookContentPlacement is assigned |
433 | ([22001](https://github.com/civicrm/civicrm-core/pull/22001))** | |
d9c2f6dd | 434 | |
dc8317be AF |
435 | - **Ensure that keys are set in tabValues before hitting smarty |
436 | ([21991](https://github.com/civicrm/civicrm-core/pull/21991))** | |
d9c2f6dd | 437 | |
dc8317be AF |
438 | - **Extract getGroupOrganizationUrl & ensure always assigned |
439 | ([22002](https://github.com/civicrm/civicrm-core/pull/22002))** | |
d9c2f6dd | 440 | |
dc8317be AF |
441 | - **Avoid default escaping for blog titles |
442 | ([22172](https://github.com/civicrm/civicrm-core/pull/22172))** | |
d9c2f6dd | 443 | |
dc8317be AF |
444 | - **PHP 8 compat - no optional param before required |
445 | ([22210](https://github.com/civicrm/civicrm-core/pull/22210))** | |
d9c2f6dd | 446 | |
dc8317be AF |
447 | - **tools/mixin/bin/test-all - Fix guard for EXT_DIR |
448 | ([22204](https://github.com/civicrm/civicrm-core/pull/22204))** | |
d9c2f6dd | 449 | |
dc8317be AF |
450 | - **DebugSubscriber - Fix test-suite compatibility with XDebug 3 |
451 | ([22197](https://github.com/civicrm/civicrm-core/pull/22197))** | |
d9c2f6dd | 452 | |
dc8317be AF |
453 | - **ManagedEntities - Fix permission error during uninstallation |
454 | (regression-fix) | |
455 | ([22188](https://github.com/civicrm/civicrm-core/pull/22188))** | |
d9c2f6dd | 456 | |
dc8317be AF |
457 | - **Fix two English strings |
458 | ([22097](https://github.com/civicrm/civicrm-core/pull/22097))** | |
d9c2f6dd | 459 | |
dc8317be AF |
460 | - **OptionValue - Fix incorrect update of `is_default` |
461 | ([22089](https://github.com/civicrm/civicrm-core/pull/22089))** | |
d9c2f6dd | 462 | |
dc8317be AF |
463 | - **Fix missing currency for event registration when configured via |
464 | "quick config" ([21966](https://github.com/civicrm/civicrm-core/pull/21966))** | |
d9c2f6dd | 465 | |
dc8317be AF |
466 | - **don't overfill the prevnext cache when reserving for a survey. |
467 | ([22011](https://github.com/civicrm/civicrm-core/pull/22011))** | |
d9c2f6dd | 468 | |
dc8317be AF |
469 | - **Guard against passing empty values to CRM_Core_DAO::getFieldValue() |
470 | ([21998](https://github.com/civicrm/civicrm-core/pull/21998))** | |
d9c2f6dd | 471 | |
dc8317be AF |
472 | - **Tidy up title attributes |
473 | ([21995](https://github.com/civicrm/civicrm-core/pull/21995))** | |
d9c2f6dd | 474 | |
dc8317be AF |
475 | - **Enotice fixes in debug.tpl that are compatible with default escaping |
476 | ([21940](https://github.com/civicrm/civicrm-core/pull/21940))** | |
d9c2f6dd | 477 | |
dc8317be AF |
478 | - **Fix isForm to be always assigned, remove checks |
479 | ([21979](https://github.com/civicrm/civicrm-core/pull/21979))** | |
d9c2f6dd | 480 | |
dc8317be AF |
481 | - **Enotice fixes |
482 | ([21987](https://github.com/civicrm/civicrm-core/pull/21987))** | |
d9c2f6dd | 483 | |
dc8317be AF |
484 | - **Beautifier - avoid e_notice in php 7.4 when acting on first comment token |
485 | ([332](https://github.com/civicrm/civicrm-packages/pull/332))** | |
d9c2f6dd | 486 | |
dc8317be | 487 | ### CiviCase |
d9c2f6dd | 488 | |
dc8317be AF |
489 | - **Assign cgCount in Case custom data form |
490 | ([22140](https://github.com/civicrm/civicrm-core/pull/22140))** | |
d9c2f6dd | 491 | |
dc8317be | 492 | ### CiviContribute |
d9c2f6dd | 493 | |
dc8317be AF |
494 | - **Can't filter by anything other than contribution status in Contribution |
495 | Aggregate by Relationship CiviReport | |
496 | ([dev/report#77](https://lab.civicrm.org/dev/report/-/issues/77): | |
497 | [22041](https://github.com/civicrm/civicrm-core/pull/22041), | |
498 | [22024](https://github.com/civicrm/civicrm-core/pull/22024), | |
499 | [22015](https://github.com/civicrm/civicrm-core/pull/22015), | |
500 | [22016](https://github.com/civicrm/civicrm-core/pull/22016) and | |
501 | [22025](https://github.com/civicrm/civicrm-core/pull/22025))** | |
d9c2f6dd | 502 | |
dc8317be AF |
503 | - **Using GHC as a default currency causes a fatal error with Brick/Money |
504 | ([dev/financial#184](https://lab.civicrm.org/dev/financial/-/issues/184): | |
505 | [21751](https://github.com/civicrm/civicrm-core/pull/21751))** | |
d9c2f6dd | 506 | |
dc8317be | 507 | Fixes the currency names for Ghana and Belarus. |
d9c2f6dd | 508 | |
dc8317be AF |
509 | - **Repeat Contributions CiviReport warnings: Formatting non-numeric values is |
510 | no longer supported | |
511 | ([dev/core#2982](https://lab.civicrm.org/dev/core/-/issues/2982): | |
512 | [22216](https://github.com/civicrm/civicrm-core/pull/22216))** | |
d9c2f6dd | 513 | |
dc8317be AF |
514 | - **Expose contribution custom fields in LYBUNT report |
515 | ([dev/core#2951](https://lab.civicrm.org/dev/core/-/issues/2951): | |
516 | [22038](https://github.com/civicrm/civicrm-core/pull/22038))** | |
d9c2f6dd | 517 | |
dc8317be AF |
518 | - **fix unit plural in contribution page |
519 | ([21944](https://github.com/civicrm/civicrm-core/pull/21944))** | |
d9c2f6dd | 520 | |
dc8317be AF |
521 | - **Update PayPalImpl.php - action on style test failure |
522 | ([22112](https://github.com/civicrm/civicrm-core/pull/22112))** | |
d9c2f6dd | 523 | |
dc8317be AF |
524 | - **Check the billing fields returned by each payment processor |
525 | ([20811](https://github.com/civicrm/civicrm-core/pull/20811))** | |
d9c2f6dd | 526 | |
dc8317be | 527 | ### CiviEvent |
d9c2f6dd | 528 | |
dc8317be AF |
529 | - **Participant Listing report filters incorrectly on role ID |
530 | ([dev/report#18](https://lab.civicrm.org/dev/report/-/issues/18): | |
531 | [21975](https://github.com/civicrm/civicrm-core/pull/21975))** | |
d9c2f6dd | 532 | |
dc8317be AF |
533 | - **Remove broken dynamic title from event template |
534 | ([22113](https://github.com/civicrm/civicrm-core/pull/22113))** | |
d9c2f6dd | 535 | |
dc8317be AF |
536 | - **CRM/Event/BAO/Event: Fix ts usage on selfservice_preposition |
537 | ([22136](https://github.com/civicrm/civicrm-core/pull/22136))** | |
d9c2f6dd | 538 | |
dc8317be AF |
539 | - **Notice error Deprecated function CRM_Event_BAO_Event::checkPermission |
540 | ([dev/core#1529](https://lab.civicrm.org/dev/core/-/issues/1529): | |
541 | [22017](https://github.com/civicrm/civicrm-core/pull/22017))** | |
d9c2f6dd | 542 | |
dc8317be AF |
543 | - **Custom data not available in the post hook after registering for an event |
544 | ([dev/core#2948](https://lab.civicrm.org/dev/core/-/issues/2948): | |
545 | [22022](https://github.com/civicrm/civicrm-core/pull/22022))** | |
d9c2f6dd | 546 | |
dc8317be AF |
547 | - **CiviCRM Event, remove the superfluous "Are you sure you want to delete this |
548 | Event?" confirmation for the Event delete action | |
549 | ([22122](https://github.com/civicrm/civicrm-core/pull/22122))** | |
d9c2f6dd | 550 | |
dc8317be | 551 | ### CiviMail |
d9c2f6dd | 552 | |
dc8317be AF |
553 | - **Fix unencoded mailing url query param in Mailing report |
554 | ([22008](https://github.com/civicrm/civicrm-core/pull/22008))** | |
d9c2f6dd | 555 | |
dc8317be AF |
556 | - **CiviCRM Message Template, HTML Format and Text Format fields are listed in |
557 | a different order on the Default Message Template | |
558 | ([22110](https://github.com/civicrm/civicrm-core/pull/22110))** | |
d9c2f6dd | 559 | |
dc8317be AF |
560 | - **Fix message templates screen to work with escape enabled by default |
561 | ([22118](https://github.com/civicrm/civicrm-core/pull/22118))** | |
d9c2f6dd | 562 | |
dc8317be | 563 | ### CiviMember |
d9c2f6dd | 564 | |
dc8317be AF |
565 | - **CiviCRM Membership Status can never be deleted when logging is enabled |
566 | ([22032](https://github.com/civicrm/civicrm-core/pull/22032))** | |
d9c2f6dd | 567 | |
dc8317be AF |
568 | - **Fix membership test to use full flow |
569 | ([22162](https://github.com/civicrm/civicrm-core/pull/22162))** | |
d9c2f6dd | 570 | |
dc8317be | 571 | ### Drupal Integration |
d9c2f6dd | 572 | |
dc8317be AF |
573 | - **Add back in body classes for themeing. |
574 | ([68](https://github.com/civicrm/civicrm-drupal-8/pull/68))** | |
d9c2f6dd | 575 | |
dc8317be | 576 | ### WordPress Integration |
d9c2f6dd | 577 | |
dc8317be AF |
578 | - **CiviCRM WordPress shortcode remove the display of default text and instead |
579 | just return blank if the shortcode cannot be rendered. | |
580 | ([262](https://github.com/civicrm/civicrm-wordpress/pull/262))** | |
d9c2f6dd | 581 | |
dc8317be AF |
582 | - **Resolve conflict with AIOSEO stomping on CiviCRM Shortcode |
583 | ([263](https://github.com/civicrm/civicrm-wordpress/pull/263))** | |
d9c2f6dd | 584 | |
dc8317be AF |
585 | - **Prevent fatal error when the "the_title" filter has only one param |
586 | ([261](https://github.com/civicrm/civicrm-wordpress/pull/261))** | |
d9c2f6dd | 587 | |
dc8317be | 588 | ## <a name="misc"></a>Miscellany |
d9c2f6dd | 589 | |
dc8317be AF |
590 | - **APIv4 ConformanceTest - Demonstrate entity APIs which fail to emit |
591 | `hook_civicrm_post(delete)` | |
592 | ([22205](https://github.com/civicrm/civicrm-core/pull/22205))** | |
d9c2f6dd | 593 | |
dc8317be AF |
594 | - **Move responsibilty for ensuring greeting parameters are set to |
595 | `ensureGreetingParamsAreSet` | |
596 | ([21912](https://github.com/civicrm/civicrm-core/pull/21912))** | |
d9c2f6dd | 597 | |
dc8317be AF |
598 | - **Remove unused variable |
599 | ([21933](https://github.com/civicrm/civicrm-core/pull/21933))** | |
d9c2f6dd | 600 | |
dc8317be AF |
601 | - **Remove obsolete showVisibility |
602 | ([22102](https://github.com/civicrm/civicrm-core/pull/22102))** | |
d9c2f6dd | 603 | |
dc8317be AF |
604 | - **Remove empty check previously commented to be meaningless |
605 | ([22164](https://github.com/civicrm/civicrm-core/pull/22164))** | |
d9c2f6dd | 606 | |
dc8317be AF |
607 | - **[REF] Remove support for not-passed 'pledge' value |
608 | ([21908](https://github.com/civicrm/civicrm-core/pull/21908))** | |
d9c2f6dd | 609 | |
dc8317be AF |
610 | - **[REF] - Switch BAOs to use standard delete function which calls hooks |
611 | ([22207](https://github.com/civicrm/civicrm-core/pull/22207))** | |
d9c2f6dd | 612 | |
dc8317be AF |
613 | - **[REF] Remove usage of deprecated jqXHR.error in jQuery code |
614 | ([21919](https://github.com/civicrm/civicrm-core/pull/21919))** | |
d9c2f6dd | 615 | |
dc8317be AF |
616 | - **[REF] Preliminary cleanup in update greeting |
617 | ([21909](https://github.com/civicrm/civicrm-core/pull/21909))** | |
d9c2f6dd | 618 | |
dc8317be AF |
619 | - **REF: Switch to debug level logging for lock debugging |
620 | ([22026](https://github.com/civicrm/civicrm-core/pull/22026))** | |
d9c2f6dd | 621 | |
dc8317be AF |
622 | - **[REF] Fix Pledge Test failing on php8 by ensuring all payments have a |
623 | status assigned and that customGroup is always assigned to the template and | |
624 | updating test to pass in some additional form values | |
625 | ([22037](https://github.com/civicrm/civicrm-core/pull/22037))** | |
d9c2f6dd | 626 | |
dc8317be AF |
627 | - **[REF] Add in missing province for Philippines and update names to match ISO |
628 | ([22005](https://github.com/civicrm/civicrm-core/pull/22005))** | |
d9c2f6dd | 629 | |
dc8317be AF |
630 | - **[REF] "Your browser session has expired and we are unable to complete your |
631 | form submission" on all D9.2 anonymous sessions | |
632 | ([dev/drupal#169](https://lab.civicrm.org/dev/drupal/-/issues/169): | |
633 | [22080](https://github.com/civicrm/civicrm-core/pull/22080) | |
634 | and [335](https://github.com/civicrm/civicrm-packages/pull/335))** | |
d9c2f6dd | 635 | |
dc8317be AF |
636 | - **[NFC] Update System Uft8mb4 check to handle for the fact that MySQL8 |
637 | outputs utf8mb3 when the charset has been set to utf8 as utf8mb3 is the | |
638 | underlyling charset for utf8 | |
639 | ([22221](https://github.com/civicrm/civicrm-core/pull/22221))** | |
d9c2f6dd | 640 | |
dc8317be AF |
641 | - **[NFC] Remove Selenium WebTest code from CiviMailUtils |
642 | ([22219](https://github.com/civicrm/civicrm-core/pull/22219))** | |
d9c2f6dd | 643 | |
dc8317be AF |
644 | - **(NFC) tools/mixin/bin/test-all - Work-around segfault in CI |
645 | ([22215](https://github.com/civicrm/civicrm-core/pull/22215))** | |
d9c2f6dd | 646 | |
dc8317be AF |
647 | - **[NFC] Fix test failures for testRelativeDateRanges |
648 | ([22209](https://github.com/civicrm/civicrm-core/pull/22209))** | |
d9c2f6dd | 649 | |
dc8317be AF |
650 | - **[NFC] Add missing calls to parent::setUp and tearDown in unit tests |
651 | ([22073](https://github.com/civicrm/civicrm-core/pull/22073))** | |
d9c2f6dd | 652 | |
dc8317be AF |
653 | - **[NFC] Array formatting |
654 | ([22067](https://github.com/civicrm/civicrm-core/pull/22067))** | |
d9c2f6dd | 655 | |
dc8317be AF |
656 | - **[NFC] ENsure that formTpl is assigned in CRM_Custom_Form_OptionTest |
657 | ([22065](https://github.com/civicrm/civicrm-core/pull/22065))** | |
658 | ||
659 | - **[NFC] php8 assign formTpl in HookTest test | |
660 | ([22061](https://github.com/civicrm/civicrm-core/pull/22061))** | |
661 | ||
662 | - **[NFC] php8 - set smarty null defaults for CRM_Core_SessionTest | |
663 | ([22048](https://github.com/civicrm/civicrm-core/pull/22048))** | |
664 | ||
665 | - **[NFC] php8 - fix test fails for CRM_Contact_Page_View_UserDashBoardTest | |
666 | ([22023](https://github.com/civicrm/civicrm-core/pull/22023))** | |
667 | ||
668 | - **[NFC] Fix test issue about trying to do array offset on NULL in Payment | |
669 | ProcessorFormTest | |
670 | ([22020](https://github.com/civicrm/civicrm-core/pull/22020))** | |
671 | ||
672 | - **[NFC] Add in unit test to demonstate issue with API | |
673 | ([dev/mail#103](https://lab.civicrm.org/dev/mail/-/issues/103): | |
674 | [22045](https://github.com/civicrm/civicrm-core/pull/22045))** | |
675 | ||
676 | - **[NFC] Additional Fix on UserDashBoard Tests to assign action value to | |
677 | dashboard ([22034](https://github.com/civicrm/civicrm-core/pull/22034))** | |
678 | ||
679 | - **Test fix - use more 'real' rendering function | |
680 | ([22123](https://github.com/civicrm/civicrm-core/pull/22123))** | |
681 | ||
682 | - **Fix more tests to use full flow | |
683 | ([22161](https://github.com/civicrm/civicrm-core/pull/22161))** | |
684 | ||
685 | - **[Test] Fix tests to use form helper | |
686 | ([22157](https://github.com/civicrm/civicrm-core/pull/22157))** | |
687 | ||
688 | - **[Test] Test cleanup to use full-form methods | |
689 | ([22156](https://github.com/civicrm/civicrm-core/pull/22156))** | |
d9c2f6dd AH |
690 | |
691 | ## <a name="credits"></a>Credits | |
692 | ||
693 | This release was developed by the following code authors: | |
694 | ||
dc8317be AF |
695 | AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Justin Freeman; |
696 | BrightMinded Ltd - Bradley Taylor; Christian Wach; CiviCoop - Jaap Jansma; | |
697 | CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - | |
698 | Lisandro; Coop SymbioTIC - Mathieu Lutfy; CSES (Chelmsford Science and | |
699 | Engineering Society) - Adam Wood; Dave D; Digitalcourage - Detlev Sieber; | |
700 | homotechsual - Mikey O'Toole; Jens Schuppe; JMA Consulting - Monish Deb, Seamus | |
701 | Lee; joapta; Joinery - Allen Shaw; Lighthouse Consulting and Design - Brian | |
702 | Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - | |
703 | Matthew Wire; PERORA SRL - Samuele Masetto; Progressive Technology Project - | |
704 | Jamie McClelland; Third Sector Design - Kurund Jalmi, William Mortada; | |
705 | Wikimedia Foundation - Eileen McNaughton | |
d9c2f6dd AH |
706 | |
707 | Most authors also reviewed code for this release; in addition, the following | |
708 | reviewers contributed their comments: | |
709 | ||
dc8317be AF |
710 | Arnaud Broes; Artful Robot - Rich Lott; Asylum Seekers Centre; Australian |
711 | Greens - John Twyman; Betty Dolfing; Blackfly Solutions - Alan Dixon; Carlos | |
712 | Capote; Guydn; JMA Consulting - Joe Murray; Lemniscus - Noah Miller; netzih; | |
713 | Nicol Wistreich; Richard van Oosterhout; Skvare - Sunil Pawar; Tadpole | |
714 | Collective - Kevin Cristiano; | |
8fbcb9f3 AH |
715 | |
716 | ## <a name="feedback"></a>Feedback | |
717 | ||
718 | These release notes are edited by Alice Frumin and Andie Hunt. If you'd like | |
719 | to provide feedback on them, please log in to https://chat.civicrm.org/civicrm | |
720 | and contact `@agh1`. |