[Docs] DEAD_CODE.md says six languages have no dynamic-import detection when all six do

Open Beginner friendly
#2,354 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
90/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
documentation

Research direction

Start with docs/layers/DEAD_CODE.md:247-249, then compare the referenced registry.py entries and dynamic_markers.py, including its module docstring at lines 8-12. Update the DEAD_CODE.md paragraph and stale docstring so both describe coverage for Go, Ruby, PHP, Kotlin, Swift, and Scala; no dedicated test is mentioned.

Written by the indexing model from the issue text.

Description

documentation good first issue

Summary

docs/layers/DEAD_CODE.md claims Go, Ruby, PHP, Kotlin, Swift and Scala have no dynamic-import marker coverage. The marker table and the hint registry both already cover all six.

Mechanism

The registry instantiates GoDynamicHints, RubyDynamicHints, PhpDynamicHints, SwiftDynamicHints, ScalaDynamicHints and JvmDynamicHints, the last handling both .java and .kt.

packages/core/src/repowise/core/ingestion/dynamic_hints/registry.py:53-70, and dynamic_hints/jvm.py:64-78

The marker table the doc refers to already has entries for all six extensions.

packages/core/src/repowise/core/analysis/dead_code/dynamic_markers.py, .kt at :171, .rb at :199, .php at :207, .go at :215, .swift at :231, .scala at :237

The likely source of the drift is that the module docstring of dynamic_markers.py at :8-12 is itself stale, and still describes those six languages as future work even though the table below it already covers them.

Repro

docs/layers/DEAD_CODE.md:247-249 reads:

The marker table covers Python and JS/TS. Go, Ruby, PHP, Kotlin, Swift, and Scala runtime loading is not detected yet, so an orphan in those languages carries no dynamic-import cap.

Impact

A reader is told orphans in six languages carry no dynamic-import confidence cap when they do, which understates the layer's coverage and invites someone to rebuild what already exists.

Done looks like

Both texts corrected in the same pass: the DEAD_CODE.md paragraph, and the stale docstring at dynamic_markers.py:8-12 that it was almost certainly written from.

Tests: no test of its own. Fixing the docstring alongside the doc removes the stale source the two were drifting from.

Dominant language
Python
Stars
6.7k
Forks
718
Avg merge
1d 6h
Merged PRs (30d)
424

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.

More from repowise-dev/repowise

All issues in repowise-dev/repowise

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.