diff --git a/scapy/__init__.py b/scapy/__init__.py index a0e7094df28b98336e66015c98502aab064ba744..3126c5e412b2621267e67e2dea8c5c88e4781e7a 100644 --- a/scapy/__init__.py +++ b/scapy/__init__.py @@ -80,9 +80,9 @@ def _version(): sha1 = git_archive_id.strip().split()[0] match = re.search(r'tag:(\S+)', git_archive_id) if match: - return match.group(1) + return "git-archive.dev" + match.group(1) elif sha1: - return sha1 + return "git-archive.dev" + sha1 else: return 'unknown.version' diff --git a/test/regression.uts b/test/regression.uts index c706feed4a1583cd0282d953ddee208b6be731af..825e45f0f2d8c4e9ba339c45a192eb2a4ebfc0f6 100644 --- a/test/regression.uts +++ b/test/regression.uts @@ -9146,3 +9146,22 @@ if test_pyx(): plist.pdfdump(filename) assert(os.path.exists(filename)) os.unlink(filename) + +############ +############ ++ Scapy version + += _version() + +import os +version_filename = os.path.join(scapy._SCAPY_PKG_DIR, "VERSION") + +version = scapy._version() +assert(os.path.exists(version_filename)) + +import mock +with mock.patch("scapy._version_from_git_describe") as version_mocked: + version_mocked.side_effect = Exception() + assert(scapy._version() == version) + os.unlink(version_filename) + assert(scapy._version() == "git-archive.dev$Format:%h")