diff --git a/tests/samples/codefiles/go.mod b/tests/samples/codefiles/go.mod new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_languages.py b/tests/test_languages.py index c94e317..b274386 100644 --- a/tests/test_languages.py +++ b/tests/test_languages.py @@ -274,3 +274,9 @@ class LanguagesTestCase(utils.TestCase): expected_language='JavaScript', entity='javascript_module.mjs', ) + + def test_go_mod_detected(self): + self.shared( + expected_language='Go', + entity='go.mod', + ) diff --git a/wakatime/stats.py b/wakatime/stats.py index 3b36e0d..8abf5df 100644 --- a/wakatime/stats.py +++ b/wakatime/stats.py @@ -169,6 +169,10 @@ def get_language_from_extension(file_name): """ filepart, extension = os.path.splitext(file_name) + pathpart, filename = os.path.split(file_name) + + if filename == 'go.mod': + return 'Go' if re.match(r'\.h.*$', extension, re.IGNORECASE) or re.match(r'\.c.*$', extension, re.IGNORECASE):