# https://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files
[metadata]
name = portpicker
version = 1.6.0b1
maintainer = Google LLC
maintainer_email = greg@krypto.org
license = Apache 2.0
license_files = LICENSE
description = A library to choose unique available network ports.
url = https://github.com/google/python_portpicker
long_description = Portpicker provides an API to find and return an available
    network port for an application to bind to.  Ideally suited for use from
    unittests or for test harnesses that launch local servers.

    It also contains an optional portserver that can be used to coordinate
    allocation of network ports on a single build/test farm host across all
    processes willing to use a port server aware port picker library such as
    this one.
classifiers =
    Development Status :: 5 - Production/Stable
    License :: OSI Approved :: Apache Software License
    Intended Audience :: Developers
    Programming Language :: Python
    Programming Language :: Python :: 3
    Programming Language :: Python :: 3.7
    Programming Language :: Python :: 3.8
    Programming Language :: Python :: 3.9
    Programming Language :: Python :: 3.10
    Programming Language :: Python :: 3.11
    Programming Language :: Python :: Implementation :: CPython
    Programming Language :: Python :: Implementation :: PyPy
platforms = POSIX, Windows
requires =

[options]
install_requires = psutil
python_requires = >= 3.6
package_dir=
    =src
py_modules = portpicker
scripts = src/portserver.py
