I wrote a MediaMonkey extension based on a much older iTunes script that was, and is, written in Python.
Because of that historical glitch, I do some things oddly, such as accessing the MM database directly.
So, now I'm trying to adapt things to the MM COM API as much as possible. My first step, I assumed, would be to replace all my direct use of sqlite3 with win32com and mm.Database calls. (If all goes well, I hope to eventually not require the user to install Python.)
Most everything looks like it should work; but the big exception is a couple of transactions I use. They have failure paths (usually triggered by user aborts), and I do a rollback if anything unpleasant happens.
But although MM documents BeginTransaction and Commit, it doesn't seem to have anything like a Rollback. Is there some reason for this? Will I no longer be able to rollback in case of error?