Name mangling of acronyms
- 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
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