newChangeSet
promise handles empty