キーワード専用引数はPython 3.0から
https://docs.python.org/release/3.0/whatsnew/3.0.html#new-syntax
PEP 3102: Keyword-only arguments.
Named parameters occurring after *args in the parameter list must be specified using keyword syntax in the call.
「*argsのあとの名前付き引数はキーワード文法を使って指定されなければならない」
ref: Python キーワード引数=名前付き引数
これは入門書でも案内された記憶あり
You can also use a bare * in the parameter list to indicate that you don’t accept a variable-length argument list, but you do have keyword-only arguments.
「また、単なる*を引数リストに使って、可変長引数のリストを受け取らず、キーワード専用引数を受け取ることを示すこともできる」
(これは知らなかった。Python 3.8の位置専用引数と同じ時期だと思っていた)
詳細は PEP 3102 -- Keyword-Only Arguments