Commit | Line | Data |
---|---|---|
37b373fe AH |
1 | # CiviCRM 5.48.0 |
2 | ||
691762bc | 3 | Released April 6, 2022 |
37b373fe | 4 | |
691762bc | 5 | - **[Synopsis](#synopsis)** |
37b373fe AH |
6 | - **[Features](#features)** |
7 | - **[Bugs resolved](#bugs)** | |
8 | - **[Miscellany](#misc)** | |
9 | - **[Credits](#credits)** | |
691762bc AH |
10 | - **[Feedback](#feedback)** |
11 | ||
12 | ## <a name="synopsis"></a>Synopsis | |
13 | ||
14 | | *Does this version...?* | | | |
15 | |:--------------------------------------------------------------- |:-------:| | |
44b27e42 AF |
16 | | Fix security vulnerabilities? | no | |
17 | | **Change the database schema?** | **yes** | | |
18 | | **Alter the API?** | **yes** | | |
19 | | Require attention to configuration options? | no | | |
20 | | Fix problems installing or upgrading to a previous version? | no | | |
21 | | **Introduce features?** | **yes** | | |
22 | | **Fix bugs?** | **yes** | | |
37b373fe AH |
23 | |
24 | ## <a name="features"></a>Features | |
25 | ||
26 | ### Core CiviCRM | |
27 | ||
44b27e42 AF |
28 | - **Add civicrm_admin_ui extension |
29 | ([22628](https://github.com/civicrm/civicrm-core/pull/22628))** | |
37b373fe | 30 | |
44b27e42 AF |
31 | Adds a new bundled extension `civicrm_admin_ui`. This extension replaces 2 |
32 | screens with SearchDisplay Afforms: Custom field groups and Custom fields. | |
37b373fe | 33 | |
44b27e42 AF |
34 | - **Add deprecation notice to APIv3 Explorer |
35 | ([22811](https://github.com/civicrm/civicrm-core/pull/22811))** | |
37b373fe | 36 | |
44b27e42 | 37 | Adds a notice to the APIv3 explorer to encourage users to use APIv4 instead. |
37b373fe | 38 | |
44b27e42 AF |
39 | - **Apiv4 entity parity (Work Towards |
40 | [dev/core#2486](https://lab.civicrm.org/dev/core/-/issues/2486): | |
41 | [22754](https://github.com/civicrm/civicrm-core/pull/22754), | |
42 | [22823](https://github.com/civicrm/civicrm-core/pull/22823), | |
43 | [22624](https://github.com/civicrm/civicrm-core/pull/22624) and | |
44 | [22799](https://github.com/civicrm/civicrm-core/pull/22799))** | |
37b373fe | 45 | |
44b27e42 AF |
46 | Adds "Extension", "Mailing", "MailingGroup" and "MailingJob" entities to |
47 | APIv4. | |
37b373fe | 48 | |
44b27e42 AF |
49 | - **APIv4 - Add tableName to Entity.get output |
50 | ([22829](https://github.com/civicrm/civicrm-core/pull/22829))** | |
37b373fe | 51 | |
44b27e42 AF |
52 | Adds `tableName` to the APIv4 Entity.get action output, improving |
53 | flexibility for virtual entities. | |
37b373fe | 54 | |
44b27e42 AF |
55 | - **APIv4 Explorer - Add REST syntax |
56 | ([22722](https://github.com/civicrm/civicrm-core/pull/22722))** | |
37b373fe | 57 | |
44b27e42 | 58 | Displays REST syntax in the APIv4 Explorer. |
37b373fe | 59 | |
44b27e42 AF |
60 | - **APIv4 - Add metadata about class args |
61 | ([22831](https://github.com/civicrm/civicrm-core/pull/22831))** | |
37b373fe | 62 | |
44b27e42 AF |
63 | The CustomValue API is a virtual entity, where multiple api entities all get |
64 | routed to the same class by virtue of all sharing the prefix "Custom_" and | |
65 | pass a class arg to the php factory functions e.g. | |
66 | CustomValue::get('MyCustomGroup'). | |
37b373fe | 67 | |
44b27e42 AF |
68 | Instead of hard-coding this idea into the API Explorer now it's part of the |
69 | entity metadata so that other APIs, notaby ECK, can use a similar pattern. | |
37b373fe | 70 | |
44b27e42 AF |
71 | - **APIv4 Explorer - Add "copy" button to quickly copy code to clipboard |
72 | ([22896](https://github.com/civicrm/civicrm-core/pull/22896))** | |
37b373fe | 73 | |
44b27e42 | 74 | Makes it easy to select and copy generated APIv4 Explorer code. |
37b373fe | 75 | |
44b27e42 AF |
76 | - **SearchKit - Update APIv3 Extension.get to use APIv4 |
77 | ([22788](https://github.com/civicrm/civicrm-core/pull/22788))** | |
37b373fe | 78 | |
44b27e42 AF |
79 | Updates SearchKit code to use newer version of the API when calling |
80 | Extension.get. | |
37b373fe | 81 | |
44b27e42 AF |
82 | - **SearchKit - Use crmDialogButtons for task popups |
83 | ([22790](https://github.com/civicrm/civicrm-core/pull/22790))** | |
37b373fe | 84 | |
44b27e42 AF |
85 | Updates the buttons in SearchKit action popups to use standard dialog button |
86 | formatting. | |
37b373fe | 87 | |
44b27e42 AF |
88 | - **SearchKit - Add 'merge contacts' task |
89 | ([22768](https://github.com/civicrm/civicrm-core/pull/22768))** | |
37b373fe | 90 | |
44b27e42 | 91 | Adds a "merge contacts" task to SearchKit. |
37b373fe | 92 | |
44b27e42 AF |
93 | - **SearchKit - Customizable "No Results" text |
94 | ([22770](https://github.com/civicrm/civicrm-core/pull/22770))** | |
37b373fe | 95 | |
44b27e42 | 96 | Makes it so users can customize the "No Results" text in SearchKit. |
37b373fe | 97 | |
44b27e42 AF |
98 | - **SearchKit - Improve import UI to handle update & preview the import |
99 | ([22699](https://github.com/civicrm/civicrm-core/pull/22699))** | |
37b373fe | 100 | |
44b27e42 AF |
101 | SearchKit has an import/export SavedSearch feature which allows you to |
102 | copy/paste api code in JSON format. This change enables update as well as create, | |
103 | and improves that UI to give better user feedback about what will happen when | |
104 | the import is run. | |
37b373fe | 105 | |
44b27e42 AF |
106 | - **SearchKit - Support relative dates and datepicker with the DATE() sql fn |
107 | ([22783](https://github.com/civicrm/civicrm-core/pull/22783))** | |
37b373fe | 108 | |
44b27e42 AF |
109 | Allows one to pick a relative or calendar date in conjunction with the DATE |
110 | ONLY field transformation. | |
37b373fe | 111 | |
44b27e42 AF |
112 | - **Civi\Api4\Queue - Allow use with hook_managed |
113 | ([22796](https://github.com/civicrm/civicrm-core/pull/22796))** | |
37b373fe | 114 | |
44b27e42 | 115 | Flags the entity Queue so that it can be used with hook_managed. |
37b373fe | 116 | |
44b27e42 AF |
117 | - **Define more usable queue DX for multithreaded background work (Work Towards |
118 | [dev/core#1304](https://lab.civicrm.org/dev/core/-/issues/1304): | |
119 | [22812](https://github.com/civicrm/civicrm-core/pull/22812))** | |
37b373fe | 120 | |
44b27e42 AF |
121 | Expands the schema for civicrm_queue (et al). By configuring properties on |
122 | civicrm_queue (et al), you can tell a generic queue-agent how to handle items | |
123 | from this queue. | |
37b373fe | 124 | |
44b27e42 AF |
125 | - **ManagedEntities - Allow "match" param to convert existing records to … |
126 | ([22883](https://github.com/civicrm/civicrm-core/pull/22883))** | |
37b373fe | 127 | |
44b27e42 AF |
128 | This can help ease the pain of declaring managed entities which may or may not |
129 | already exist - now they can be matched by name or other unique identifier. | |
37b373fe | 130 | |
44b27e42 | 131 | ### CiviContribute |
37b373fe | 132 | |
44b27e42 AF |
133 | - **Add basic contribution example base for contribution workflows |
134 | ([22636](https://github.com/civicrm/civicrm-core/pull/22636))** | |
37b373fe | 135 | |
44b27e42 | 136 | Makes it so that one can preview Contribution Message Templates. |
37b373fe | 137 | |
44b27e42 | 138 | ### CiviEvent |
37b373fe | 139 | |
44b27e42 AF |
140 | - **Introduce a way to link event participants from the associated booking. |
141 | ([dev/user-interface#45](https://lab.civicrm.org/dev/user-interface/-/issues/45): | |
142 | [22732](https://github.com/civicrm/civicrm-core/pull/22732))** | |
37b373fe | 143 | |
44b27e42 | 144 | Introduces a way to navigate to participants from the contribution view. |
37b373fe | 145 | |
44b27e42 | 146 | ### CiviMail |
37b373fe | 147 | |
44b27e42 AF |
148 | - **Mailing - Add `serialize` and `add` to `template_options` field |
149 | ([22785](https://github.com/civicrm/civicrm-core/pull/22785))** | |
37b373fe | 150 | |
44b27e42 AF |
151 | Improves the mailing schema metadata for template_options and template_type |
152 | fields. | |
37b373fe | 153 | |
44b27e42 AF |
154 | - **Start phasing out 'preferred_mail_format' (Work Towards |
155 | [dev/core#2866](https://lab.civicrm.org/dev/core/-/issues/2866): | |
156 | [22775](https://github.com/civicrm/civicrm-core/pull/22775), | |
157 | [22633](https://github.com/civicrm/civicrm-core/pull/22633) and | |
158 | [22635](https://github.com/civicrm/civicrm-core/pull/22635))** | |
37b373fe | 159 | |
44b27e42 AF |
160 | Ignores preferred mail format when sending a message. Instead sends both html |
161 | and plain text versions and lets the email client decide which to show. | |
162 | Removes `preferred_mail_format` from email trait. | |
37b373fe | 163 | |
44b27e42 | 164 | ### Drupal Integraton |
37b373fe | 165 | |
44b27e42 AF |
166 | - **civicrm.drush.inc - Add 'civicrm-pipe' subcommand |
167 | ([70](https://github.com/civicrm/civicrm-drupal-8/pull/70))** | |
37b373fe | 168 | |
44b27e42 | 169 | Adds support for the subcommand `drush civicrm-pipe` (`drush cvpipe`). |
37b373fe | 170 | |
44b27e42 | 171 | ## <a name="bugs"></a>Bugs resolved |
37b373fe | 172 | |
44b27e42 | 173 | ### Core CiviCRM |
37b373fe | 174 | |
44b27e42 AF |
175 | - **Contact Logging Detail report crashes when a contribution and contact are |
176 | updated together | |
177 | ([dev/report#85](https://lab.civicrm.org/dev/report/-/issues/85): | |
178 | [22242](https://github.com/civicrm/civicrm-core/pull/22242))** | |
37b373fe | 179 | |
44b27e42 AF |
180 | - **Warning: is_dir(): open_basedir restriction in effect |
181 | ([dev/core#2927](https://lab.civicrm.org/dev/core/-/issues/2927): | |
182 | [22277](https://github.com/civicrm/civicrm-core/pull/22277))** | |
37b373fe | 183 | |
44b27e42 | 184 | Avoids flooding logs with `open_basedir` in effect. |
37b373fe | 185 | |
44b27e42 AF |
186 | - **Switch extension downloader and extensions feed to use Guzzle HTTP library |
187 | ([21097](https://github.com/civicrm/civicrm-core/pull/21097))** | |
37b373fe | 188 | |
44b27e42 AF |
189 | This fixes some situations (eg. shared servers with open_basedir restrictions |
190 | in effect) where zip file was not downloaded properly and extension could not | |
191 | be updated. It also means that we are no longer using our custom | |
192 | CRM_Utils_HttpClient::fetch() function from within civicrm core. | |
37b373fe | 193 | |
44b27e42 AF |
194 | - **RC Error: Call to undefined method |
195 | CRM_Contact_Page_View_Summary::addExpectedSmartyVariables() | |
196 | ([dev/core#3104](https://lab.civicrm.org/dev/core/-/issues/3104): | |
197 | [22897](https://github.com/civicrm/civicrm-core/pull/22897))** | |
37b373fe | 198 | |
44b27e42 AF |
199 | - **Post-upgrade messages no longer being displayed |
200 | ([dev/core#3119](https://lab.civicrm.org/dev/core/-/issues/3119): | |
201 | [22985](https://github.com/civicrm/civicrm-core/pull/22985))** | |
37b373fe | 202 | |
44b27e42 AF |
203 | - **CiviReport - Title and Statistics appearing at top and bottom of reports |
204 | ([dev/core#3126](https://lab.civicrm.org/dev/core/-/issues/3126): | |
205 | [22976](https://github.com/civicrm/civicrm-core/pull/22976))** | |
37b373fe | 206 | |
44b27e42 AF |
207 | - **APIv4 - Fix setting/getting a multi-record customfield with date+time |
208 | ([22731](https://github.com/civicrm/civicrm-core/pull/22731))** | |
37b373fe | 209 | |
44b27e42 AF |
210 | - **APIv4 - Fix typo in Entity.getFields |
211 | ([22776](https://github.com/civicrm/civicrm-core/pull/22776))** | |
37b373fe | 212 | |
44b27e42 AF |
213 | - **Fix apiv4 Contribution delete & all line items |
214 | ([22749](https://github.com/civicrm/civicrm-core/pull/22749))** | |
37b373fe | 215 | |
44b27e42 AF |
216 | - **Fix API4 Explorer undefined variable error |
217 | ([22849](https://github.com/civicrm/civicrm-core/pull/22849))** | |
37b373fe | 218 | |
44b27e42 AF |
219 | - **Afform - Fix saving and editing entity blocks |
220 | ([22963](https://github.com/civicrm/civicrm-core/pull/22963))** | |
37b373fe | 221 | |
44b27e42 AF |
222 | - **Afform Gui - Fix selecting html element of text box |
223 | ([22929](https://github.com/civicrm/civicrm-core/pull/22929))** | |
37b373fe | 224 | |
44b27e42 AF |
225 | - **SearchKit - Fix support for non-DAO entities |
226 | ([22764](https://github.com/civicrm/civicrm-core/pull/22764))** | |
37b373fe | 227 | |
44b27e42 AF |
228 | - **Only acl line items based on contribution |
229 | ([22870](https://github.com/civicrm/civicrm-core/pull/22870))** | |
37b373fe | 230 | |
44b27e42 | 231 | Ensures ACL query on line items only joins `entity_id` to contributions. |
37b373fe | 232 | |
44b27e42 AF |
233 | - **Add handling for civimember disabled |
234 | ([22864](https://github.com/civicrm/civicrm-core/pull/22864))** | |
37b373fe | 235 | |
44b27e42 AF |
236 | - **Revert membership debug handling in IPN |
237 | ([22475](https://github.com/civicrm/civicrm-core/pull/22475))** | |
37b373fe | 238 | |
44b27e42 AF |
239 | - **Format money in custom fields once, on the tpl layer |
240 | ([22728](https://github.com/civicrm/civicrm-core/pull/22728))** | |
37b373fe | 241 | |
44b27e42 AF |
242 | - **New Individual: Unfilled fields "Custom Email Greeting", "Custom Postal |
243 | Greeting", "Custom Addressee" are hidden | |
244 | ([dev/core#483](https://lab.civicrm.org/dev/core/-/issues/483): | |
245 | [22380](https://github.com/civicrm/civicrm-core/pull/22380))** | |
37b373fe | 246 | |
44b27e42 AF |
247 | - **Fix regression with flexible merging of contact information |
248 | ([22720](https://github.com/civicrm/civicrm-core/pull/22720))** | |
37b373fe | 249 | |
44b27e42 AF |
250 | - **Recent update to {receipt_text} token gives warning in system check after |
251 | upgrade ([22821](https://github.com/civicrm/civicrm-core/pull/22821))** | |
37b373fe | 252 | |
44b27e42 AF |
253 | - **Remove "Search Builder" from menubar on new installs. |
254 | ([22778](https://github.com/civicrm/civicrm-core/pull/22778))** | |
37b373fe | 255 | |
44b27e42 AF |
256 | - **Pseudoconstants - Fix and improve handling of option callbacks |
257 | ([22730](https://github.com/civicrm/civicrm-core/pull/22730))** | |
37b373fe | 258 | |
44b27e42 AF |
259 | - **Refresh entity list after updating custom group (self_hook_*) |
260 | ([22868](https://github.com/civicrm/civicrm-core/pull/22868))** | |
37b373fe | 261 | |
44b27e42 AF |
262 | - **Avoid null column showing on groups search page |
263 | ([22724](https://github.com/civicrm/civicrm-core/pull/22724))** | |
37b373fe | 264 | |
44b27e42 AF |
265 | - **Call to undefined function civicrm_api3_create_error() in |
266 | civicrm/civicrm/CRM/Core/Page/AJAX/Attachment.php:65 | |
267 | ([22872](https://github.com/civicrm/civicrm-core/pull/22872))** | |
37b373fe | 268 | |
44b27e42 AF |
269 | - **Fix backward-compatability for new method in CRM_Contact_BAO_Query_Hook |
270 | ([22933](https://github.com/civicrm/civicrm-core/pull/22933))** | |
37b373fe | 271 | |
44b27e42 AF |
272 | - **Fix submit handling of thousands when creating data entry batch |
273 | ([22772](https://github.com/civicrm/civicrm-core/pull/22772))** | |
37b373fe | 274 | |
44b27e42 AF |
275 | - **Avoid PHP undefined index notices on extension pages |
276 | ([22848](https://github.com/civicrm/civicrm-core/pull/22848))** | |
37b373fe | 277 | |
44b27e42 AF |
278 | - **Fix issues with PHP GetText and 0 length files |
279 | ([22842](https://github.com/civicrm/civicrm-core/pull/22842))** | |
37b373fe | 280 | |
44b27e42 AF |
281 | - **Remove reference to undefined variable in |
282 | CRM_Contact_Form_Inline_CommunicationPreferences | |
283 | ([22840](https://github.com/civicrm/civicrm-core/pull/22840))** | |
37b373fe | 284 | |
44b27e42 AF |
285 | - **Mark methods which are only used statically as static |
286 | ([22844](https://github.com/civicrm/civicrm-core/pull/22844))** | |
37b373fe | 287 | |
44b27e42 AF |
288 | - **Use valid syntax for self-closing br elements |
289 | ([22711](https://github.com/civicrm/civicrm-core/pull/22711))** | |
37b373fe | 290 | |
44b27e42 AF |
291 | - **civicrm_handler_filter_pseudo_constant - Guard against old or inactive |
292 | pseudoconstants ([656](https://github.com/civicrm/civicrm-drupal/pull/656))** | |
37b373fe | 293 | |
44b27e42 AF |
294 | - **Contact token should show contact's info instead of logged in contact |
295 | ([22874](https://github.com/civicrm/civicrm-core/pull/22874))** | |
37b373fe | 296 | |
44b27e42 AF |
297 | - **Fixes fatal error - function doesn't exist |
298 | ([275](https://github.com/civicrm/civicrm-wordpress/pull/275))** | |
37b373fe | 299 | |
44b27e42 | 300 | - **Notice fixes ([22706](https://github.com/civicrm/civicrm-core/pull/22706))** |
37b373fe | 301 | |
44b27e42 AF |
302 | - **Some more notice fixes in smarty |
303 | ([22745](https://github.com/civicrm/civicrm-core/pull/22745))** | |
37b373fe | 304 | |
44b27e42 AF |
305 | - **Enotice fixes |
306 | ([22719](https://github.com/civicrm/civicrm-core/pull/22719))** | |
37b373fe | 307 | |
44b27e42 | 308 | - **Enotice fix ([22707](https://github.com/civicrm/civicrm-core/pull/22707))** |
37b373fe | 309 | |
44b27e42 AF |
310 | - **Mark AJAX methods as static |
311 | ([22895](https://github.com/civicrm/civicrm-core/pull/22895))** | |
37b373fe | 312 | |
44b27e42 AF |
313 | - **Avoid e-notices on pages with tabs |
314 | ([22892](https://github.com/civicrm/civicrm-core/pull/22892))** | |
37b373fe | 315 | |
44b27e42 AF |
316 | - **Flush the metadata cache when the domain is edited |
317 | ([22637](https://github.com/civicrm/civicrm-core/pull/22637))** | |
37b373fe | 318 | |
44b27e42 AF |
319 | - **Remove broken call to function_exists in CRM_Utils_String::isUtf8 |
320 | ([22803](https://github.com/civicrm/civicrm-core/pull/22803))** | |
37b373fe | 321 | |
44b27e42 AF |
322 | - **Avoid PHP notices on the UF settings page. |
323 | ([22667](https://github.com/civicrm/civicrm-core/pull/22667))** | |
37b373fe | 324 | |
44b27e42 AF |
325 | - **Fix deprecated warnings, smary grumpy-mode issues in legacy searches |
326 | ([22742](https://github.com/civicrm/civicrm-core/pull/22742))** | |
37b373fe | 327 | |
44b27e42 AF |
328 | - **Return array for setdefaults |
329 | ([22948](https://github.com/civicrm/civicrm-core/pull/22948))** | |
37b373fe | 330 | |
44b27e42 | 331 | ### CiviCase |
37b373fe | 332 | |
44b27e42 AF |
333 | - **CiviCase - Call hooks when creating relationships |
334 | ([22814](https://github.com/civicrm/civicrm-core/pull/22814))** | |
37b373fe | 335 | |
44b27e42 | 336 | Ensures hooks are called when creating case relationships. |
37b373fe | 337 | |
44b27e42 | 338 | ### CiviContribute |
37b373fe | 339 | |
44b27e42 AF |
340 | - **Bypass grumpy mode for contribution search totals & criteria |
341 | ([22744](https://github.com/civicrm/civicrm-core/pull/22744))** | |
37b373fe | 342 | |
44b27e42 AF |
343 | - **Clean return values for dummy payment processor |
344 | ([22679](https://github.com/civicrm/civicrm-core/pull/22679))** | |
37b373fe | 345 | |
44b27e42 AF |
346 | - **Adjust css class for payment processor to use `-` |
347 | ([22763](https://github.com/civicrm/civicrm-core/pull/22763))** | |
37b373fe | 348 | |
44b27e42 AF |
349 | - **Fix pledge default on contribution page when the site has a WR for |
350 | "contribution" ([22801](https://github.com/civicrm/civicrm-core/pull/22801))** | |
37b373fe | 351 | |
44b27e42 AF |
352 | - **Format money on transaction list |
353 | ([22438](https://github.com/civicrm/civicrm-core/pull/22438))** | |
37b373fe | 354 | |
44b27e42 AF |
355 | - **Deprecate civicrm_contribution_recur.trxn_id |
356 | ([21539](https://github.com/civicrm/civicrm-core/pull/21539))** | |
37b373fe | 357 | |
44b27e42 AF |
358 | - **php notices on contributionview |
359 | ([22866](https://github.com/civicrm/civicrm-core/pull/22866))** | |
37b373fe | 360 | |
44b27e42 AF |
361 | - **php/smarty notices on contribution view part 2 |
362 | ([22869](https://github.com/civicrm/civicrm-core/pull/22869))** | |
37b373fe | 363 | |
44b27e42 AF |
364 | - **smarty/php notices on contribution view part 4 |
365 | ([22894](https://github.com/civicrm/civicrm-core/pull/22894))** | |
37b373fe | 366 | |
44b27e42 AF |
367 | - **Cleanup on contribution view |
368 | ([22698](https://github.com/civicrm/civicrm-core/pull/22698))** | |
37b373fe | 369 | |
44b27e42 AF |
370 | - **Contribution view page crashes if you don't have event permissions |
371 | ([dev/core#3094](https://lab.civicrm.org/dev/core/-/issues/3094): | |
372 | [22865](https://github.com/civicrm/civicrm-core/pull/22865))** | |
37b373fe | 373 | |
44b27e42 | 374 | ### CiviEvent |
37b373fe | 375 | |
44b27e42 AF |
376 | - **Don't perform event timezone check if CiviEvent is disabled |
377 | ([22898](https://github.com/civicrm/civicrm-core/pull/22898))** | |
37b373fe | 378 | |
44b27e42 | 379 | ## CiviGrant |
37b373fe | 380 | |
44b27e42 AF |
381 | - **CiviGrant - Don't auto-create any grant types |
382 | ([22913](https://github.com/civicrm/civicrm-core/pull/22913))** | |
37b373fe | 383 | |
44b27e42 AF |
384 | - **Views - CiviGrant is now an extension |
385 | ([654](https://github.com/civicrm/civicrm-drupal/pull/654))** | |
37b373fe | 386 | |
44b27e42 AF |
387 | Updates the Drupal Views integration to recognize that CiviGrant is now an |
388 | extension. | |
37b373fe | 389 | |
44b27e42 | 390 | ### CiviMail |
37b373fe | 391 | |
44b27e42 AF |
392 | - **Move check for mailing workflow permisisons to BAO layer |
393 | ([22766](https://github.com/civicrm/civicrm-core/pull/22766))** | |
37b373fe | 394 | |
44b27e42 AF |
395 | - **BAO_Mailing::create - stop passing by reference |
396 | ([22753](https://github.com/civicrm/civicrm-core/pull/22753))** | |
37b373fe | 397 | |
44b27e42 AF |
398 | - **add checkPerm |
399 | ([22818](https://github.com/civicrm/civicrm-core/pull/22818))** | |
37b373fe | 400 | |
44b27e42 AF |
401 | Adds checkPerm to crmMailingSimpleDirective, enables ability of permission |
402 | checking in composer mail. | |
37b373fe | 403 | |
44b27e42 AF |
404 | - **A/B testing report should show unique opens, not total opens |
405 | ([dev/core#2100](https://lab.civicrm.org/dev/core/-/issues/2100): | |
406 | [20093](https://github.com/civicrm/civicrm-core/pull/20093))** | |
37b373fe | 407 | |
44b27e42 AF |
408 | - **Mailing Report: do not recalculate the recipients when the count is zero |
409 | ([22800](https://github.com/civicrm/civicrm-core/pull/22800))** | |
37b373fe | 410 | |
44b27e42 | 411 | ### CiviMember |
37b373fe | 412 | |
44b27e42 AF |
413 | - **Fixes for smarty grumpy mode with membership |
414 | ([22752](https://github.com/civicrm/civicrm-core/pull/22752))** | |
37b373fe | 415 | |
44b27e42 AF |
416 | - **Cleanup on Offline Membership Receipts (ensures variables present across |
417 | flows) ([22736](https://github.com/civicrm/civicrm-core/pull/22736))** | |
37b373fe | 418 | |
44b27e42 | 419 | ## <a name="misc"></a>Miscellany |
37b373fe | 420 | |
44b27e42 AF |
421 | - **Move acl check for contributionView to the extension |
422 | ([22684](https://github.com/civicrm/civicrm-core/pull/22684))** | |
37b373fe | 423 | |
44b27e42 AF |
424 | - **Move financial acls for membership to extension |
425 | ([22677](https://github.com/civicrm/civicrm-core/pull/22677))** | |
37b373fe | 426 | |
44b27e42 AF |
427 | - **APIv4 - remove unnecessary field from System::check |
428 | ([22748](https://github.com/civicrm/civicrm-core/pull/22748))** | |
37b373fe | 429 | |
44b27e42 AF |
430 | - **APIv4 - Add fixme about filtering custom fields by sub-type |
431 | ([22827](https://github.com/civicrm/civicrm-core/pull/22827))** | |
37b373fe | 432 | |
44b27e42 AF |
433 | - **Cleanup around taxTerm assignment |
434 | ([22422](https://github.com/civicrm/civicrm-core/pull/22422))** | |
37b373fe | 435 | |
44b27e42 AF |
436 | - **RecurForms test fixes |
437 | ([22784](https://github.com/civicrm/civicrm-core/pull/22784))** | |
37b373fe | 438 | |
44b27e42 AF |
439 | - **Update unit test to use exception |
440 | ([22787](https://github.com/civicrm/civicrm-core/pull/22787))** | |
37b373fe | 441 | |
44b27e42 AF |
442 | - **Added Cancel Recur Subscription test & setter for `supports` on Dummy |
443 | processor ([21895](https://github.com/civicrm/civicrm-core/pull/21895))** | |
37b373fe | 444 | |
44b27e42 AF |
445 | - **Move HookInterface to \Civi\Core namespace |
446 | ([22834](https://github.com/civicrm/civicrm-core/pull/22834))** | |
37b373fe | 447 | |
44b27e42 AF |
448 | - **Cody tidy in CRM_Core_State |
449 | ([22841](https://github.com/civicrm/civicrm-core/pull/22841))** | |
37b373fe | 450 | |
44b27e42 AF |
451 | - **Remove reference to undefined variable |
452 | ([22839](https://github.com/civicrm/civicrm-core/pull/22839))** | |
37b373fe | 453 | |
44b27e42 AF |
454 | - **added as a contributor |
455 | ([22876](https://github.com/civicrm/civicrm-core/pull/22876))** | |
37b373fe | 456 | |
44b27e42 AF |
457 | - **Remove unused parameter, pass-by-ref |
458 | ([22756](https://github.com/civicrm/civicrm-core/pull/22756))** | |
37b373fe | 459 | |
44b27e42 AF |
460 | - **Bump karma from 6.3.14 to 6.3.16 |
461 | ([22875](https://github.com/civicrm/civicrm-core/pull/22875))** | |
37b373fe | 462 | |
44b27e42 AF |
463 | - **Bump karma from 6.3.4 to 6.3.14 |
464 | ([22758](https://github.com/civicrm/civicrm-core/pull/22758))** | |
37b373fe | 465 | |
44b27e42 AF |
466 | - **Bump ajv from 6.6.1 to 6.12.6 |
467 | ([22761](https://github.com/civicrm/civicrm-core/pull/22761))** | |
37b373fe | 468 | |
44b27e42 AF |
469 | - **Remove unit tests based on older framework |
470 | ([71](https://github.com/civicrm/civicrm-drupal-8/pull/71))** | |
37b373fe | 471 | |
44b27e42 AF |
472 | - **REF - Use function to get component name from permission |
473 | ([22688](https://github.com/civicrm/civicrm-core/pull/22688))** | |
37b373fe | 474 | |
44b27e42 AF |
475 | - **[REF] Simplify Location::getValues |
476 | ([22757](https://github.com/civicrm/civicrm-core/pull/22757))** | |
37b373fe | 477 | |
44b27e42 AF |
478 | - **[REF] Fix issue where spaces in payment_processor_type.name field cau… |
479 | ([22760](https://github.com/civicrm/civicrm-core/pull/22760))** | |
37b373fe | 480 | |
44b27e42 AF |
481 | - **[REF] Cleanup billingBlock.js |
482 | ([22713](https://github.com/civicrm/civicrm-core/pull/22713))** | |
37b373fe | 483 | |
44b27e42 AF |
484 | - **[REF] Results of running npm audit fix |
485 | ([22773](https://github.com/civicrm/civicrm-core/pull/22773))** | |
37b373fe | 486 | |
44b27e42 AF |
487 | - **[REF] - Deprecate & delegate BAO::retrieve functions |
488 | ([22543](https://github.com/civicrm/civicrm-core/pull/22543))** | |
37b373fe | 489 | |
44b27e42 AF |
490 | - **REF Deprecate API3 _ipn_process_transaction() |
491 | ([22488](https://github.com/civicrm/civicrm-core/pull/22488))** | |
37b373fe | 492 | |
44b27e42 AF |
493 | - **(REF) CRM_Queue_Queue_* - Retain a copy of `$queueSpec` |
494 | ([22797](https://github.com/civicrm/civicrm-core/pull/22797))** | |
37b373fe | 495 | |
44b27e42 AF |
496 | - **(REF) CRM_Queue_Task - Tighter signature |
497 | ([22794](https://github.com/civicrm/civicrm-core/pull/22794))** | |
37b373fe | 498 | |
44b27e42 AF |
499 | - **[REF] Remove old require_once statements made obsolete by autoloader |
500 | ([22792](https://github.com/civicrm/civicrm-core/pull/22792))** | |
37b373fe | 501 | |
44b27e42 AF |
502 | - **[REF] Simplification in Contact::getValues |
503 | ([22765](https://github.com/civicrm/civicrm-core/pull/22765))** | |
37b373fe | 504 | |
44b27e42 AF |
505 | - **[REF] Fix css code style issues |
506 | ([22807](https://github.com/civicrm/civicrm-core/pull/22807))** | |
37b373fe | 507 | |
44b27e42 AF |
508 | - **[REF] Remove unused api v2 function |
509 | ([22819](https://github.com/civicrm/civicrm-core/pull/22819))** | |
37b373fe | 510 | |
44b27e42 AF |
511 | - **[REF] Update Guzzlehttp/psr7 version to be 1.8.5 |
512 | ([22998](https://github.com/civicrm/civicrm-core/pull/22998))** | |
37b373fe | 513 | |
44b27e42 AF |
514 | - **[REF] Rename SoftDeleteEntity -> SoftDeleteActionTrait |
515 | ([22944](https://github.com/civicrm/civicrm-core/pull/22944))** | |
516 | ||
517 | - **[REF] APIv4 - use entityTypes event to load custom records | |
518 | ([22824](https://github.com/civicrm/civicrm-core/pull/22824))** | |
519 | ||
520 | - **[REF] Cleanup docblocks & unused vars in Membership BAO | |
521 | ([22665](https://github.com/civicrm/civicrm-core/pull/22665))** | |
522 | ||
523 | - **(NFC) tests/phpunit/CRM/Queue - Add common `@group` | |
524 | ([22795](https://github.com/civicrm/civicrm-core/pull/22795))** | |
525 | ||
526 | - **[NFC] Rename RecurForms test class | |
527 | ([22820](https://github.com/civicrm/civicrm-core/pull/22820))** | |
528 | ||
529 | - **[NFC] Batch entry - Avoid warnings when performing math on empty string. | |
530 | ([22715](https://github.com/civicrm/civicrm-core/pull/22715))** | |
531 | ||
532 | - **(NFC) contributor-key.yml - Fix syntax error | |
533 | ([22921](https://github.com/civicrm/civicrm-core/pull/22921))** | |
534 | ||
535 | - **(NFC) LoggingDetailTest - Improve reliability of test | |
536 | ([22867](https://github.com/civicrm/civicrm-core/pull/22867))** | |
537 | ||
538 | - **(NFC) Membership Tests - Update assertions to match behavior circa leap-day | |
539 | ([22860](https://github.com/civicrm/civicrm-core/pull/22860))** | |
540 | ||
541 | - **[NFC] Basic case create test with org | |
542 | ([22846](https://github.com/civicrm/civicrm-core/pull/22846))** | |
37b373fe AH |
543 | |
544 | ## <a name="credits"></a>Credits | |
545 | ||
546 | This release was developed by the following code authors: | |
547 | ||
44b27e42 AF |
548 | AGH Strategies - Alice Frumin, Andie Hunt; BrightMinded Ltd - Bradley |
549 | Taylor;Christian Wach; Circle Interactive - Pradeep Nayak; CiviCRM - Coleman | |
550 | Watts, Tim Otten; Coop SymbioTIC - Mathieu Lutfy; Dave D; Fuzion - Luke Stewart; | |
551 | Grype Digital Inc. - Md Rashedul Islam; JMA Consulting - Monish Deb, Seamus Lee; | |
552 | John Kingsnorth; Kartik Kathuria; Megaphone Technology Consulting - Jon | |
553 | Goldberg; MJW Consulting - Matthew Wire; Registered Nurses' Association of | |
554 | Ontario - Ian Wilson; Tadpole Collective - Kevin Cristiano; Wikimedia | |
555 | Foundation - Eileen McNaughton; Wildsight - Lars Sanders-Green | |
37b373fe AH |
556 | |
557 | Most authors also reviewed code for this release; in addition, the following | |
558 | reviewers contributed their comments: | |
559 | ||
44b27e42 AF |
560 | Agileware - Justin Freeman; Artful Robot - Rich Lott; Blackfly Solutions - Alan |
561 | Dixon; Bluehorn Digital - Matt Glaman; CiviCoop - Jaap Jansma; CiviDesk - | |
562 | Yashodha Chaku; Progressive Technology Project - Jamie McClelland; Semper IT - | |
563 | Karin Gerritsen; Skvare - Mark Hanna | |
691762bc AH |
564 | |
565 | ## <a name="feedback"></a>Feedback | |
566 | ||
567 | These release notes are edited by Alice Frumin and Andie Hunt. If you'd like | |
568 | to provide feedback on them, please log in to https://chat.civicrm.org/civicrm | |
569 | and contact `@agh1`. |