-
Notifications
You must be signed in to change notification settings - Fork 914
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Project structure refactoring and migration to SDK-style project format. #4408
[WIP] Project structure refactoring and migration to SDK-style project format. #4408
Conversation
3e2cbe9
to
013d076
Compare
I'm going to go ahead and close this, since the project format changes are being done in the .NET 5 branch. |
@warwickmm sorry for necroposting, but #3124 seems like a huge pull request with over a 100 commits there already, and it doesn't seem to end anytime soon. Don't get me wrong, there is a progress there, and this would be awesome if duplicati would migrate to .net 5, but project conversion is a thing that could bring some benefit right now. Maybe we could try and merge project format conversion earlier than .net 5 migration? Thing is, I'd still like to use a FluentMigrator, as discussed in #4389, but old project format really complicates things because of this known issue. |
There is some desire to focus more on bug fixes and stabilizing the current code in an effort to ease the transition to .NET 5. However, I wouldn't want to inhibit your progress on cleaning up the database code and queries. I'm also not familiar with all the implications of the proposed changes. Perhaps one way forward could be to keep the necessary infrastructure changes (csproj files, etc.) on your branch, and convert one of the queries as a proof of concept that we can evaluate? I'd be curious about performance implications, how easy it is to debug a query, etc. I'd also be interested to see what the before and after Linq2Db looks like for the changes in pull request #4297. Is the inefficiency further obfuscated by the "higher-level" query, or is it actually made more obvious somehow? /cc @kenkendk |
Okay, I just was hesitant that if I do some major stuff now, then it will become merge nightmare after .NET 5 changes roll out. |
(this is Work-in-Progress - I haven't really tested resulting binaries yet)
This PR moves CommandLine and Server projects to their own folder and migrates project format to SDK-style. No functional and/or behavioral changes are intended (besides build behaviour changes, that arise from project style migration)
Apart from just ditching old project style, there is a benefit when it comes to using .NET Standard libraries and packages, because there is known issue with referencing those from old style projects.
This conversion, however, required moving Server and CommandLine projects to their separate folders. While not strictly necessary (you can ignore child projects in main project .csproj), this made transition easier, and would probably be good in a long run. Feel free to correct me if you think otherwise.
This PR is related to #4389 since some of the proposed libraries are .NET Standard.