hhblaze / DBreeze

C# .NET NOSQL ( key value store embedded ) ACID multi-paradigm database management system.
BSD 2-Clause "Simplified" License
532 stars 58 forks source link

Why duplicated projects? #54

Closed NicolasDorier closed 5 years ago

NicolasDorier commented 5 years ago

I see that lot's of stuff is duplicated accross several projects (https://github.com/hhblaze/DBreeze/issues/9).

What is the most up to date? Do you want me to make a PR to cleanup this mess?

hhblaze commented 5 years ago

There is no mess. Files which we work on, we test on compatibility to be linked across the projects and we do that if it is possible. Yes, some old files were not changed during the long time and may look like duplicated, but this is not a problem, because we don't touch them until now and may be we will link them later. All files are up to date per project. The build system compiles each project separately like it is.

NicolasDorier commented 5 years ago

Are they really up to date? For example this commit https://github.com/hhblaze/DBreeze/commit/2ef2e44da711b434f5f4eee4f2f7cb42ac070aed is not touching the other projects.

NicolasDorier commented 5 years ago

Also DBreeze.NetCoreApp does not even build. What are you building and publishing on nuget exactly?

igloo15 commented 5 years ago

@NicolasDorier

I don't really understand why its done this way and not using the new multi targeting framework stuff. But it appears that the repo uses a custom deployment strategy to build and create the nuget packages. Its very strange and doesn't make sense but you can see it here:

https://github.com/hhblaze/DBreeze/blob/4b304c192f47572795bc045ec1b9c92e01856235/Deployment/Deployer/Deployer/Program.cs

NicolasDorier commented 5 years ago

@igloo15 yes, I needed to debug something and dive down into the code and found it impossible to do so because of how complicated is structured the project in this repo.

I made https://github.com/NicolasDorier/DBriize which only support .NETStandard2.0 and maybe later specific version for .NET Core if I make use of span. I added source link so people can debug into the code.