From d69c4234f9b4862ffa4872c6a36bfb4799b8c149 Mon Sep 17 00:00:00 2001 From: Kevin Cristiano <kcristiano@kcristiano.com> Date: Thu, 19 May 2022 07:32:05 -0600 Subject: [PATCH] civicrm release-5.49.2 --- civicrm.php | 4 +- civicrm/CRM/Core/DAO/ActionSchedule.php | 6 +- .../Upgrade/Incremental/php/FiveFortyNine.php | 74 +++++++++++++++++++ .../php/FiveFortyNine/Core.bool.php | 1 - civicrm/civicrm-version.php | 2 +- civicrm/ext/afform/admin/info.xml | 2 +- civicrm/ext/afform/core/info.xml | 2 +- civicrm/ext/afform/html/info.xml | 2 +- civicrm/ext/afform/mock/info.xml | 2 +- civicrm/ext/authx/info.xml | 2 +- civicrm/ext/civicrm_admin_ui/info.xml | 2 +- civicrm/ext/civigrant/info.xml | 2 +- civicrm/ext/ckeditor4/info.xml | 2 +- .../ext/contributioncancelactions/info.xml | 2 +- civicrm/ext/eventcart/info.xml | 2 +- civicrm/ext/ewaysingle/info.xml | 2 +- civicrm/ext/financialacls/info.xml | 2 +- civicrm/ext/flexmailer/info.xml | 2 +- civicrm/ext/greenwich/info.xml | 2 +- civicrm/ext/legacycustomsearches/info.xml | 2 +- civicrm/ext/message_admin/info.xml | 2 +- civicrm/ext/oauth-client/info.xml | 2 +- civicrm/ext/payflowpro/info.xml | 2 +- civicrm/ext/recaptcha/info.xml | 2 +- civicrm/ext/search_kit/info.xml | 2 +- civicrm/ext/sequentialcreditnotes/info.xml | 2 +- civicrm/release-notes.md | 9 +++ civicrm/release-notes/5.49.2.md | 40 ++++++++++ civicrm/sql/civicrm.mysql | 2 +- civicrm/sql/civicrm_data.mysql | 2 +- civicrm/sql/civicrm_generated.mysql | 2 +- civicrm/vendor/autoload.php | 2 +- civicrm/vendor/composer/autoload_real.php | 14 ++-- civicrm/vendor/composer/autoload_static.php | 12 +-- civicrm/xml/schema/Core/ActionSchedule.xml | 2 - civicrm/xml/version.xml | 2 +- 36 files changed, 167 insertions(+), 49 deletions(-) create mode 100644 civicrm/release-notes/5.49.2.md diff --git a/civicrm.php b/civicrm.php index 35596651bf..7944447eb6 100644 --- a/civicrm.php +++ b/civicrm.php @@ -2,7 +2,7 @@ /** * Plugin Name: CiviCRM * Description: CiviCRM - Growing and Sustaining Relationships - * Version: 5.49.1 + * Version: 5.49.2 * Requires at least: 4.9 * Requires PHP: 7.2 * Author: CiviCRM LLC @@ -36,7 +36,7 @@ if (!defined('ABSPATH')) { } // Set version here: changing it forces Javascript and CSS to reload. -define('CIVICRM_PLUGIN_VERSION', '5.49.1'); +define('CIVICRM_PLUGIN_VERSION', '5.49.2'); // Store reference to this file. if (!defined('CIVICRM_PLUGIN_FILE')) { diff --git a/civicrm/CRM/Core/DAO/ActionSchedule.php b/civicrm/CRM/Core/DAO/ActionSchedule.php index cd58cfb12d..e20791704c 100644 --- a/civicrm/CRM/Core/DAO/ActionSchedule.php +++ b/civicrm/CRM/Core/DAO/ActionSchedule.php @@ -6,7 +6,7 @@ * * Generated from xml/schema/CRM/Core/ActionSchedule.xml * DO NOT EDIT. Generated by CRM_Core_CodeGen - * (GenCodeChecksum:444acdd7b222ed9f593b0b84aebfb763) + * (GenCodeChecksum:79492485b0099dc4a6a101f3191d64dd) */ /** @@ -67,7 +67,7 @@ class CRM_Core_DAO_ActionSchedule extends CRM_Core_DAO { /** * Is this the recipient criteria limited to OR in addition to? * - * @var bool|string + * @var bool|string|null * (SQL type: tinyint) * Note that values will be retrieved from the database as a string. */ @@ -512,9 +512,7 @@ class CRM_Core_DAO_ActionSchedule extends CRM_Core_DAO { 'type' => CRM_Utils_Type::T_BOOLEAN, 'title' => ts('Limit To'), 'description' => ts('Is this the recipient criteria limited to OR in addition to?'), - 'required' => TRUE, 'where' => 'civicrm_action_schedule.limit_to', - 'default' => '1', 'table_name' => 'civicrm_action_schedule', 'entity' => 'ActionSchedule', 'bao' => 'CRM_Core_BAO_ActionSchedule', diff --git a/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine.php b/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine.php index e6d0ec2d34..0bf8a9f952 100644 --- a/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine.php +++ b/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine.php @@ -21,6 +21,38 @@ */ class CRM_Upgrade_Incremental_php_FiveFortyNine extends CRM_Upgrade_Incremental_Base { + /** + * When executing 5.49.2 upgrade-step, it decides whether to fix limit-to. Remember that decision. + * + * Note: You cannot _generally_ use object-properties to communicate between functions in this class + * (because they reset in diff AJAX requests). + * + * However, you can _specifically_ communicate between `upgrade_N_N_N()` and `setPostUpgradeMessage()`. + * This is because they are guaranteed to run in the same call (as part of `doIncrementalUpgradeStep()`). + * + * @var bool|null + */ + private $executedLimitToFix; + + public function setPreUpgradeMessage(&$preUpgradeMessage, $rev, $currentVer = NULL) { + $willExecuteLimitToFix = (bool) version_compare(CRM_Core_BAO_Domain::version(), '5.49.beta1', '>='); + if ($rev == '5.49.2' && $willExecuteLimitToFix) { + $message = $this->createLimitToMessage(); + if ($message) { + $preUpgradeMessage .= "<p>{$message}</p>"; + } + } + } + + public function setPostUpgradeMessage(&$postUpgradeMessage, $rev) { + if ($rev == '5.49.2' && $this->executedLimitToFix === TRUE) { + $message = $this->createLimitToMessage(); + if ($message) { + $postUpgradeMessage .= "<p><strong>" . ts('WARNING') . "</strong>: {$message}</p>"; + } + } + } + public static function findBooleanColumns(): array { $r = []; $files = CRM_Utils_File::findFiles(__DIR__ . '/FiveFortyNine', '*.bool.php'); @@ -60,6 +92,48 @@ class CRM_Upgrade_Incremental_php_FiveFortyNine extends CRM_Upgrade_Incremental_ } } + /** + * Upgrade function. + * + * @param string $currentRev + * DB revision (which we are currently applying) + * @param string $startRev + * DB revision (when the upgrade started) + * @param string $finalRev + * DB revision (that we're aiming to reach, in the end) + */ + public function upgrade_5_49_2($currentRev, $startRev, $finalRev) { + if (empty($startRev)) { + throw new \RuntimeException("Error: Was somebody too clever about modifying the upgrader? We're missing a little-known but very-handy parameter!"); + } + $this->executedLimitToFix = (bool) version_compare($startRev, '5.49.beta1', '>='); + if ($this->executedLimitToFix) { + $this->addTask('Update "civicrm_action_schedule.limit_to" to re-enable "NULL" values', 'changeBooleanColumnLimitTo'); + } + } + + public function createLimitToMessage(): ?string { + $suspectRecords = CRM_Core_DAO::singleValueQuery("SELECT GROUP_CONCAT(id SEPARATOR \", #\") FROM civicrm_action_schedule WHERE limit_to=0 AND (recipient_manual IS NOT NULL OR group_id IS NOT NULL)"); + if (!empty($suspectRecords)) { + return ts('This site previously executed an early version of 5.49, which may have incorrectly modified some scheduled reminders. After upgrading, review these reminders (<code>%1</code>). <a %2>(Learn more...)</a>', [ + 1 => '#' . $suspectRecords, + 2 => 'target="blank" href="https://civicrm.org/redirect/reminders-5.49"', + ]); + } + else { + return NULL; + } + } + + /** + * Revert boolean default civicrm_action_schedule.limit_to to be NULL + */ + public static function changeBooleanColumnLimitTo() { + CRM_Core_DAO::executeQuery("ALTER TABLE `civicrm_action_schedule` CHANGE `limit_to` `limit_to` tinyint NULL COMMENT 'Is this the recipient criteria limited to OR in addition to?'", [], TRUE, NULL, FALSE, FALSE); + CRM_Core_DAO::executeQuery("UPDATE `civicrm_action_schedule` SET `limit_to` = NULL WHERE `limit_to` = 0 AND `group_id` IS NULL AND recipient_manual IS NULL", [], TRUE, NULL, FALSE, FALSE); + return TRUE; + } + /** * Converts a boolean table column to be NOT NULL * @param CRM_Queue_TaskContext $ctx diff --git a/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine/Core.bool.php b/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine/Core.bool.php index 504fc370ac..1e6732cbf7 100644 --- a/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine/Core.bool.php +++ b/civicrm/CRM/Upgrade/Incremental/php/FiveFortyNine/Core.bool.php @@ -1,7 +1,6 @@ <?php return [ 'civicrm_action_schedule' => [ - 'limit_to' => "DEFAULT 1 COMMENT 'Is this the recipient criteria limited to OR in addition to?'", 'is_repeat' => "DEFAULT 0", 'is_active' => "DEFAULT 1 COMMENT 'Is this option active?'", 'record_activity' => "DEFAULT 0 COMMENT 'Record Activity for this reminder?'", diff --git a/civicrm/civicrm-version.php b/civicrm/civicrm-version.php index c41d2c2d7c..750cd37f8d 100644 --- a/civicrm/civicrm-version.php +++ b/civicrm/civicrm-version.php @@ -1,7 +1,7 @@ <?php /** @deprecated */ function civicrmVersion( ) { - return array( 'version' => '5.49.1', + return array( 'version' => '5.49.2', 'cms' => 'Wordpress', 'revision' => '' ); } diff --git a/civicrm/ext/afform/admin/info.xml b/civicrm/ext/afform/admin/info.xml index 99d6d58ede..53c48a632b 100644 --- a/civicrm/ext/afform/admin/info.xml +++ b/civicrm/ext/afform/admin/info.xml @@ -13,7 +13,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-01-09</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>beta</develStage> <compatibility> <ver>5.23</ver> diff --git a/civicrm/ext/afform/core/info.xml b/civicrm/ext/afform/core/info.xml index 20d90b3eb4..5734549860 100644 --- a/civicrm/ext/afform/core/info.xml +++ b/civicrm/ext/afform/core/info.xml @@ -13,7 +13,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-01-09</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>beta</develStage> <compatibility> <ver>5.23</ver> diff --git a/civicrm/ext/afform/html/info.xml b/civicrm/ext/afform/html/info.xml index 2fcd8a5690..4683601fba 100644 --- a/civicrm/ext/afform/html/info.xml +++ b/civicrm/ext/afform/html/info.xml @@ -13,7 +13,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-01-09</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>alpha</develStage> <compatibility> <ver>5.23</ver> diff --git a/civicrm/ext/afform/mock/info.xml b/civicrm/ext/afform/mock/info.xml index 622f7cd767..22fc565b78 100644 --- a/civicrm/ext/afform/mock/info.xml +++ b/civicrm/ext/afform/mock/info.xml @@ -12,7 +12,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-01-09</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/ext/authx/info.xml b/civicrm/ext/authx/info.xml index 004f016b4b..209be074ef 100644 --- a/civicrm/ext/authx/info.xml +++ b/civicrm/ext/authx/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-02-11</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>alpha</develStage> <compatibility> <ver>5.0</ver> diff --git a/civicrm/ext/civicrm_admin_ui/info.xml b/civicrm/ext/civicrm_admin_ui/info.xml index 318c651907..abf94c6954 100644 --- a/civicrm/ext/civicrm_admin_ui/info.xml +++ b/civicrm/ext/civicrm_admin_ui/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2022-01-02</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>alpha</develStage> <compatibility> <ver>5.47</ver> diff --git a/civicrm/ext/civigrant/info.xml b/civicrm/ext/civigrant/info.xml index 05bb82a016..1d5fb5ef6c 100644 --- a/civicrm/ext/civigrant/info.xml +++ b/civicrm/ext/civigrant/info.xml @@ -13,7 +13,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-11-11</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.47</ver> diff --git a/civicrm/ext/ckeditor4/info.xml b/civicrm/ext/ckeditor4/info.xml index 8064f83c41..b46631f433 100644 --- a/civicrm/ext/ckeditor4/info.xml +++ b/civicrm/ext/ckeditor4/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">https://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-05-23</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.39</ver> diff --git a/civicrm/ext/contributioncancelactions/info.xml b/civicrm/ext/contributioncancelactions/info.xml index 8870aac6ef..20fab18226 100644 --- a/civicrm/ext/contributioncancelactions/info.xml +++ b/civicrm/ext/contributioncancelactions/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-10-12</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.32</ver> diff --git a/civicrm/ext/eventcart/info.xml b/civicrm/ext/eventcart/info.xml index 5a14586e69..e8ba02cbad 100644 --- a/civicrm/ext/eventcart/info.xml +++ b/civicrm/ext/eventcart/info.xml @@ -13,7 +13,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-08-03</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/ext/ewaysingle/info.xml b/civicrm/ext/ewaysingle/info.xml index 4e64e2fb37..fafa37f2b4 100644 --- a/civicrm/ext/ewaysingle/info.xml +++ b/civicrm/ext/ewaysingle/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-10-07</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/ext/financialacls/info.xml b/civicrm/ext/financialacls/info.xml index d92fd8b03b..9989f3fbc1 100644 --- a/civicrm/ext/financialacls/info.xml +++ b/civicrm/ext/financialacls/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-08-27</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.30</ver> diff --git a/civicrm/ext/flexmailer/info.xml b/civicrm/ext/flexmailer/info.xml index 80e38e182f..dd52ee4490 100644 --- a/civicrm/ext/flexmailer/info.xml +++ b/civicrm/ext/flexmailer/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-08-05</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <comments> FlexMailer is an email delivery engine which replaces the internal guts diff --git a/civicrm/ext/greenwich/info.xml b/civicrm/ext/greenwich/info.xml index 31f28209da..d17690ea12 100644 --- a/civicrm/ext/greenwich/info.xml +++ b/civicrm/ext/greenwich/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-07-21</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/ext/legacycustomsearches/info.xml b/civicrm/ext/legacycustomsearches/info.xml index d8e1abdabd..2c6987fca6 100644 --- a/civicrm/ext/legacycustomsearches/info.xml +++ b/civicrm/ext/legacycustomsearches/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-07-25</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <tags> <tag>mgmt:hidden</tag> diff --git a/civicrm/ext/message_admin/info.xml b/civicrm/ext/message_admin/info.xml index 73bb357545..80ef618308 100644 --- a/civicrm/ext/message_admin/info.xml +++ b/civicrm/ext/message_admin/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-06-12</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/ext/oauth-client/info.xml b/civicrm/ext/oauth-client/info.xml index 4eed9ef168..f86a3ec012 100644 --- a/civicrm/ext/oauth-client/info.xml +++ b/civicrm/ext/oauth-client/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-10-23</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.38</ver> diff --git a/civicrm/ext/payflowpro/info.xml b/civicrm/ext/payflowpro/info.xml index 9ebf97953f..19db0e066e 100644 --- a/civicrm/ext/payflowpro/info.xml +++ b/civicrm/ext/payflowpro/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-04-13</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.0</ver> diff --git a/civicrm/ext/recaptcha/info.xml b/civicrm/ext/recaptcha/info.xml index 85b2c474ba..b89b5ee271 100644 --- a/civicrm/ext/recaptcha/info.xml +++ b/civicrm/ext/recaptcha/info.xml @@ -13,7 +13,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-04-03</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/ext/search_kit/info.xml b/civicrm/ext/search_kit/info.xml index 2237b43eb3..e0d7b946c1 100644 --- a/civicrm/ext/search_kit/info.xml +++ b/civicrm/ext/search_kit/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2021-01-06</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <develStage>stable</develStage> <compatibility> <ver>5.38</ver> diff --git a/civicrm/ext/sequentialcreditnotes/info.xml b/civicrm/ext/sequentialcreditnotes/info.xml index 8ba7edd27c..19b49b2dbc 100644 --- a/civicrm/ext/sequentialcreditnotes/info.xml +++ b/civicrm/ext/sequentialcreditnotes/info.xml @@ -15,7 +15,7 @@ <url desc="Licensing">http://www.gnu.org/licenses/agpl-3.0.html</url> </urls> <releaseDate>2020-01-28</releaseDate> - <version>5.49.1</version> + <version>5.49.2</version> <tags> <tag>mgmt:hidden</tag> </tags> diff --git a/civicrm/release-notes.md b/civicrm/release-notes.md index d9b590dd13..0abb5634a9 100644 --- a/civicrm/release-notes.md +++ b/civicrm/release-notes.md @@ -15,6 +15,15 @@ Other resources for identifying changes are: * https://github.com/civicrm/civicrm-joomla * https://github.com/civicrm/civicrm-wordpress +## CiviCRM 5.49.2 + +Released May 19, 2022 + +- **[Synopsis](release-notes/5.49.2.md#synopsis)** +- **[Bugs resolved](release-notes/5.49.2.md#bugs)** +- **[Credits](release-notes/5.49.2.md#credits)** +- **[Feedback](release-notes/5.49.2.md#feedback)** + ## CiviCRM 5.49.1 Released May 6, 2022 diff --git a/civicrm/release-notes/5.49.2.md b/civicrm/release-notes/5.49.2.md new file mode 100644 index 0000000000..02605af27e --- /dev/null +++ b/civicrm/release-notes/5.49.2.md @@ -0,0 +1,40 @@ +# CiviCRM 5.49.2 + +Released May 19, 2022 + +- **[Synopsis](#synopsis)** +- **[Bugs resolved](#bugs)** +- **[Credits](#credits)** +- **[Feedback](#feedback)** + +## <a name="synopsis"></a>Synopsis + +| *Does this version...?* | | +| --------------------------------------------------------------- | -------- | +| Change the database schema? | no | +| Alter the API? | no | +| **Require attention to configuration options?** | **yes** | +| **Fix problems installing or upgrading to a previous version?** | **yes** | +| Introduce features? | no | +| **Fix bugs?** | **yes** | + +## <a name="bugs"></a>Bugs resolved + +* **_Scheduled Reminders_: Fix storage of "Limit To" option. ([dev/core#3464](https://lab.civicrm.org/dev/core/-/issues/3464), [dev/core#3465](https://lab.civicrm.org/dev/core/-/issues/3465): [#23497](https://github.com/civicrm/civicrm-core/pull/23497))** + + On sites which used 5.49.0 or 5.49.1, scheduled reminders could store incorrect values of the "Limit To" option. This + can lead to excessive notifications. The upgrader should significantly reduce this risk, but it may advise you to + review the configuration. ([Learn more](https://civicrm.org/redirect/reminders-5.49)) + +## <a name="credits"></a>Credits + +This release was developed by the following authors and reviewers: + +Wikimedia Foundation - Eileen McNaughton; Megaphone Technology Consulting - Jon Goldberg; +JMA Consulting - Monish Deb; CiviCRM - Tim Otten; Agileware - Justin Freeman + +## <a name="feedback"></a>Feedback + +These release notes are edited by Tim Otten and Andie Hunt. If you'd like to +provide feedback on them, please login to https://chat.civicrm.org/civicrm and +contact `@agh1`. diff --git a/civicrm/sql/civicrm.mysql b/civicrm/sql/civicrm.mysql index 7909ab855a..09ce030ce1 100644 --- a/civicrm/sql/civicrm.mysql +++ b/civicrm/sql/civicrm.mysql @@ -2877,7 +2877,7 @@ CREATE TABLE `civicrm_action_schedule` ( `name` varchar(64) COMMENT 'Name of the action(reminder)', `title` varchar(64) COMMENT 'Title of the action(reminder)', `recipient` varchar(64) COMMENT 'Recipient', - `limit_to` tinyint NOT NULL DEFAULT 1 COMMENT 'Is this the recipient criteria limited to OR in addition to?', + `limit_to` tinyint COMMENT 'Is this the recipient criteria limited to OR in addition to?', `entity_value` varchar(255) COMMENT 'Entity value', `entity_status` varchar(64) COMMENT 'Entity status', `start_action_offset` int unsigned DEFAULT 0 COMMENT 'Reminder Interval.', diff --git a/civicrm/sql/civicrm_data.mysql b/civicrm/sql/civicrm_data.mysql index 43b05df1bb..124012cff0 100644 --- a/civicrm/sql/civicrm_data.mysql +++ b/civicrm/sql/civicrm_data.mysql @@ -23787,4 +23787,4 @@ INSERT INTO `civicrm_report_instance` ( `domain_id`, `title`, `report_id`, `description`, `permission`, `form_values`) VALUES ( @domainID, 'Survey Details', 'survey/detail', 'Detailed report for canvassing, phone-banking, walk lists or other surveys.', 'access CiviReport', 'a:39:{s:6:"fields";a:2:{s:9:"sort_name";s:1:"1";s:6:"result";s:1:"1";}s:22:"assignee_contact_id_op";s:2:"eq";s:25:"assignee_contact_id_value";s:0:"";s:12:"sort_name_op";s:3:"has";s:15:"sort_name_value";s:0:"";s:17:"street_number_min";s:0:"";s:17:"street_number_max";s:0:"";s:16:"street_number_op";s:3:"lte";s:19:"street_number_value";s:0:"";s:14:"street_name_op";s:3:"has";s:17:"street_name_value";s:0:"";s:15:"postal_code_min";s:0:"";s:15:"postal_code_max";s:0:"";s:14:"postal_code_op";s:3:"lte";s:17:"postal_code_value";s:0:"";s:7:"city_op";s:3:"has";s:10:"city_value";s:0:"";s:20:"state_province_id_op";s:2:"in";s:23:"state_province_id_value";a:0:{}s:13:"country_id_op";s:2:"in";s:16:"country_id_value";a:0:{}s:12:"survey_id_op";s:2:"in";s:15:"survey_id_value";a:0:{}s:12:"status_id_op";s:2:"eq";s:15:"status_id_value";s:1:"1";s:11:"custom_1_op";s:2:"in";s:14:"custom_1_value";a:0:{}s:11:"custom_2_op";s:2:"in";s:14:"custom_2_value";a:0:{}s:17:"custom_3_relative";s:1:"0";s:13:"custom_3_from";s:0:"";s:11:"custom_3_to";s:0:"";s:11:"description";s:75:"Detailed report for canvassing, phone-banking, walk lists or other surveys.";s:13:"email_subject";s:0:"";s:8:"email_to";s:0:"";s:8:"email_cc";s:0:"";s:10:"permission";s:17:"access CiviReport";s:6:"groups";s:0:"";s:9:"domain_id";i:1;}'); -UPDATE civicrm_domain SET version = '5.49.1'; +UPDATE civicrm_domain SET version = '5.49.2'; diff --git a/civicrm/sql/civicrm_generated.mysql b/civicrm/sql/civicrm_generated.mysql index 6c4502f2ba..88b3ebb683 100644 --- a/civicrm/sql/civicrm_generated.mysql +++ b/civicrm/sql/civicrm_generated.mysql @@ -2933,7 +2933,7 @@ UNLOCK TABLES; LOCK TABLES `civicrm_domain` WRITE; /*!40000 ALTER TABLE `civicrm_domain` DISABLE KEYS */; INSERT INTO `civicrm_domain` (`id`, `name`, `description`, `version`, `contact_id`, `locales`, `locale_custom_strings`) VALUES - (1,'Default Domain Name',NULL,'5.49.1',1,NULL,'a:1:{s:5:\"en_US\";a:0:{}}'); + (1,'Default Domain Name',NULL,'5.49.2',1,NULL,'a:1:{s:5:\"en_US\";a:0:{}}'); /*!40000 ALTER TABLE `civicrm_domain` ENABLE KEYS */; UNLOCK TABLES; diff --git a/civicrm/vendor/autoload.php b/civicrm/vendor/autoload.php index 0bbd8ba33d..685de89478 100644 --- a/civicrm/vendor/autoload.php +++ b/civicrm/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0::getLoader(); +return ComposerAutoloaderInit1cb5fcc0859fdc6e7b70d9662a9f78fa::getLoader(); diff --git a/civicrm/vendor/composer/autoload_real.php b/civicrm/vendor/composer/autoload_real.php index 1b1090fa2d..2ac2d79cf1 100644 --- a/civicrm/vendor/composer/autoload_real.php +++ b/civicrm/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0 +class ComposerAutoloaderInit1cb5fcc0859fdc6e7b70d9662a9f78fa { private static $loader; @@ -19,9 +19,9 @@ class ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit1cb5fcc0859fdc6e7b70d9662a9f78fa', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit1cb5fcc0859fdc6e7b70d9662a9f78fa', 'loadClassLoader')); $includePaths = require __DIR__ . '/include_paths.php'; $includePaths[] = get_include_path(); @@ -31,7 +31,7 @@ class ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0 if ($useStaticLoader) { require_once __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::getInitializer($loader)); } else { $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -52,19 +52,19 @@ class ComposerAutoloaderInit94e8657ad6f6b0afeddeddcc0533ddb0 $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::$files; + $includeFiles = Composer\Autoload\ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequire94e8657ad6f6b0afeddeddcc0533ddb0($fileIdentifier, $file); + composerRequire1cb5fcc0859fdc6e7b70d9662a9f78fa($fileIdentifier, $file); } return $loader; } } -function composerRequire94e8657ad6f6b0afeddeddcc0533ddb0($fileIdentifier, $file) +function composerRequire1cb5fcc0859fdc6e7b70d9662a9f78fa($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { require $file; diff --git a/civicrm/vendor/composer/autoload_static.php b/civicrm/vendor/composer/autoload_static.php index 1d17abc4cd..ea09bf3d20 100644 --- a/civicrm/vendor/composer/autoload_static.php +++ b/civicrm/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0 +class ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa { public static $files = array ( '320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php', @@ -677,11 +677,11 @@ class ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::$prefixDirsPsr4; - $loader->prefixesPsr0 = ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::$prefixesPsr0; - $loader->fallbackDirsPsr0 = ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::$fallbackDirsPsr0; - $loader->classMap = ComposerStaticInit94e8657ad6f6b0afeddeddcc0533ddb0::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::$prefixDirsPsr4; + $loader->prefixesPsr0 = ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::$prefixesPsr0; + $loader->fallbackDirsPsr0 = ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::$fallbackDirsPsr0; + $loader->classMap = ComposerStaticInit1cb5fcc0859fdc6e7b70d9662a9f78fa::$classMap; }, null, ClassLoader::class); } diff --git a/civicrm/xml/schema/Core/ActionSchedule.xml b/civicrm/xml/schema/Core/ActionSchedule.xml index 8ea04d1b7a..1f89acb9ca 100644 --- a/civicrm/xml/schema/Core/ActionSchedule.xml +++ b/civicrm/xml/schema/Core/ActionSchedule.xml @@ -53,8 +53,6 @@ <html> <label>Limit To</label> </html> - <default>1</default> - <required>true</required> <add>4.4</add> </field> <field> diff --git a/civicrm/xml/version.xml b/civicrm/xml/version.xml index 30e5ccb9fc..925e051b49 100644 --- a/civicrm/xml/version.xml +++ b/civicrm/xml/version.xml @@ -1,4 +1,4 @@ <?xml version="1.0" encoding="iso-8859-1" ?> <version> - <version_no>5.49.1</version_no> + <version_no>5.49.2</version_no> </version> -- GitLab