Documentation
Do not output a temporary file if progress has been set to false. If progress is passed as null, generate an unix timestamp temporary file. If not, generate one with the progress ID given.
Allow progress passed to be empty