Skip to content
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

Introduce lockfiles #786

Merged
merged 20 commits into from
Sep 17, 2024
Merged

Introduce lockfiles #786

merged 20 commits into from
Sep 17, 2024

Conversation

tnotheis
Copy link
Member

@tnotheis tnotheis commented Aug 1, 2024

Readiness checklist

  • I added/updated unit tests.
  • I added/updated integration tests.
  • I ensured that the PR title is good enough for the changelog.
  • I labeled the PR.

This PR enables lock files, which seems to be a good thing according to blog articles like https://www.meziantou.net/faster-and-safer-nuget-restore-using-source-mapping-and-lock-files.htm or https://devblogs.microsoft.com/nuget/enable-repeatable-package-restores-using-a-lock-file/.

@tnotheis tnotheis added the chore Some routine work like updating dependencies label Aug 1, 2024
@NikolaVetnic
Copy link
Contributor

I've read through the articles given, I think it makes sense to use those flags. I will therefore approve the PR, though the problems that using these flags cause and which Timo mentioned in the daily should of course be addressed.

NikolaVetnic
NikolaVetnic previously approved these changes Aug 1, 2024
@Dannyps
Copy link
Contributor

Dannyps commented Aug 1, 2024

How did we manage the versions of the dependencies of our dependencies before this?

@daniel-almeida-konkconsulting
Copy link
Contributor

I'm worried about the bloat of having so many package-lock files and how their maintenance will be carried out.
Worth noting that the 3rd highest rated issue on GitHub as of now is a request for a solution-wide package-lock file, which has an ongoing pull request (NuGet/Home#13288).

@tnotheis
Copy link
Member Author

tnotheis commented Aug 1, 2024

How did we manage the versions of the dependencies of our dependencies before this?

For clarification (I think I didn't mention that before): my main motivation for the lockfiles is the following advantage mentioned in the first linked blog post:

Performance: You don't need to compute the dependency graph again when restoring packages

I noticed in the past, that the package restore takes quite some time and did a quick research on how to speed it up.
While I currently don't see any improvement in performance, this is probably because I don't use it correctly yet. I will fix it and then we will see if it helps.

@tnotheis tnotheis marked this pull request as draft August 30, 2024 12:47
@jkoenig134 jkoenig134 added the wip Work in Progress label Sep 2, 2024
@tnotheis tnotheis changed the title Introduce lockfiles and set some other useful flags in csproj files Introduce lockfiles Sep 16, 2024
@tnotheis tnotheis marked this pull request as ready for review September 17, 2024 06:57
@tnotheis
Copy link
Member Author

The pipelines are now passing. I'm not sure yet if renovate updates lockfiles. If not, there will be problems. But in that case, or in case of any other problem, I'd just revert the introduction of the lockfiles.

@tnotheis tnotheis merged commit c74e296 into main Sep 17, 2024
23 checks passed
@tnotheis tnotheis deleted the introduce-lockfiles branch September 17, 2024 10:07
@tnotheis tnotheis removed the wip Work in Progress label Oct 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Some routine work like updating dependencies
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants