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

Figure out how to resolve merge conflicts in lock files #3055

Closed
bendnorman opened this issue Nov 16, 2023 · 2 comments · Fixed by #3056
Closed

Figure out how to resolve merge conflicts in lock files #3055

bendnorman opened this issue Nov 16, 2023 · 2 comments · Fixed by #3056
Assignees

Comments

@bendnorman
Copy link
Member

bendnorman commented Nov 16, 2023

Now that we are using lock files, we'll get merge conflicts in pyproject.toml which are manageable and conflicts in our *lock.yml files which are not manageable. We don't want to be resolving dozens of direct and indirect dependency merge conflicts.

This article suggests creating a merge strategy for the lock files. For example, direct dependency A gets upgraded on dev from 0.1 to 0.3 and is upgraded to from 0.1 to 0.2 on a feature branch called feature. Merge dev into feature, and there is a merge conflict in pyproject.toml and a handful of conflicts in conda-lock.yml because the indirect dependencies of dependency A changed. We could set a merge strategy for lock files to always use the lock files from the current branch. The merge conflict in pyproject.toml will be resolved and the lock files may be temporarily out of sync with pyproject.toml. I think this should be ok because when the new resolved pyproject.toml file is pushed to GitHub, the update-conda-lock action will use the new pyproject.toml and clobber the incorrect lock files.

@bendnorman bendnorman added the bug Things that are just plain broken. label Nov 16, 2023
@bendnorman bendnorman removed the bug Things that are just plain broken. label Nov 16, 2023
@zaneselvans zaneselvans linked a pull request Nov 16, 2023 that will close this issue
8 tasks
@zaneselvans
Copy link
Member

Ahhh, so you can specify a particular merge strategy on a per-file basis.

@jdangerx jdangerx moved this from New to In progress in Catalyst Megaproject Nov 16, 2023
@jdangerx
Copy link
Member

Yeah, this seems like a good way forward!

@github-project-automation github-project-automation bot moved this from In progress to Done in Catalyst Megaproject Nov 16, 2023
@zaneselvans zaneselvans self-assigned this Nov 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants