cake-build / cake-build/cake

CleanDirectories does not handle cleaning directories with symlinks without unnecessary errors

Open
#2,135 1 comment 2 reactions 0 assignees View on GitHub
Bug Help wanted Up-for-grabs
Dominant language
C#
Stars
4.2k
Forks
778
Avg merge
1h 15m
Merged PRs (30d)
19

Description

### What You Are Seeing?

This error
```
An error occurred when executing task 'Default'.
Error: One or more errors occurred.
Could not find a part of the path '/Users/donblas/tmp/cake/example/fsharp-macos.framework/Versions/Current'.
```
when cleaning directories of a certain structure.

### What is Expected?

It to clean without error.

### What version of Cake are you using?

$ mono .cake/Cake/Cake.exe --version | tail -n 2
Version 0.27.1+Branch.main.Sha.7e44aa0319b6ef12ecc415d79a1c75cc98e2c788

### Are you running on a 32 or 64 bit system?
64-bit

### What environment are you running on? Windows? Linux? Mac?
macOS

### Are you running on a CI Server? If so, which one?
Reproduces without.

### How Did You Get This To Happen? (Steps to Reproduce)

[clean_bug.zip](https://github.com/cake-build/cake/files/1940095/clean_bug.zip)

1. Download attached zip file
2. Copy fsharp-macos.framework from the backup folder to example
3. ./build.sh

### Output Log

Diag: https://gist.github.com/chamons/3def1b016716b71beb2365a322ba2513
Diag w\ mono: https://gist.github.com/chamons/858cdcca2266a6afb796fa4ba4a108fa
--verbosity diagnostic -mono -Experimental: https://gist.github.com/chamons/b9248c9d30c167c679fd4b3b3d56f81a

Contributor guide

Open the contributing guide

Research direction

Download clean_bug.zip, copy fsharp-macos.framework from its backup folder into example, and run ./build.sh to reproduce the error on macOS. Trace the CleanDirectories path used by the build, then verify that cleaning this symlink-containing structure completes without an error.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system
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.