Skip to content

fix: normalize GitHub language names to gtrending params#133

Open
fuleinist wants to merge 1 commit intohedyhli:mainfrom
fuleinist:fix/csharp-language-normalization
Open

fix: normalize GitHub language names to gtrending params#133
fuleinist wants to merge 1 commit intohedyhli:mainfrom
fuleinist:fix/csharp-language-normalization

Conversation

@fuleinist
Copy link
Copy Markdown

Fix: csharp language fails with -d filter (ValueError)

Problem: Using -l csharp -d today raises ValueError: Invalid language argument: csharp, while -l csharp (without -d) works fine.

Root cause: When -d (date_range) is set, starcli calls gtrending.fetch_repos() which validates language against its internal param list. gtrending uses c# but GitHub uses csharp — different identifiers for the same language.

Solution: Add a GITHUB_TO_GTRENDING_LANG mapping for known mismatches (csharp → c#, cpp → c++) and a _normalize_lang_for_gtrending() helper. Both gtrending.fetch_repos() calls in search_github_trending() now normalize the language first.

Files changed: starcli/search.py (+17 lines)

Testing: starcli -l csharp -d today should no longer raise ValueError

Fixes #111

When using -d (date_range), starcli calls gtrending.fetch_repos()
which expects language params like 'c#' but GitHub uses 'csharp'.
This caused a ValueError for languages whose GitHub identifier differs
from gtrending's expected param (e.g. csharp, cpp).

Add a GITHUB_TO_GTRENDING_LANG mapping for known mismatches and a
_normalize_lang_for_gtrending() helper. Both gtrending.fetch_repos()
calls in search_github_trending() now normalize the language first.

Fixes hedyhli#111
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Error when trying to filter language to 'csharp' when also using '-d' filter

1 participant