I imagine since it's doing a json.dumps with some extra handling for Python dates and datetimes, it fails in the same ways that json.dumps fails. But it's not documented for JSONSerializer and I didn't document it here. Do you think it'd be necessary? Generally if it fails here, then executing an S won't work either.