{Key--value setting handling in the kernel} {Joseph Wright} {\LaTeXe\ introduced class and package setting in the optional arguments to \cs{documentclass} and \cs{usepackage}. To date, these were designed to handle simple keyword-based option. Over time, packages have extended the mechanism to accept key--value (keyval) arguments. Recent work by the team brings keyval handling into the kernel. This brings the added benefit of allowing repeated package loading to avoid clashes. Here, I will look briefly at the background, then explore how to use the new mechanism in package development.}