I'm writing a Mercurial extension to send changesets to Differential like hg email provided by patchbomb extension. Part of the logic requires "find a differential revision by commit hash" so it detects whether to update or create new differential revisions.
Since the extension is in Python, I'd like to use createrawdiff API, which is easier to use than creatediff. However, I found revision with diff created by differential.createrawdiff won't be searched via commit hash, even if local:commits property was added correctly using differential.setdiffproperty.
Upon investigation, it is because createrawdiff won't set sourceControlSystem information. So DifferentialTransactionEditor won't read local:commits metadata and won't write the differential_revisionhash table.
Therefore it'd be nice for createrawdiff to allow setting sourceControlSystem.