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.6.tar.gz (22.1 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.6-py2.py3-none-any.whl (21.6 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

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

File hashes

Hashes for licomp-0.5.6.tar.gz
Algorithm Hash digest
SHA256 c95f590217bb8635acb046629c4f790a88d84020795c17870245a9ff0e400b0d
MD5 1fc66df0c51ec7032c81e8040e35a651
BLAKE2b-256 d24686b784a0d8c0edb25fbc1aa8fcb56cefcc2fcdb52c6516a0c3f71d73b356

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for licomp-0.5.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6678b91ba87de3d96b5675c15ab7c3bf9ea80505c70531c3d82db265d78d0c26
MD5 26a6aacd8e11d5c3ecaa2c274048b8f6
BLAKE2b-256 fc711335eae937df7d399a207a13c84c5669880ae5f931134b1550aac5b20118

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