Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.0%) to scientific vocabulary
Keywords from Contributors
Repository
A Python interface to the pkg-config command line tool
Basic Info
- Host: GitHub
- Owner: matze
- License: mit
- Language: Python
- Default Branch: master
- Size: 102 KB
Statistics
- Stars: 62
- Watchers: 6
- Forks: 22
- Open Issues: 11
- Releases: 0
Metadata Files
README.rst
pkgconfig
=========
.. image:: https://github.com/matze/pkgconfig/workflows/CI/badge.svg
:target: https://github.com/matze/pkgconfig/actions/workflows/ci.yml
``pkgconfig`` is a Python module to interface with the ``pkg-config``
command line tool for Python 3.9+.
It can be used to
- find all pkg-config packages ::
>>> packages = pkgconfig.list_all()
- check if a package exists ::
>>> pkgconfig.exists('glib-2.0')
True
- check if a package meets certain version requirements ::
>>> pkgconfig.installed('glib-2.0', '< 2.26')
False
- return the version ::
>>> pkgconfig.modversion('glib-2.0')
'2.56.3'
- query CFLAGS and LDFLAGS ::
>>> pkgconfig.cflags('glib-2.0')
'-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include'
>>> pkgconfig.libs('glib-2.0')
'-lglib-2.0'
- get all variables defined for a package::
>>> pkgconfig.variables('glib-2.0')
{u'exec_prefix': u'/usr'}
- parse the output to build extensions with setup.py ::
>>> d = pkgconfig.parse('glib-2.0 gtk+-2.0')
>>> d['libraries']
[u'gtk+-2.0', u'glib-2.0']
or ::
>>> ext = Extension('foo', ['foo.c'])
>>> # sets extension attributes as needed
>>> pkgconfig.configure_extension(ext, 'glib-2.0 gtk+-2.0')
The ``pkgconfig.parse`` function returns a dictonary of lists.
The lists returned are accurate representations of the equivalent
``pkg-config`` call's result, both in content and order.
If ``pkg-config`` is not on the path, raises ``EnvironmentError``.
The ``pkgconfig`` module is licensed under the MIT license.
Changelog
---------
Version 1.6.0
~~~~~~~~~~~~~
- Drop support for Python < 3.9, support 3.9, 3.10, 3.11, 3.12.
- Switch CI from travis to github actions, test on all supported Python versions.
- Use src/ layout for project, fixes #36. Also move tests and test data to tests/.
- Replace deprecated distutils by setuptools to make tests work on py312, fixes #64.
- Fix configure_extension for empty cflags or libs.
Version 1.5.5
~~~~~~~~~~~~~
- Make tests more robust by sorting
Version 1.5.4
~~~~~~~~~~~~~
- Adjust pyproject.toml and drop Python 2 support
Version 1.5.3
~~~~~~~~~~~~~
- Add ``configure_extension`` API
Version 1.5.2
~~~~~~~~~~~~~
- Update poetry dep
- Improve CI
Version 1.5.0
~~~~~~~~~~~~~
- Use poetry instead of setuptools directly
- Fix #42: raise exception if package is missing
- Fix version parsing for openssl-like version numbers, fixes #32
- Fix #31: expose --modversion
- Fix #30: strip whitespace from variable names
Version 1.4.0
~~~~~~~~~~~~~
- Add boolean ``static`` keyword to output private libraries as well
- Raise original ``OSError`` as well
Version 1.3.1
~~~~~~~~~~~~~
- Fix compatibility problems with Python 2.6
Version 1.3.0
~~~~~~~~~~~~~
- Add variables() API to query defined variables
- Disable Python 3.2 and enable Python 3.5 and 3.6 tests
- Fix #16: handle spaces of values in .pc files correctly
Version 1.2.1 and 1.2.2
~~~~~~~~~~~~~~~~~~~~~~~
Bug fix releases released on December 1st and 2nd 2016.
- Include the ``data`` folder in the distribution in order to run tests
- Improve the tests
Version 1.2.0
~~~~~~~~~~~~~
Released on November 30th 2016.
- Potential break: switch from result set to list
- Expose --list-all query
- Added support for PKG_CONFIG environment variable
Version 1.1.0
~~~~~~~~~~~~~
Released on November 6th 2013.
- Multiple packages can now be parsed with a single call to ``.parse``.
Version 1.0.0
~~~~~~~~~~~~~
First release on September 8th 2013.
Owner
- Name: Matthias Vogelgesang
- Login: matze
- Kind: user
- Location: Karlsruhe
- Company: Cinemo
- Website: https://bloerg.net
- Repositories: 49
- Profile: https://github.com/matze
GitHub Events
Total
- Issues event: 1
- Watch event: 2
- Pull request event: 1
- Fork event: 1
Last Year
- Issues event: 1
- Watch event: 2
- Pull request event: 1
- Fork event: 1
Committers
Last synced: about 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Matthias Vogelgesang | m****g@g****m | 64 |
| Thomas Waldmann | tw@w****e | 22 |
| Eric N. Vander Weele | e****w@g****m | 7 |
| James Tocknell | a****r@g****m | 5 |
| François Bissey | f****y@c****z | 3 |
| Christian Clauss | c****s@m****m | 3 |
| Antony Lee | a****e@g****m | 3 |
| Mher Kazandjian | m****n@g****m | 2 |
| Julian Rüth | j****h@f****g | 2 |
| ujjwalsh | u****p@g****m | 1 |
| ossdev07 | 3****7 | 1 |
| Nikita Chepanov | n****a@c****m | 1 |
| Mario Corchero | m****m@b****t | 1 |
| David Seifert | s****p@g****g | 1 |
| Ryan Leckey | r****y@c****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 12 months ago
All Time
- Total issues: 38
- Total pull requests: 39
- Average time to close issues: 5 months
- Average time to close pull requests: 10 days
- Total issue authors: 22
- Total pull request authors: 16
- Average comments per issue: 2.89
- Average comments per pull request: 1.95
- Merged pull requests: 37
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 6
- Pull requests: 6
- Average time to close issues: 10 days
- Average time to close pull requests: 5 days
- Issue authors: 2
- Pull request authors: 1
- Average comments per issue: 1.0
- Average comments per pull request: 2.17
- Merged pull requests: 6
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- ThomasWaldmann (11)
- ericvw (4)
- kiwifb (4)
- tanimislam (1)
- FRidh (1)
- mweinelt (1)
- karolyi (1)
- nchepanov (1)
- seckwei (1)
- Youw (1)
- dirteat (1)
- Birger0 (1)
- scarabeusiv (1)
- thebaptiste (1)
- fsteinel (1)
Pull Request Authors
- ThomasWaldmann (15)
- ericvw (5)
- aragilar (5)
- kiwifb (3)
- anntzer (3)
- mherkazandjian (2)
- ossdev07 (1)
- SoapGentoo (1)
- mehcode (1)
- nchepanov (1)
- CL-Jeremy (1)
- scarlehoff (1)
- saraedum (1)
- matze (1)
- cclauss (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 21
-
Total downloads:
- pypi 2,355,928 last-month
- Total docker downloads: 28,893,412
-
Total dependent packages: 35
(may contain duplicates) -
Total dependent repositories: 710
(may contain duplicates) - Total versions: 67
- Total maintainers: 3
pypi.org: pkgconfig
Interface Python with pkg-config
- Homepage: https://github.com/matze/pkgconfig
- Documentation: https://pkgconfig.readthedocs.io/
- License: MIT
-
Latest release: 1.5.5
published almost 5 years ago
Rankings
Maintainers (1)
proxy.golang.org: github.com/matze/pkgconfig
- Documentation: https://pkg.go.dev/github.com/matze/pkgconfig#section-documentation
- License: mit
-
Latest release: v1.5.5
published almost 5 years ago
Rankings
alpine-v3.18: py3-pkgconfig-pyc
Precompiled Python bytecode for py3-pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r3
published about 3 years ago
Rankings
Maintainers (1)
alpine-v3.18: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r3
published about 3 years ago
Rankings
Maintainers (1)
alpine-v3.14: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.2-r1
published over 5 years ago
Rankings
Maintainers (1)
spack.io: py-pkgconfig
Interface Python with pkg-config.
- Homepage: https://github.com/matze/pkgconfig
- License: []
-
Latest release: 1.5.5
published over 4 years ago
Rankings
Maintainers (1)
alpine-v3.15: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r0
published almost 5 years ago
Rankings
Maintainers (1)
alpine-v3.16: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r1
published over 4 years ago
Rankings
Maintainers (1)
alpine-edge: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-edge: py3-pkgconfig-pyc
Precompiled Python bytecode for py3-pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-v3.17: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r1
published over 4 years ago
Rankings
Maintainers (1)
conda-forge.org: pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5
published over 4 years ago
Rankings
anaconda.org: pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5
published over 4 years ago
Rankings
alpine-v3.21: py3-pkgconfig-pyc
Precompiled Python bytecode for py3-pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-v3.22: py3-pkgconfig-pyc
Precompiled Python bytecode for py3-pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-v3.19: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r3
published about 3 years ago
Rankings
Maintainers (1)
alpine-v3.20: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-v3.20: py3-pkgconfig-pyc
Precompiled Python bytecode for py3-pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-v3.22: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
alpine-v3.19: py3-pkgconfig-pyc
Precompiled Python bytecode for py3-pkgconfig
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r3
published about 3 years ago
Rankings
Maintainers (1)
alpine-v3.21: py3-pkgconfig
Python interface for the pkg-config command line tool
- Homepage: https://github.com/matze/pkgconfig
- License: MIT
-
Latest release: 1.5.5-r4
published over 2 years ago
Rankings
Maintainers (1)
Dependencies
- pytest ^3.8.2 develop
- python ^3.3
- actions/checkout v4 composite
- actions/setup-python v5 composite