fsprojects / fsprojects/Paket

Paket.lock contains some dependencies multiple times.

Open
#2,860 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Description

I see stuff like

    Chessie (0.6)
      FSharp.Core  - restriction: || (== net46) (&& (== netcoreapp2.0) (< netstandard1.6)) (&& (== netstandard2.0) (< netstandard1.6))
      FSharp.Core (>= 4.0.1.7-alpha) - restriction: || (&& (== net46) (>= netstandard1.6)) (== netcoreapp2.0) (== netstandard1.6) (== netstandard2.0)
      NETStandard.Library (>= 1.6) - restriction: || (&& (== net46) (>= netstandard1.6)) (== netcoreapp2.0) (== netstandard1.6) (== netstandard2.0)

In the lock file. This sounds very wrong and bad, usually we try to unify equal dependencies across dependency groups.
At least we should take a look if this has some surprising side-effects. I saw this in the past and it lead to several critical bugs back then... The only thing I'm wondering is why we don't have a lot of bug reports coming in...

Also what does Paket resolve to if a single package has two dependency groups with conflicting dependencies? Does it report an error?

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

Start with the duplicated dependency groups shown in Paket.lock and reproduce the resolution using the reported package constraints. Trace how Paket handles repeated or conflicting dependencies, then document the observed behavior and add regression coverage if the repository provides a suitable test location.

Written by the indexing model from the issue text.

Assessment

Tech stack
fsharp
Domain
build-system, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.