fsprojects / fsprojects/Paket

Packages are extracted with incorrect permissions

Open
#4,028 1 comment 2 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

I was testing Microsoft.Playwright for browser testing, and found that when I installed the package in my project and restored it with Paket, Paket extracted the package with read-only permissions on the entire directory tree (r--r--r--), which makes the package unusuable because it attempts to invoke files from the package that are copied to your test projects' output directory.

After trying the package with Nuget, I found that Nuget marks the extracted directories with rwxr-xr-x, and the extracted binaries/files with rwxr--r--, and those permissions enable the package to work.

Repro steps
  1. Make a new project according to the instructions here, but use Paket to install the Microsoft.Playwright dependency instead of nuget.

  2. The playwright install step should fail due to permissions of script files copied to the output directory

Expected behavior

Playwright should work

Actual behavior

Playwright encounters permissions errors so it can't launch the supporting binaries.

Known workarounds

You can do a chmod -R <path to output dir>/.playwright to fix the permissions of the files.

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 by reproducing the Paket installation with Microsoft.Playwright and compare the extracted directory and file permissions with a NuGet installation. Trace the package extraction path and add or update coverage for permissions; done when Playwright's copied scripts and binaries can launch without a manual chmod workaround.

Written by the indexing model from the issue text.

Assessment

Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.