Following system colour scheme Selected dark colour scheme Selected light colour scheme

Python 개선 제안 한국어 번역

부록: 라이선스 분류자를 SPDX 식별자로 매핑하기

대부분의 단일 라이선스 분류자(즉, 아래에 언급되지 않은 모든 분류자)는 하나의 유효한 SPDX 라이선스 식별자로 매핑되므로, 도구가 패키지를 분석하고 감사할 때 사용할 수 있도록 해당 분류자에 대응하는 SPDX 라이선스 식별자를 추론할 수 있으며, PEP 639 specification에 따라 license 키 또는 License-Expression 필드를 반자동으로 채우는 메커니즘도 제공합니다.

일부 레거시 라이선스 분류자는 특정 라이선스를 지정하려고 하지만 특정 버전이나 변형을 지정하지 않으므로, 해당 라이선스의 조건, 호환성 및 수용 가능성에 관해 critical ambiguity가 발생합니다. 이러한 분류자 중 하나가 사용될 때 사용자가 명시적으로 동의하는 조치를 취하지 않았다면, 도구는 License-Expression을 자동으로 추론하려고 시도해서는 안 됩니다(MUST NOT).

  • License :: OSI Approved :: Academic Free License (AFL)
  • License :: OSI Approved :: Apache Software License
  • License :: OSI Approved :: Apple Public Source License
  • License :: OSI Approved :: Artistic License
  • License :: OSI Approved :: BSD License
  • License :: OSI Approved :: GNU Affero General Public License v3
  • License :: OSI Approved :: GNU Free Documentation License (FDL)
  • License :: OSI Approved :: GNU General Public License (GPL)
  • License :: OSI Approved :: GNU General Public License v2 (GPLv2)
  • License :: OSI Approved :: GNU General Public License v3 (GPLv3)
  • License :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2)
  • License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)
  • License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
  • License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)

이러한 분류자를 가능한 구체적 식별자로 매핑한 포괄적인 매핑은 Dustin Ingram이 작성했으며, 도구는 사용자가 프로젝트에 사용할 의도였던 라이선스 식별자를 명시적으로 선택하도록 요청할 때 제공할 식별자 선택 옵션의 참조로 이를 사용할 수 있습니다(MAY).

Note

AGPLv3, GPLv2, GPLv3 및 LGPLv3의 “or later” 변형인 몇 가지 추가 분류자도 앞서 언급한 매핑에 나열되어 있지만, 각각 해당 라이선스에 명확하게 매핑되므로 여기에는 나열하지 않습니다. 그러나 LGPLv2는 해당 라이선스의 서로 다른 v2.0 또는 v2.1 변형 중 하나를 모호하게 가리킬 수 있으므로 위에 포함되어 있습니다.

또한 다양한 특수 사례에 대해서는 다음 매핑을 이 사양의 목적상 표준적이고 규범적인 것으로 간주합니다.

  • License :: Public Domain 분류자는 일반적인 License-Expression: LicenseRef-Public-Domain으로 매핑할 수 있습니다(MAY). 도구가 그렇게 하는 경우, 더 명시적이고 법적으로 이식 가능한 라이선스 식별자(예: CC0 1.0 licenseCC0-1.0, UnlicenseUnlicense 또는 MIT licenseMIT)를 사용하도록 권장하는 정보성 경고를 발행해야 합니다(SHOULD). 이는 “public domain”이라는 용어에 연관된 의미가 관련된 특정 법적 관할권에 철저히 의존하며, 그중 일부 관할권에는 해당 개념이 전혀 없기 때문입니다. 또는 도구는 이러한 분류자를 모호한 것으로 취급할 수 있습니다(MAY).
  • 일반적이며 때로는 모호한 분류자:
    • License :: Free For Educational Use
    • License :: Free For Home Use
    • License :: Free for non-commercial use
    • License :: Freely Distributable
    • License :: Free To Use But Restricted
    • License :: Freeware
    • License :: Other/Proprietary License

    이는 일반적인 License-Expression: LicenseRef-Proprietary로 매핑될 수 있으나, 도구가 그렇게 매핑하는 경우 반드시 명확하고 유익한 경고를 표시해야 합니다. 대안적으로, 도구는 이러한 분류자를 모호한 것으로 취급하도록 선택할 수 있습니다.

  • 일반적이고 모호한 분류자인 License :: OSI ApprovedLicense :: DFSG approved는 어떠한 라이선스 표현식에도 매핑되지 않으므로, 도구는 이를 모호한 것으로 취급해야 하며, 그렇지 않다면 반드시 무시해야 합니다.
  • License :: GUST Font License 1.0License :: GUST Font License 2006-09-30 분류자는 SPDX 라이선스 식별자에 대한 매핑이 없으며, 2022년 7월 9일 기준으로 이를 사용하는 PyPI 패키지도 없습니다.

여러 라이선스 분류자가 함께 사용되는 경우, 이들 간의 관계는 모호하며, 일반적으로 모든 라이선스가 적용되는지 아니면 라이선스 중에서 선택이 가능한지를 판단할 수 없습니다. 이 경우, 하나의 라이선스 분류자가 다른 분류자의 상위 항목인 경우—즉 하위 분류자가 상위 분류자의 ::로 구분된 모든 구성 요소를 포함하는 경우—가 아니라면, 도구는 라이선스 표현식을 자동으로 추론해서는 안 됩니다. 이 경우 도구는 상위 분류자를 무시할 수 있지만, 그렇게 할 때는 유익한 경고를 표시해야 합니다.