They changed from GPL-2.0-or-later to GPL-3.0-or-later. The latter is a subset, so any content licensed under the former can be relicensed under the latter without consulting the original author.
The license sets the terms by which you can redistribute the software, it doesn't allow you to set the terms for the people you distribute it to. The only person/entity who can change the terms of the license is the copyright holder. People who receive this software will always have the right to redistribute under GPLv2.
As soon as you do any copyrightable change, you have the right to declare that change GPLv3 or later and that makes the overall project GPLv3 or later.
The previously existing code will still be GPLv2 or later, but you’ll have to trawl the commit history to find out what’s also available under GPLv2 or later.
If I have a program that consists of 5 files each of which is exactly 2000 lines lone and I distribute under GPLv2 or later. You like my program but realize that you have a novel new algorithm that will speed up the core functionality of my program by 300% and your algorithm only needs 100 new lines in one of the source files. You are totally free to add your hundred lines under terms that are compatible with my original license. You cannot proceed to remove or change my headers that specify my copyright and my license terms to the 10,000 lines of code of which I am the sole copyright holder.