NEW WORKSPACE MECHANIC EXTENSION POINT
Well, I said we were in maintenance mode, didn't I? And then I spent the weekend on it, thanks to Markus Kuppe's reasonable feature request.
So, Saturday I added a new feature: the ability to specify a 'resource task provider' by plug-in. Keep in mind I'm only publishing this to the testing repository for the time being.
In other words, right now, you can specify resource paths by their location on disk, or by URL. But what if you had a third way you wanted to handle resources, say, in-memory? So now that's possible.
API CHANGES. SORRY.
To implement this I changed some API around just a little bit, but these were well-needed simplifications (mostly removing unnecessary or bad methods. If you already write your own tasks or scanners, your error log or output log should notify you.)
NEW SAMPLES PROJECT
The samples project contains:
* A task that fails when your workspace isn't maximized.
* A resource task provider (remember I just mentioned that?) that is based off an in-memory map.
* A scanner that reads files with the extension .showview. These files list view IDs, and the scanner checks if those views are open, and opens them if you ask for it.
Hope these are helpful. They helped me find some problems with the existing API, so I added lots of comments and stuff. :) And broke the API a bit. :(
Feedback is surely welcome. Let me know if you like this and I'll eventually promote it to the release update site.