make docs.changes callback optional and add documentation for it