Klauzula „or later”
Sformułowanie pozwalające użytkownikom wybrać nowszą wersję licencji niż ta, na której kod został wydany, i oddające część przyszłości temu, kto tę licencję napisze.
Zalecany nagłówek GPL mówi, że program można używać na warunkach wersji 2 licencji „lub (według własnego wyboru) dowolnej późniejszej wersji”. Użycie go oznacza zaufanie, że Free Software Foundation nie wyda przyszłej wersji, która się nie spodoba. Linus Torvalds nie zaufał. Jądro Linuksa jest wyraźnie na GPLv2 bez tej klauzuli, więc gdy w 2007 roku pojawiła się GPLv3, jądro nie mogłoby przejść na nią, nawet gdyby chciało, a nie chciało.
Przez lata różnica była niewidoczna w metadanych, które podawały po prostu „GPL-2.0”. W 2017 roku SPDX uznał ten identyfikator za przestarzały na rzecz jednoznacznych GPL-2.0-only i GPL-2.0-or-later. GPLv3 daje drogę pośrednią: autor może wskazać pełnomocnika, który zdecyduje, czy przyszłe wersje będą akceptowane.