docs: def pbkdf2_hex(data, salt, iterations=DEFAULT_PBKDF2_ITERATIONS,
                 keylen=None, hashfunc=None):
      """Like :func:`pbkdf2_bin` but returns a hex encoded string.
  
      .. versionadded:: 0.9
  
      :param data: the data to derive.
      :param salt: the salt for the derivation.
      :param iterations: the number of iterations.
      :param keylen: the length of the resulting key.  If not provided
                     the digest size will be used.
      :param hashfunc: the hash function to use.  This can either be the
                       string name of a known hash function or a function
                       from the hashlib module.  Defaults to sha1.
      """
      rv = pbkdf2_bin(data, salt, iterations, keylen, hashfunc)
      return to_native(codecs.encode(rv, 'hex_codec'))