diff --git a/build/build.xml b/build/build.xml index 7eae9e41a8..d17283c0fc 100644 --- a/build/build.xml +++ b/build/build.xml @@ -3,8 +3,8 @@ - - + + diff --git a/build/generate_package_json.php b/build/generate_package_json.php index 152f38958a..fc67485136 100644 --- a/build/generate_package_json.php +++ b/build/generate_package_json.php @@ -84,7 +84,7 @@ foreach ($older_verions as $version) 'phpBB ' . $version . ' to ' . $current_version . ' Update Package', 'phpBB-' . $version . '_to_' . $current_version, 'update', - 'update', + 'advanced_update', $version ); } diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index 50816127e9..08fa1cd0f5 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -50,6 +50,7 @@
  1. Changelog
      +
    • Changes since 3.3.6
    • Changes since 3.3.6-RC1
    • Changes since 3.3.5
    • Changes since 3.3.5-RC1
    • @@ -160,6 +161,16 @@
      +

      Changes since 3.3.6

      +

      Bug

      +
        +
      • [PHPBB3-16973] - Remove orphaned roles migration may incorrectly remove role-based group permissions
      • +
      +

      Task

      +
        +
      • [PHPBB3-16972] - Rename subtype to advanced_update in package.json generation
      • +
      +

      Changes since 3.3.6-RC1

      Bug

        diff --git a/phpBB/phpbb/db/migration/data/v33x/remove_orphaned_roles.php b/phpBB/phpbb/db/migration/data/v33x/remove_orphaned_roles.php index 1bf8093d70..9b919427e2 100644 --- a/phpBB/phpbb/db/migration/data/v33x/remove_orphaned_roles.php +++ b/phpBB/phpbb/db/migration/data/v33x/remove_orphaned_roles.php @@ -30,13 +30,17 @@ class remove_orphaned_roles extends \phpbb\db\migration\migration public function acl_remove_orphaned_roles() { $role_ids = []; + $auth_role_ids = []; $sql = 'SELECT auth_role_id FROM ' . ACL_GROUPS_TABLE . ' WHERE auth_role_id <> 0 AND forum_id = 0'; $result = $this->db->sql_query($sql); - $auth_role_ids = array_keys($this->db->sql_fetchrowset($result)); + while ($row = $this->db->sql_fetchrow($result)) + { + $auth_role_ids[] = $row['auth_role_id']; + } $this->db->sql_freeresult($result); if (count($auth_role_ids)) @@ -45,7 +49,10 @@ class remove_orphaned_roles extends \phpbb\db\migration\migration FROM ' . ACL_ROLES_TABLE . ' WHERE ' . $this->db->sql_in_set('role_id', $auth_role_ids); $result = $this->db->sql_query($sql); - $role_ids = array_keys($this->db->sql_fetchrowset($result)); + while ($row = $this->db->sql_fetchrow($result)) + { + $role_ids[] = $row['role_id']; + } $this->db->sql_freeresult($result); } diff --git a/phpBB/phpbb/db/migration/data/v33x/v337.php b/phpBB/phpbb/db/migration/data/v33x/v337.php new file mode 100644 index 0000000000..6398f71d8e --- /dev/null +++ b/phpBB/phpbb/db/migration/data/v33x/v337.php @@ -0,0 +1,36 @@ + + * @license GNU General Public License, version 2 (GPL-2.0) + * + * For full copyright and license information, please see + * the docs/CREDITS.txt file. + * + */ + +namespace phpbb\db\migration\data\v33x; + +class v337 extends \phpbb\db\migration\migration +{ + public function effectively_installed() + { + return version_compare($this->config['version'], '3.3.7', '>='); + } + + public static function depends_on() + { + return [ + '\phpbb\db\migration\data\v33x\v336', + ]; + } + + public function update_data() + { + return [ + ['config.update', ['version', '3.3.7']], + ]; + } +}