Hi Rob this is all really great news with 3.0! I'd be very curious to chat or collaborate on your prototype. I personally don't really see a way to strongly continue support for IE 8 past mid year of 2014 after MS does an official drop. Eventually it'll be a forced upgrade towards ES5 compatible browsers and my hope is that IE8 users will just update to IE11 and never look back. I'm glad to see MS integrate auto updates like chrome and Firefox because it's going to help the web move forward more quickly.
Personally I've been considering how to integrate something like X-Tags with Durandal. I'll have some time to wrap my head around it after our official US product launch in a couple of weeks. We are considering multiple technologies for our next step. I've been happy with what Durandal has given us in 2.x. I love knockout and how it's lightweight and does a simple job well. My only gripe is how natively everything needs to happen in a single data-bind attribute. I've got a small feature prototype that I just finished that is trying to push out the concepts of Durandal widgets to its edge. I'm doing multiple compositions with widgets embedded in other widgets to abstract out simple reusable functionality into smaller pieces similar to how web components are structured. I'm trying to fall somewhere between Durandal, Web Components, and Angular as my model. It feels a bit cleaner to parameterize the changeable aspects of the widget through some type of declarative tagging and custom attributes. My first go puts me in a better place (attributes in a data-bind) than to put all of my logic in the View Model. I've got some transcluded content thanks to data-part, but in the end it still feels messy.
What I would like to do is to find a middle ground between what Durandal 2.x has to offer now and potentially shim the current feature set to support a smoother transition to 3.x, web components, MDV, native observables, setters and getters, and what ever else we can throw at it.
I know that Angulars approach along with Ember is to abstract those ES5/6 features under the hood and keep their current tooling and API's. So in the end it's still and Angular or Ember app with the same familiar API's and methodologies.
Are you considering Durandal 3.x to just be a light weight bit of JS glue which interconnects all of the new features necessary to make web components possible? Or are we still looking at a similar API and workflow that Durandal 2.x offers while it switches out its plumbing (jQuery, requirejs,knockout) for native features and shims? Are you considering on creating your own shims or piggy backing on top of something like X-Tags or Polymer?
-- Larry