I wanted to point out to everyone a brand new plugin we just released, Dynamic Tasklist 2.

We’ve had two tasklist macros in Confluence for a long time, {dynamictasklist} and {tasklist} but they were both fairly limited. I use tasklists in Confluence all the time, and I was ferquently frustrated. So when Developer Network member Bob Bargemen came forward with a new and improved Tasklist Macro, I jumped on it. We worked with Bob to tweak the new tasklist and add a couple of important features, and now we’re able to release the result!
Importantly, this plugin is designed to replace the two older macros. In order for it to work, the older tasklist macros _must_ be disabled. Once they have been disabled, the first time any page with a tasklist is viewed, Dynamic Tasklist 2 will look for data in the old format and automatically convert it to the new format.
So, once you go to all that trouble, what do you get? Well, you get a snazzy, new ajax-ified tasklist that works beautifully. You can add tasks on the fly, drag-and-drop reorder them (and it remembers the order!), and even move tasks between multiple tasklists on the same page. You can edit the tasks (crazy, I know!), and even use wiki markup to add links and simple formatting. There are even more awesome features that you can read about on the plugin homepage.

We did make another bold decision with this plugin. It’s always frustrated me that changes made to a dynamic tasklist weren’t versioned. The tasks themselves were stored in page attributes and not editable by the user, except through the ajax-interface. This violated the way confluence was supposed to work, to my mind. When you make a change in a wiki, it is supposed to be transparent, safe, versioned, attributed and reversible. The dynamic tasklist macro was none of those things.
So we went to a minor amount of trouble to change the way the new tasklist stores data. It actually stores the data in the page content, so a change to the tasklist is also a change to the page. An additional benefit is that the tasklist is editable at the same time you edit the rest of the page, which is useful in some cases. It was an interesting exercise, and I think it turned out very well — allowing the macro to implement the same ajax functionality but still be a good Confluence citizen.
We’re anxious for your feedback, so download the plugin and give it a shot (or just install it straight from the plugin repository):

* When the Dynamic Tasklist 2 macro does its conversion, the data in the old format is not harmed. Should you wish to revert to the older macro, you must 1) renable the old macros, and 2) revert any page that has been automatically modified (that is, any page containing a tasklist that has been viewed) to the earlier version.

Announce new plugin, Dynamic Tasklist 2. Check!