Skip to main content

An interface to generalise license compatibility resources

Project description

licomp - License Compatibility

The licomp library provides an interface and code for various license compatibility resources making them accessible programmatically.

Licomp also provides some basic functionality for such resources to easily create a command line program.

The licomp resources below can be accessed as a group by:

Licomp is used with the following compatibility resources: licomp-hermione, licomp-osadl, licomp-proprietary, licomp-reclicense and licomp-dwheeler

Licomp basic concepts

Licomp can be used to help determine if a license is compatible with an outbound license. These compatibility checks needs context which is often missing. We have tried to organise this context and a way to provide this to the tool.

Licomp Context

Usecase

The way you use open source licensed software determines which obligations you trigger. Let's take GCC for example, which is licensed under "GPL-3.0-or-later WITH GCC-exception-3.1". If you use GCC as a compiler then the output of the compiler, typically your program, is covered by the exception and you distribute your program (the GCC Runtime libraries that comes with GCC) under any license of your choosing. But if you use a snippet from GCC, then the copyleft effect is triggered and you need to license your work under the same license (GPLv3).

The following usecases are supported:

  • library - you use the licensed component as a library (creating a combined work, a derivative work)
  • compiler - you use the licensed component as a compiler taking input and producing output (e.g. GCC, Autoconf)
  • snippet - you use a part of the licensed component's source code from another project, book, web page
  • test - you use the licensed component for testing your software (e.g. linter, cyclomatic analysis)

Provisioning

In this context, providioning is the the way you provide the software to your user.

The following types of provisioning are supported:

  • source-code-distribution - you distribute the licensed component, in source code form
  • binary-distribution - you distribute the licensed component, in binary (non source code) form
  • local-use - you used the licensed component locally (e.g. and editor you use to write software)
  • provide-service - you provide a service over a REST api. No source is distributed.
  • provide-webui - you provide a webui which is distributed to the user's browser.

Modification

Used for specifying whether or not you have nodified the licensed component.

The following modifications are supported:

  • modified - you have made modifications to the licensed component
  • unmodified- you have not made any modifications to the licensed component

Licomp reply format

See Licomp Reply Format

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

licomp-0.5.22.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

licomp-0.5.22-py2.py3-none-any.whl (22.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file licomp-0.5.22.tar.gz.

File metadata

  • Download URL: licomp-0.5.22.tar.gz
  • Upload date:
  • Size: 23.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for licomp-0.5.22.tar.gz
Algorithm Hash digest
SHA256 65d353bc7747c91f46b2b280da3fda91630cbb508e7a50aced0117de8c6d8fcc
MD5 51f77ed1f4e00aae6123ab8fe84bc984
BLAKE2b-256 0c6359698fb69a9cf3839aa648ecc0a9f1e0229f4538b36a9113f3ebb2c27ecf

See more details on using hashes here.

File details

Details for the file licomp-0.5.22-py2.py3-none-any.whl.

File metadata

  • Download URL: licomp-0.5.22-py2.py3-none-any.whl
  • Upload date:
  • Size: 22.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for licomp-0.5.22-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4e4d0d1a51999baac13404d18155ec55d90460f972b93b8b38f4f9bdfb334761
MD5 43844296ef0bb6a729809db4980e10fe
BLAKE2b-256 1272aa424e2d6064fb154e07e60845edb7ae86622c6ebba7f513d9ea5aee6286

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page