updated from sphinx trunk