eclipse-platform / eclipse-platform/eclipse.platform

Broken symlinks not reflected in Eclipse resources model

Open
#2,797 0 comments 0 reactions 0 assignees View on GitHub
bug enhancement
Dominant language
Java
Stars
165
Forks
174
Avg merge
2d 8h
Merged PRs (30d)
22

Description

While working on https://github.com/eclipse-platform/eclipse.platform/pull/2793 I've stumbled once again over the fact, that broken symbolic links aren't shown by Eclipse at all.
```
# Create a link to not existing file
ln -s not_existing_file broken
ll broken
lrwxrwxrwx 1 someuser users 5 3. Jul 13:18 broken -> not_existing_file
```
So from Eclipse one can't see broken files or directory symbolic links & can't remove them.
Sometimes this would be really helpful to see there **are** broken links in projects, because some files or directories were moved without updating symlinks. In order to warn user about such links, one has to write custom code which would trigger external processes to detect broken FS state. Ideally Eclipse would also include broken symlinks into resources model, so one doesn't need to spawn external processes to detect them.

I have two patches for resources & platform UI, let explore if they are enough or not (I guess few tests would fail).

Below screenshots shows directory which is "empty" in current Eclipse.

Image

Contributor guide

Open the contributing guide

Research direction

Review the existing resources and platform UI patches mentioned in the issue, then trace how filesystem entries are discovered and represented in the Eclipse resources model. Check the affected UI behavior for viewing and removing broken symbolic links, and add or update tests for broken file and directory links. Done means these links appear in the model and can be removed from Eclipse.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.