chucknorris / roundhouse

RoundhousE is a Database Migration Utility for .NET using sql files and versioning based on source control
http://projectroundhouse.org
920 stars 247 forks source link

roundhouse.databases.sqlserver and alike- Have an assembly version of 1.0.0.0 #309

Open jonreis opened 6 years ago

jonreis commented 6 years ago

It seems there is no versioning on the database specific library files. So the default version of 1.0,0.0 is used for both the AssemblyVersion and FileVersion.

This will cause problems in the future for users that do not use the ILMerged assemblies because the installer will not upgrade the dll if the FileVersion has not changed.

I am probably one of the few users that does not use the ilmerged version of the library (not sure if this is a supported use?)

erikbra commented 6 years ago

Hi, Jonathan. Thanks for pointing this out. We are in the middle of a migration of build tools to a more modern pipeline, so we are in an in-between state. The "temporary" build script we use now probably doesn't update the version numbers of the separate DLLs.

Could I ask how you get the single DLLs? Do you build RoundhousE yourself, or download from somewhere?

Also, I'm interested in your use case. Is there any reason why you use the non-ILMerged version, and not the ILMerged one? I'm asking because I wonder if this would be a common use case, and if it is, would it make sense to ship each single DLL as a separate NuGet package?

ferventcoder commented 6 years ago

@jonreis I'll point out there there is now no versioning for the specifics. However there was specific versioning before the migration of build tools started, as @erikbra indicated.

jonreis commented 6 years ago

Hi Eric, thank you for the response. I know there has been a flurry of work on RH lately, and we are quite excited about it and thankful.

We have been building RH locally, I think originally because we needed a non-x86 version and because it was nice to have the source code for debugging. Also, we are only using the sqlserver specific library and since we already had dependencies similar to those being used by Roundhouse (Structuremap, NHibernate, etc), we didn't want to incur the cost the dependent assemblies twice (once embedded in Roundhouse.dll, and once in our install directory).

We plan to move to the roundhouse.lib.merged version from nuget when things settle down a bit.

Thank you.

erikbra commented 6 years ago

Most of the dependencies should now be proper NuGet dependencies, and noe ILMerged into the package. So I think using it with the same dependencies externally should be better now. Please tell us if you have any challenges with using the ILMerged version, e.g. any dependencies you cannot take on. Knowing as much as possible about how people use the library is useful.