[discovery] Filter out components' usages in symlinked folders from Usage Insights tables
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 140
- Forks
- 100
- Avg merge
- 1h 3m
- Merged PRs (30d)
- 30
Description
Currently, some links to edx-platform repository in usage insights tables lead to 404 page (e.g., https://github.com/openedx/edx-platform/blob/master/cms/static/common/js/components/BlockBrowser/components/BlockBrowser/BlockBrowser.jsx#L45). This happens because edx-platform has symlinks configured in the repository for some folders and github does not resolve URLs for them. For example, /cms/static/common folder is a symlink to /common/static/common folder (you can see it from this file in github) and it does not have any files in the github view, but when dependant-analyzer action clones the repository locally this folder has all of the files from the folder it is symlinked to, that's why dependant-analyzer builds invalid URLs. We might have such issues in other repositories as well.
Symlinks are likely configured with git (when I clone edx-platfrom and open in in PyCharm it somehow knows that some folders are symlinks) and we can probably configure dependant-analyzer script to skip folders that are symlinked to other folders.
### AC
- [ ] Investigate and estimate what it would take for `dependant-analyzer` to exclude symlinked folders from the Usage Insights tables
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting the dependant-analyzer action and how its local clone produces Usage Insights links; use edx-platform’s cms/static/common symlink as the reproduction case. Determine how symlinked folders are detected and document the effort and scope needed to exclude them, including whether other repositories are affected.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, javascript
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100