openedx / openedx/paragon

[discovery] Filter out components' usages in symlinked folders from Usage Insights tables

Open
#2,282 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

raccoon-gang
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

Open the contributing guide

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 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.