Problem/Motivation
public function getCacheContexts() {
$contexts = [];
// By definition arguments depends on the URL.
// @todo Once contexts are properly injected into block views we could pull
// the information from there.
$contexts[] = 'url';
Currently, adding an argument to a view makes the view cacheable per url even if the argument value depends only on a single query argument value.