fsprojects / fsprojects/Paket

Pack automatically with version range between minimum lock file and keeping major

Open
#3,828 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Description

I need to pack my projects and maintain his dependencies in nupkg between the version specified in lock file and maintaining the major version, like , for example, [3.1.3,4). I don't want to specify the versions in dependencies file because eventually I check for outdated files and update them over major versions, reflected on lock file. I tried with a lot of combinations betwen pack arguments and paket.template declarations.

Repro steps

As example...
paket.dependencies:
nuget Microsoft.Data.Sqlite

paket.lock:
...
NUGET
remote: https://api.nuget.org/v3/index.json
Microsoft.Data.Sqlite (3.1.3)
...

Expected behavior

I expect a way to create that dependency in nuspec inside nupkg as [3.1.3,4)

Actual behavior

The best I can do is set --minimum-from-lock-file in pack command and get that version from lock file up, ignoring next major version.

Known workarounds

Don't know any.

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 pack command and its --minimum-from-lock-file behavior, then trace how paket.lock versions and paket.template declarations are translated into the nuspec inside the nupkg. Done means a locked Microsoft.Data.Sqlite version such as 3.1.3 produces the requested [3.1.3,4) dependency range while preserving the major-version boundary.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.