Change record status: 
Project: 
Introduced in branch: 
9.1.x
Introduced in version: 
9.1.0-rc1
Description: 

API widened to accept more arguments (of the same type) for:

  • \Drupal\Core\Cache\Cache::mergeTags()
  • \Drupal\Core\Cache\Cache::mergeMaxAges()
  • \Drupal\Core\Cache\Cache::mergeContexts()

Examples

  1. \Drupal\Core\Cache\Cache::mergeTags()

    Given:

    $cache_tags_foo = ['foo'];
    $cache_tags_bar = ['foo', 'bar'];
    $cache_tags_baz = ['baz'];
    

    Before:

    $merge_tags = \Drupal\Core\Cache\Cache::mergeTags(\Drupal\Core\Cache\Cache::mergeTags($cache_tags_foo, $cache_tags_bar), $cache_tags_baz);
    

    After:

    $merge_tags = \Drupal\Core\Cache\Cache::mergeTags($cache_tags_foo, $cache_tags_bar, $cache_tags_baz);

    Or

    $args = [$cache_tags_foo, $cache_tags_bar, $cache_tags_baz];
    $merge_tags = \Drupal\Core\Cache\Cache::mergeTags(...$args);
    
  2. \Drupal\Core\Cache\Cache::mergeMaxAges()

    Given:

    $max_age_foo = 60;
    $max_age_bar = 60;
    $max_age_baz = Cache::PERMANENT;
    

    Before:

    $merged_max_age = \Drupal\Core\Cache\Cache::mergeMaxAges(\Drupal\Core\Cache\Cache::mergeMaxAges($max_age_foo, $max_age_bar), $max_age_baz);
    

    After:

    $merged_max_age = \Drupal\Core\Cache\Cache::mergeMaxAges($max_age_foo, $max_age_bar, $max_age_baz);
    

    Or

    $args = [$max_age_foo, $max_age_bar, $max_age_baz];
    $merged_max_age = \Drupal\Core\Cache\Cache::mergeMaxAges(...$args);
    
  3. \Drupal\Core\Cache\Cache::mergeContexts()

    Given:

    $contexts_foo =  ['foo'];
    $contexts_bar =  ['foo', 'bar'];
    $contexts_baz =  ['baz'];
    

    Before:

    $merged_contexts = \Drupal\Core\Cache\Cache::mergeContexts(\Drupal\Core\Cache\Cache::mergeContexts($contexts_foo, $contexts_bar), $contexts_baz);
    

    After:

    $merged_contexts = \Drupal\Core\Cache\Cache::mergeContexts($contexts_foo, $contexts_bar, $contexts_baz);
    

    Or

    $args = [$contexts_foo, $contexts_bar, $contexts_baz];
    $merged_contexts = \Drupal\Core\Cache\Cache::mergeContexts(...$args);
    
Impacts: 
Module developers