1# Copyright (c) 2025 The Linux Foundation
2#
3# SPDX-License-Identifier: Apache-2.0
4
5from packaging.version import Version
6
7SPDX_VERSION_2_2 = Version("2.2")
8SPDX_VERSION_2_3 = Version("2.3")
9
10SUPPORTED_SPDX_VERSIONS = [
11    SPDX_VERSION_2_2,
12    SPDX_VERSION_2_3,
13]
14
15
16def parse(version_str):
17    v = Version(version_str)
18    if v not in SUPPORTED_SPDX_VERSIONS:
19        raise ValueError(f"Unsupported SPDX version: {version_str}")
20    return v
21