SimonH/Simple.Data.Oracle — pull request #3 by halex2005 (2014-01-27 02:56:14+00:00)
Title: Divide assemblies by dependencies

Hi

I belive that we need three assemblies on public nuget: one for Oracle.DataAccess.Client, one for Devart.Data.Oracle, and one for Oracle.ManagedDataAccess.Client.
In this pull request I made simple changes to achieve this:

- I divide main project to three projects that share code base and different project setup
- left only Debug/Release configurations in each project
- each project contains only those references that it uses
- added IntermediateOutputPath property to divide compile output from different projects
- test project was divided too
- I created nuspec-files for each project
- added specific tags like ODP.NET, Devart, ODAC - for different project different tags added
- for Simple.Data.Oracle.Devart added dependency to dotConnect.Express.for.Oracle nuget package
- for Simple.Data.Oracle.ManagedDataAccess added dependency to opd.net.managed nuget package
- CopyRelease, NugetPack and NugetPublish scripts was updated to have deal with spaces in path and to pack/publish all three packages to nuget

I tested using all three assemblies through connectionString-configuration in single test project with only Simple.Data.Ado dependency. There was no conflicts. I think it is safe to use this assemblies in one project simultaneously.

Also, I found multiple_providers initiative here: https://github.com/object/Simple.Data.Oracle/tree/multiple_providers
I don't know if this branch is complete or usable. I think it is more complicated because it needs four assemlies: one for shared code base and three assemblies with different specific depenencies.

What do you think about it?
Cheers
Hal