ipatalas / vscode-sprint-planner

Plan your sprints in VSCode directly!
MIT License
37 stars 22 forks source link

If description, area, or estimate already exist on sync, pull this into planner file #32

Open sheldonhull opened 3 years ago

sheldonhull commented 3 years ago

Upon synchronizing, the current description and estimates don't pull in. To avoid conflicts, can we pull in the description, area, and estimate if they already are populated upon syncing with Azure DevOps?

ipatalas commented 3 years ago

Ok, let me explain each field individually:

description - this one is tricky. I had a first approach to that when introducing Sync Tasks command and found out it's not that easy. Under the hood description is just HTML. For simple descriptions it's easy to handle but quite quickly things get complicated and the underlying HTML is no longer well-formed making it hard to parse. I could pull and show plain HTML but that's not very friendly especially given that this extension is being used by managers as well - not only developers. So far I haven't come up with an idea how to do it properly - if you have ideas please share. If it's not too much effort I'll consider it. Bear in mind not pulling the description doesn't mean it will be overwritten when you publish your changes next time. Actually it will be only updated when it's provided so in case you pull a task with description, change it's name and publish the name will be changed but description won't get overwritten unless you specify new description explicitly.

area - that would make sense but in theory you can set different area per each task inside a PBI which is not yet supported by the extension. It's a new feature and so far you can set area either globally or per one or more PBIs. Again, when updating tasks area is never going to be updated. It's only populated when creating tasks. Perhaps I should put that in the docs as it's not documented. It's actually sort of a legacy feature from the times it was not even possible to set the area so I might consider introducing ability to update area but then conflicts may arise. I have to think how to handle that properly.

estimate - this one actually should be populated. You can even see that in the GIF in the README. There is however a caveat. It will only be filled when remaining work is the same as original estimate: image Oh... I just figured for Scrum based projects there is only one field. The screen above comes from Agile based project board. That means it's a bug.