Many dependencies are shared between projects. Central package
management (CPM) prevents discrepancies of dependency versions between
projects and reduces the duplication of version information across
projects.
Previously, versions of transitive dependencies which have been marked
as vulnerable have been overwritten to safe versions. CPM enables us to
overwrite versions of vulnerable transitive dependencies in a
centralized manner, which makes maintaining them easier. This change
also enables us to exclude information about overwritten transitive
dependencies from each individual project, which reduces clutter in
project files.
Remove unused NuGet projects.
After implementing CPM, NuGet projects (all projects under the `nuproj`
directory, except `SF.AspNetCore.Internal`) started causing warning on
build. Since they are no longer in use, and it is not planned to use
them in the future, they have been deleted form the repository.
Update versions of ASP.NET Core NuGet packages
Update the following packages:
- `Microsoft.AspNetCore.Hosting` has been downgraded to version `2.1.1`.
- `Microsoft.AspNetCore.Server.Kestrel` has been downgraded to version
`2.1.3`.
These packages have been downgraded in order to reflect the support
policy of NuGet based ASP.NET Core 2.1 packages which are being used for
building our .NET Framework 4.6 packages
(https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core).