Skip to main content

What is SIP?

One of the features of Python that makes it so powerful is the ability to take existing libraries, written in C or C++, and make them available as Python extension modules. Such extension modules are often called bindings for the library.

SIP is a collection of tools that makes it very easy to create Python bindings for C and C++ libraries. It was originally developed in 1998 to create PyQt, the Python bindings for the Qt toolkit, but can be used to create bindings for any C or C++ library. For example it is also used to generate wxPython, the Python bindings for wxWidgets.

SIP comprises a set of build tools and a sip module. The build tools process a set of specification files and generates C or C++ code which is then compiled to create the bindings extension module. Several extension modules may be installed in the same Python package. Extension modules can be built so that they are are independent of the version of Python being used. In other words a wheel created from them can be installed with any version of Python starting with v3.5.

The specification files contain a description of the interface of the C or C++ library, i.e. the classes, methods, functions and variables. The format of a specification file is almost identical to a C or C++ header file, so much so that the easiest way of creating a specification file is to edit a copy of the corresponding header file.

The sip module provides support functions to the automatically generated code. The sip module is installed as part of the same Python package as the generated extension modules. Unlike the extension modules the sip module is specific to a particular version of Python (e.g. v3.5, v3.6, v3.7, v3.8).

SIP makes it easy to exploit existing C or C++ libraries in a productive interpretive programming environment. SIP also makes it easy to take a Python application (maybe a prototype) and selectively implement parts of the application (maybe for performance reasons) in C or C++.

Author

SIP is copyright (c) Riverbank Computing Limited. Its homepage is https://www.riverbankcomputing.com/software/sip/.

Support may be obtained from the PyQt mailing list at https://www.riverbankcomputing.com/mailman/listinfo/pyqt/.

License

SIP is released under the GPL v2, GPL v3 licenses, and under a license similar to the BSD license.

Installation

SIP can be installed from PyPI:

pip install sip

Documentation

The documentation for the latest release can be found here.

Release files for sip 6.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sip 6.2.0
File Size Uploaded
sip-6.2.0.tar.gz 1.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for sip 6.2.0
File
sip-6.2.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
sip-6.2.0-cp39-cp39-manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
sip-6.2.0-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
sip-6.2.0-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
sip-6.2.0-cp38-cp38-manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
sip-6.2.0-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
sip-6.2.0-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
sip-6.2.0-cp37-cp37m-manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details
sip-6.2.0-cp37-cp37m-macosx_10_9_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64 Details
sip-6.2.0-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
sip-6.2.0-cp36-cp36m-manylinux2014_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64 Details
sip-6.2.0-cp36-cp36m-macosx_10_6_intel.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.6+ Intel (x86-64, i386) Details

Total release size:9.6 MB

Release files / sip-6.2.0.tar.gz

Download URL sip-6.2.0.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
34d2270b4ed8d7f8e55cc4ba821d718ee40d9bb2449c6b5cf8a10139d5c121ac
BLAKE2b-256 checksum
How to use checksums
983af1b69503d6129ba3b06cf066740f5188aa20bd32cfd2e788ca58c073b2ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp39-cp39-win_amd64.whl

Download URL sip-6.2.0-cp39-cp39-win_amd64.whl
Size 537.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
82cca67e84a660e4cd61a06a759b7685d8c341a5300077b6ccc7fc724c3ac134
BLAKE2b-256 checksum
How to use checksums
2f104183a06f1ac5ffdd10fbcb181afb143ef50409a3394fc273a18d325625b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp39-cp39-manylinux2014_x86_64.whl

Download URL sip-6.2.0-cp39-cp39-manylinux2014_x86_64.whl
Size 998.7 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
faa5a5432f5cb9b1798eae1ff33f543ea5517a3e62ea12eed7995a5b3855ef8f
BLAKE2b-256 checksum
How to use checksums
0d4f0b4d37ae732401c6815088abb95b2695320fe9b58590a9248623bbec7775
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp39-cp39-macosx_10_9_x86_64.whl

Download URL sip-6.2.0-cp39-cp39-macosx_10_9_x86_64.whl
Size 531.7 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
796cdc7d78ab03012130371fa4e9673c820a75e05ba4fa7e5ff3d2d2d013140a
BLAKE2b-256 checksum
How to use checksums
c7371b8e7f871198da4477572e3e8f81671c55ba71b2047026a2ca0095a5a289
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp38-cp38-win_amd64.whl

Download URL sip-6.2.0-cp38-cp38-win_amd64.whl
Size 537.7 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
aa6b57e53518db227d52a5a2813b1abad594c677d96051a217b1ffb6f8dc3e73
BLAKE2b-256 checksum
How to use checksums
4754ed6198c9f0db006c6a115a4b80d6f23e4eb604d6095c7162749074724951
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp38-cp38-manylinux2014_x86_64.whl

Download URL sip-6.2.0-cp38-cp38-manylinux2014_x86_64.whl
Size 999.0 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
ff998946cc9f0726013fae57c222c9ec90bce1fc3b605e8a9c073532b5db930b
BLAKE2b-256 checksum
How to use checksums
43b0d67484603795f7d5ba84f22f0148e560489dd08017b9bef50face2a5048a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp38-cp38-macosx_10_9_x86_64.whl

Download URL sip-6.2.0-cp38-cp38-macosx_10_9_x86_64.whl
Size 531.7 kB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
4fc22f969cd8df55a6b3ba762df28b9ad6a2644a76aae051b5ede3c02fb8f9b1
BLAKE2b-256 checksum
How to use checksums
9c5e3e9cd158378ce8c99ad8906493ec2b66b320291fd9f7aa0be17a019191d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp37-cp37m-win_amd64.whl

Download URL sip-6.2.0-cp37-cp37m-win_amd64.whl
Size 537.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
3c1cdfca88d99e3b8ae731809c0dced4f0ccb2be4fe008665c787ee2ef4e5698
BLAKE2b-256 checksum
How to use checksums
3e7b7e0f0fc269815cad5b76bfc75838be5ace238d0dd1b4e81b1279e958e433
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp37-cp37m-manylinux2014_x86_64.whl

Download URL sip-6.2.0-cp37-cp37m-manylinux2014_x86_64.whl
Size 999.2 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c467bd0be6843ea92c667c480f184796b1fcf5e155ab04c37a5925c11487441a
BLAKE2b-256 checksum
How to use checksums
395d7af27b231b6c2d229f12b10c47bb102f2c2a2894de41a6b9f0fb020a22d1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL sip-6.2.0-cp37-cp37m-macosx_10_9_x86_64.whl
Size 531.5 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
9eb5534a1aa13a26c5b378af7685cbd701c68ebfd43fecc99e6e7c2b2154900d
BLAKE2b-256 checksum
How to use checksums
b4c7973c6a6ff918831c76a6d96a2959cd433e76e2e1018ed14ce551a96c906e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp36-cp36m-win_amd64.whl

Download URL sip-6.2.0-cp36-cp36m-win_amd64.whl
Size 537.7 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
f733c1754fe14954fde58d39d98d9e3d70fbf742d4abae6073cfe2b3432284e7
BLAKE2b-256 checksum
How to use checksums
b7f2e1106c00bc0262dca5d091b84f893b20ac8d9e8681eb25613930b988eb0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp36-cp36m-manylinux2014_x86_64.whl

Download URL sip-6.2.0-cp36-cp36m-manylinux2014_x86_64.whl
Size 998.2 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
75f6d11652e41b2c714bdaee09a123e8e2606cb8e3d6181dad7b83a58277cc41
BLAKE2b-256 checksum
How to use checksums
e2f4f88c99ddc28e6e0530f9758e99bbf01120b61c4d9b2b34dc43a8a7e2938a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release files / sip-6.2.0-cp36-cp36m-macosx_10_6_intel.whl

Download URL sip-6.2.0-cp36-cp36m-macosx_10_6_intel.whl
Size 713.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.6+ Intel (x86-64, i386)
SHA-256 checksum
How to use checksums
493d1779a61887341a82989733749b2b1d34c1c751dde081bd913c28cd6deccc
BLAKE2b-256 checksum
How to use checksums
2051fc80a8db6bcccbc6538411c3c0c8a43f74423f070e2072802bd6bb969f6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

Release history Release notifications | RSS feed

6.16.1

2 release files

6.15.3

2 release files

6.15.1

2 release files

6.14.0

2 release files

6.13.1

2 release files

6.11.1

2 release files

6.11.0

2 release files

6.9.1

2 release files

6.9.0

2 release files

6.8.6

2 release files

6.8.5

2 release files

6.8.4

2 release files

6.8.3

2 release files

6.8.2

2 release files

6.8.1

2 release files

6.8.0

2 release files

6.7.12

5 release files

6.7.10

4 release files

6.7.9

5 release files

6.7.8

5 release files

6.7.7

5 release files

6.7.6

5 release files

6.7.5

4 release files

6.7.4

4 release files

6.7.3

4 release files

6.7.2

4 release files

6.7.1

4 release files

6.7.0

4 release files

6.6.2

4 release files

6.6.1

5 release files

6.6.0

5 release files

6.5.1

5 release files

6.5.0

4 release files

6.4.0

4 release files

6.3.1

5 release files

6.3.0

5 release files

This release

6.2.0 This release

13 release files

6.1.1

13 release files

6.1.0

13 release files

6.0.3

17 release files

6.0.2

17 release files

5.5.0

21 release files

5.4.0

21 release files

5.3.0

17 release files

5.2.0

17 release files

5.1.1

17 release files

5.0.1

17 release files

4.19.6

8 release files

4.19.2

8 release files

4.19.1

8 release files

4.19

8 release files

4.18.1

4 release files

4.18

4 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page