fsprojects / fsprojects/Paket

Having projects with independant paket.dependencies files in the same solution will make paket update fail

Open
#4,140 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
F#
Stars
2.1k
Forks
528
Avg merge
1d 12m
Merged PRs (30d)
54

Description

Description
Repro steps

We have a solution file that references 5 projects. 4 back end and 1 front end. The front end project has its own paket.dependencies file.

The projects are located like this

root
|- paket.dependencies
|- app.sln
|- api
|-BE1
|- BE2
|- BE3
| - BE4
|- app
|- paket.dependencies
|- FE

In the situation where there's no paket.lock file in the front end folder a paket update in the root folder will result in Paket failed with -> dotnet restore "app.sln" failed. The reason being that it tries to restore the dependencies for the FE project but finds no paket.lock file

Expected behavior

The paket.lock file should be created for both paket.dependencies files

Known workarounds

First do a paket update in the FE folder for the local paket.dependencies then go to root and repeat

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure from the root paket.dependencies and app.sln, with the second paket.dependencies under app and no app/paket.lock. Start by running paket update in the root, then compare it with the documented workaround of updating from app first. Done means a root update creates or updates paket.lock for both dependency files without dotnet restore failing.

Written by the indexing model from the issue text.

Assessment

Tech stack
fsharp
Domain
build-system, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.