microsoft / microsoft/kiota

Name mangling of acronyms

Open
#4,297 20 comments 0 reactions 0 assignees View on GitHub
enhancement help wanted
Dominant language
C#
Stars
3.8k
Forks
333
Avg merge
16h 29m
Merged PRs (30d)
116

Description

The current algorithm for name mangling is(incorrectly?) considering subsequent uppercase characters as separate terms, e.g.:

`externalID` -> `external_i_d` as discovered [here](https://github.com/kubeflow/model-registry/pull/29/files).

This is a pretty widely adopted pattern in the presence of acronyms.
I understand that its an edge case but I think that we should improve the algorithm to handle those use-cases:

`externalID` -> `external_id`

the tricky part is in the presence of suffixes(although completely deterministic) where we should make sure this conversion is applied:

`IDExternal` -> `id_external`

another possible source of issues is single-character terms:

`MeADeveloper` -> `me_a_developer`

I hope I captured all of the invariants, let me know if I'm missing something 🙏

Contributor guide

Open the contributing guide

Research direction

The issue names no source file, test, or entry point. Locate Kiota’s name-mangling implementation and its existing tests, then use the examples in the issue as cases; done means acronym, suffix, and single-character terms produce external_id, id_external, and me_a_developer respectively.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.