Update Linguist languages.yml to latest upstream#1402
Update Linguist languages.yml to latest upstream#1402github-actions[bot] wants to merge 1 commit into
Conversation
Greptile SummaryThis automated PR syncs
Confidence Score: 4/5Safe to merge; it is a pure data sync with no application logic changes. The only functional concern is that Pro*C and pkg-config now both claim the config/languages.yml — the new .pc extension entries for Pro*C and pkg-config warrant a quick check against how Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[entity path e.g. foo.pc] --> B{detect_from_filename?}
B -->|Makefile.pc| C[Language: Makefile]
B -->|README.pc| D[Language: Text]
B -->|no match| E{detect_from_extension?}
E -->|.baml| F[Language: BAML]
E -->|.pc| G{extension_map lookup}
G -->|Pro*C written first| H[overwritten by pkg-config]
H --> I[Language: pkg-config]
G -->|Pro*C files| J[also resolved as pkg-config]
E -->|.pc.in| K[Language: pkg-config]
Prompt To Fix All With AIFix the following 1 code review issue. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 1
config/languages.yml:6003-6013
**`.pc` extension collision between Pro*C and pkg-config**
Both `Pro*C` (added here) and `pkg-config` (added later in this same diff) register `.pc` as an extension. `LanguageUtils#build_lookup` builds a flat hash where the last writer wins, so one of these will silently shadow the other for any `.pc` file not matched by filename. Since `pkg-config` appears later in the file (lowercase sorts after uppercase), it will consistently win — meaning `.pc` files intended as Pro*C will be misidentified as `pkg-config`. This is a pre-existing limitation of the single-map approach, but this PR is the first to introduce two languages sharing the same extension.
Reviews (1): Last reviewed commit: "Update Linguist languages.yml to latest ..." | Re-trigger Greptile |
| tm_scope: source.prisma | ||
| ace_mode: prisma | ||
| language_id: 499933428 | ||
| Pro*C: | ||
| fs_name: ProC | ||
| color: "#bb8368" | ||
| type: programming | ||
| extensions: | ||
| - ".pc" | ||
| tm_scope: source.c | ||
| ace_mode: c_cpp |
There was a problem hiding this comment.
.pc extension collision between Pro*C and pkg-config
Both Pro*C (added here) and pkg-config (added later in this same diff) register .pc as an extension. LanguageUtils#build_lookup builds a flat hash where the last writer wins, so one of these will silently shadow the other for any .pc file not matched by filename. Since pkg-config appears later in the file (lowercase sorts after uppercase), it will consistently win — meaning .pc files intended as Pro*C will be misidentified as pkg-config. This is a pre-existing limitation of the single-map approach, but this PR is the first to introduce two languages sharing the same extension.
Prompt To Fix With AI
This is a comment left during a code review.
Path: config/languages.yml
Line: 6003-6013
Comment:
**`.pc` extension collision between Pro*C and pkg-config**
Both `Pro*C` (added here) and `pkg-config` (added later in this same diff) register `.pc` as an extension. `LanguageUtils#build_lookup` builds a flat hash where the last writer wins, so one of these will silently shadow the other for any `.pc` file not matched by filename. Since `pkg-config` appears later in the file (lowercase sorts after uppercase), it will consistently win — meaning `.pc` files intended as Pro*C will be misidentified as `pkg-config`. This is a pre-existing limitation of the single-map approach, but this PR is the first to introduce two languages sharing the same extension.
How can I resolve this? If you propose a fix, please make it concise.e2b5440 to
41d4ccc
Compare
197d332 to
c41d44e
Compare
c41d44e to
953f2f0
Compare
Summary
config/languages.ymlto the latest version from github-linguist/linguistThis PR was automatically created by the Update Linguist workflow.