Source code analysis is a complicated process involving support for different language versions and features.
The process consists of
integrating with GitHub, Bitbucket, GitLab and Gerrit (on-prem and cloud APIs) are supported,
source code syntax handling,
metadata and package file analysis,
cross referencing and dependency analysis,
Git history analysis,
duplicate (alias copy paste) detection,
model level comparison and
Certain phases in the process require special language specific tools and plugins. The programming languages do evolve at different speeds. This causes challenges for the language level handlers.
Duplicate detection does not support TypeScript language.
Repositories with special characters in repository name do cause trouble in certain cases.