after updating webjobs nugetpackages to 1.1.1 i see that i now have a compatibility conflict with other dependant packages which use WindowsAzure.Storage 6.2.0. The update has reverted my WindowsAzure.Storage package to 5.0.2 from 6.2.0. Was this intended, if so i need to downgrade other libraries in my solution to prevent me shipping a incompatible storage dll.
i.e.
When i try to upgrade my webjob's WindowsAzure.Storage nuget package i get.
Unable to resolve dependencies. 'WindowsAzure.Storage 6.2.0' is not compatible with 'Microsoft.Azure.WebJobs 1.1.1 constraint: WindowsAzure.Storage (≥ 4.3.0 && ≤ 5.0.2)'.
Yes, this change was intentional. See issue https://github.com/Azure/azure-webjobs-sdk/issues/604 for details. Basically there are known breaking changes between the 4.3 version WebJobs SDK depends on and 6.2 which will lead to incorrect/broken WebJobs behavior.
We ran full tests up to 5.0.2 and those tests pass, so we allow you to upgrade up to that, but the SDK still targets 4.3. We won't be able to move to the latest major version of the Storage SDKs until we rev our own major version. We want to do this in the near future.
OK cool I'll downgrade. Presumably the storage repo knows of this issue so we aren't permenantly limited to v5.0.2 of that library?
It's not really an issue - as part of semantic versioning, libraries are allowed (and do) make breaking changes between major versions. It's expected. Therefore, our library cannot move to new major versions of our dependencies until we update or own major version number.
But yes, we know we need to release a new major version as soon as possible, because people want to use the latest storage, etc.
ok cool
This has created a big mess for me. Is there anyway to force it to use the latest storage package?
See issue https://github.com/Azure/azure-webjobs-sdk/issues/631 - we've removed the version cap in the latest prerelease builds.
Thanks, you saved me. I managed to somehow paint myself into a corner with this.
Update: we've just released version 1.1.2 of the SDK on Nuget.org. This version is a hotfix to 1.1.1 that removes the Storage version cap that we had in place. So if you upgrade to 1.1.2 you should now be unblocked to upgrade to later storage versions. You should be fine upgrading to 6.2 - I did a test pass on that and it looked good. I haven't tried 7.0 yet.
if I am using Microsoft.Azure.WebJobs version 1.1.2 is it okay to use WindowsAzure.Storage version 8.4.0 ?
Thanks
Most helpful comment
Update: we've just released version 1.1.2 of the SDK on Nuget.org. This version is a hotfix to 1.1.1 that removes the Storage version cap that we had in place. So if you upgrade to 1.1.2 you should now be unblocked to upgrade to later storage versions. You should be fine upgrading to 6.2 - I did a test pass on that and it looked good. I haven't tried 7.0 yet.