feat: add package registry and maintainability check (#1400)#1403
feat: add package registry and maintainability check (#1400)#1403RuchitAgrawal wants to merge 3 commits into
Conversation
Signed-off-by: ruchitagrawal <rragrawal16@gmail.com>
|
@RuchitAgrawal Thanks for the PR! Could you suggest a few packages that would fail this check? That would help us identify good candidates to include in integration tests. |
|
@RuchitAgrawal Looks like the integration tests are failing. You can search for "case failed" in the log to see which test is failing. |
Signed-off-by: ruchitagrawal <rragrawal16@gmail.com>
@behnazh-w ,Here are a few packages that would fail across the check evaluation:
|
Found the issue and pushed a fix. |
Summary
Adds a new check
mcn_registry_maintainability_1that validates whether a package exists on its public registry and is actively maintained.Description of changes
The check uses three signals when available:
find_publish_timestamp()to confirm the package exists and check how many days have passed since the last release. Exceeding the threshold fails the check.yankedflag for PyPI packages and thedeprecated fieldfor npm packages from existing registry JSON responses. A yanked or deprecated package always fails, regardless of release age.get_repo_data()to check if the repo is archived and how recently code was pushed. An archived repo always fails.Results include remediation guidance and links to the registry page and source repository. The inactivity threshold is configurable via
defaults.iniunderregistry_maintainability(default: 365 days).Related issues
Closes #1400
Checklist
verifiedlabel should appear next to all of your commits on GitHub.