Hello, I have a personal suggestion regarding the Umbraco version roadmap:
It's been quite a while since version 7.0.0 (November 2013) and most of the required nuGet packages have new and improved versions.
The problem I have (and I'm sure I'm not the only one) is that If I reference some other/newer code I have lots of reference conflicts (for example with Automapper).
Why not upgrading major version each year or so? Or creating an "package upgrade version" with no changes in the API (to avoid breaking the existing plugins)? The current version roadmap make us use obsolete packages during too much time.
There will be better package version control with 7.5 that amongst other stuff includes minimum Umbraco version for packages. Hopefully it will help mitigate these problems.
With regard to the NuGet packages like Automapper you mention, my understanding is there are backward compatibility issues in shipping Umbraco with the latest versions - so moving to these is planned for the next major version, version 8. This was discussed at one of the talks given at Codegarden this year.
I understand the disadvantages of possibly breaking compatibility with existing plugins, but I think that taking 3 years (and lots of intermediate versions with added functionallity) to make a major version can be excessive.
I mean, why not say "It's been a year and half since we released version 7 and there are lot's of required libraries that have new and improved versions , so let's rebrand our next release v7.X to v8 and so we can update the libraries".
BTW: I think that everybody would love a magic "Update umbraco" button. ;-) ;-)
I completely understand your issue. I am pretty sure you will see a lot of improvement in the upcoming year. v8 is what you want... But you will need to wait until the end of the year. There was a session on Codegarden about "the future of umbraco". It's the same message as Andy and lars already explained.
For smaller version upgrades, a simple "nuget update" is all you need to do. If you want more magic, I understand because I love magic. And I love open source. So why not create the button yourself? ;-)
It seems that the "magical happiness button" is already created in Umbraco as a Service! ;)
On UaaS your site will always run the latest and most secure version of Umbraco as it automatically handles upgrades to the latest patch version. And when it comes to upgrading to the next minor release, all you need to do is click a button.
I totally follow you here. I personally would LOVE that MiniProfiler 2.1 (March 4, 2013) was upgraded to >= 3.0.10 so that we were able to use MiniProfiler.Mvc4 (https://www.nuget.org/packages/MiniProfiler.Mvc4/) for projects build on the Umbraco Foundation.
Right now we are forced to use other proxy profilers as MiniProfiler 2.1.0 cannot meet our needs :/
All of these packages you mention have large breaking changes. Some have api changes, some have assembly signing issues, some have other breaks. With all of these it would be required that you rebuild your solution to upgrade and fix any compilation issues, config transforms, etc....
Not everyone uses nuget.... I wish they did because when you use nuget you would rebuild anyways. For the folks that don't what would happen is they'd just get ysods for various things. Many Umbraco developers don't know or want to know about these things and we cannot alienate them either.
The magic of Umbraco upgrades is possible because of backwards compat maintenance and stability in minor releases.
Automapper was their own fault, I've already been in touch with them about that but they signed their assembly in the middle of a minor release == huge breaking change.
I understand the need for this approach and after v8 we will certainly consider this but please know there are other factors at play. People are afraid of major versions, they will not upgrade for some time, this leaves the HQ maintaining old versions for a long time. It is also a very big deal and takes quite a lot of work to realize a major release. V8 will also bring us out of the old legacy code maintenance window so moving past that will be much smoother sailing.
What I hear you say say Shannon, is that it will be a looong time before we see packages like MiniProfiler & Automapper being upgraded to the newest version.
Not because it's a big hassle to upgrade them, but because that even with a new major release you are going to be somewhat backwards compatible?
From what understand, it will be in version 9 (or something like that) we will se upgrades of thee packages? As it seems rather weird to present breaking changes in the middle of Umbraco 8?
@Squazz, Shannon did a talk about "the future of umbraco" last week at codegarden (the Umbraco conference). They will upgrade dependencies with v8. You don't need to wait for version 9.
V8 is expected to lauch by the end of the year.
So a few more months of patience, and all of your problems are gone.
Version roadmap suggestion
Hello, I have a personal suggestion regarding the Umbraco version roadmap:
It's been quite a while since version 7.0.0 (November 2013) and most of the required nuGet packages have new and improved versions.
The problem I have (and I'm sure I'm not the only one) is that If I reference some other/newer code I have lots of reference conflicts (for example with Automapper).
Why not upgrading major version each year or so? Or creating an "package upgrade version" with no changes in the API (to avoid breaking the existing plugins)? The current version roadmap make us use obsolete packages during too much time.
Just my 2c! Thanks!
There will be better package version control with 7.5 that amongst other stuff includes minimum Umbraco version for packages. Hopefully it will help mitigate these problems.
With regard to the NuGet packages like Automapper you mention, my understanding is there are backward compatibility issues in shipping Umbraco with the latest versions - so moving to these is planned for the next major version, version 8. This was discussed at one of the talks given at Codegarden this year.
Andy
Hi Andy!
I understand the disadvantages of possibly breaking compatibility with existing plugins, but I think that taking 3 years (and lots of intermediate versions with added functionallity) to make a major version can be excessive.
I mean, why not say "It's been a year and half since we released version 7 and there are lot's of required libraries that have new and improved versions , so let's rebrand our next release v7.X to v8 and so we can update the libraries".
BTW: I think that everybody would love a magic "Update umbraco" button. ;-) ;-)
Thanks!
Hi Enrique
I completely understand your issue. I am pretty sure you will see a lot of improvement in the upcoming year. v8 is what you want... But you will need to wait until the end of the year. There was a session on Codegarden about "the future of umbraco". It's the same message as Andy and lars already explained.
For smaller version upgrades, a simple "nuget update" is all you need to do. If you want more magic, I understand because I love magic. And I love open source. So why not create the button yourself? ;-)
Kind regards
Hi Damiaan,
It seems that the "magical happiness button" is already created in Umbraco as a Service! ;)
Everybody have a nice weekend!
I totally follow you here. I personally would LOVE that MiniProfiler 2.1 (March 4, 2013) was upgraded to >= 3.0.10 so that we were able to use MiniProfiler.Mvc4 (https://www.nuget.org/packages/MiniProfiler.Mvc4/) for projects build on the Umbraco Foundation.
Right now we are forced to use other proxy profilers as MiniProfiler 2.1.0 cannot meet our needs :/
All of these packages you mention have large breaking changes. Some have api changes, some have assembly signing issues, some have other breaks. With all of these it would be required that you rebuild your solution to upgrade and fix any compilation issues, config transforms, etc....
Not everyone uses nuget.... I wish they did because when you use nuget you would rebuild anyways. For the folks that don't what would happen is they'd just get ysods for various things. Many Umbraco developers don't know or want to know about these things and we cannot alienate them either.
The magic of Umbraco upgrades is possible because of backwards compat maintenance and stability in minor releases.
Automapper was their own fault, I've already been in touch with them about that but they signed their assembly in the middle of a minor release == huge breaking change.
I understand the need for this approach and after v8 we will certainly consider this but please know there are other factors at play. People are afraid of major versions, they will not upgrade for some time, this leaves the HQ maintaining old versions for a long time. It is also a very big deal and takes quite a lot of work to realize a major release. V8 will also bring us out of the old legacy code maintenance window so moving past that will be much smoother sailing.
What I hear you say say Shannon, is that it will be a looong time before we see packages like MiniProfiler & Automapper being upgraded to the newest version. Not because it's a big hassle to upgrade them, but because that even with a new major release you are going to be somewhat backwards compatible?
From what understand, it will be in version 9 (or something like that) we will se upgrades of thee packages? As it seems rather weird to present breaking changes in the middle of Umbraco 8?
@Squazz, Shannon did a talk about "the future of umbraco" last week at codegarden (the Umbraco conference). They will upgrade dependencies with v8. You don't need to wait for version 9. V8 is expected to lauch by the end of the year.
So a few more months of patience, and all of your problems are gone.
Oh, then I completely misunderstood what Shannon was saying :)
I'll be looking forward to when the talks are being put online.
is working on a reply...