I am working on a Pre-OWIN project which uses standard ASP.NET MVC infrastructure.
When installing/upgrading Hangfire to 1.0.x version, i get a ton of OWIN related libraries that are required for Hangfire setup.
Removing all OWIN packages manually from project is something that i don’t like to do because i will affect the updatability of the package itself.
Any suggestion on how to proceed with installation and avoiding the whole OWIN infrastructure along the way?
Why do you want to remove OWIN libraries? Does Hangfire not working after update? If so, can you describe the full picture about error? Have you seen this section of docs?
There is no Pre-OWIN projects, the
Microsoft.Owin.Host.SystemWeb package (that is installed with the
Hangfire package by default) automatically adds an HTTP module that plugs in the OWIN pipeline. All ASP.NET applications, including MVC can use OWIN pipeline from scratch.
SignalR library uses the same technique to plug in hubs, and I don’t know any issues related to compatibility.
My main concern was that i will end up with two pipelines in my application: standard ASP.NET and OWIN one.
0.9.1 version of Hangfire was using the old approach that somehow felt natural in the context of classical ASP.NET application - configuring JobServer in the Application_Start event and registering Http Module that serves the Dashboard.
Now i will have Global.asax.cs startup file and the Startup.cs.
I haven’t tried it out yet - at least not until i clear the architecture concept first.
Unfortunately I have no time to support both new and old request processing pipelines. And can’t refuse the OWIN support, because it has a lot of opportunities (see this PR), including full support for ASP.NET vNext. I agree that there is some confusion for new users to OWIN, but it will gain more popularity with time.
I decided to provide OWIN support for Hangfire to decrease the number of breaking changes later, because this step will be necessary after some months.