Skip to content

Commit

Permalink
Moved the metadata into setup.cfg
Browse files Browse the repository at this point in the history
  • Loading branch information
KOLANICH committed Jun 19, 2020
1 parent e23fe98 commit 66ecbed
Show file tree
Hide file tree
Showing 5 changed files with 53 additions and 100 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# Generated version file
constraint/version.py

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
Expand Down
5 changes: 3 additions & 2 deletions constraint/version.py → constraint/metadata.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
from .version import __version__

__author__ = "Gustavo Niemeyer"
__copyright__ = "Copyright (c) 2005-2018 - Gustavo Niemeyer <gustavo@niemeyer.net>"
__credits__ = ["Sebastien Celles"]
__license__ = ""
__version__ = "1.4.0"
__email__ = "gustavo@niemeyer.net"
__status__ = "Development"
__url__ = "https://github.com/python-constraint/python-constraint"
__url__ = "https://github.com/python-constraint/python-constraint"
7 changes: 7 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[build-system]
requires = ["setuptools>=41", "wheel", "setuptools_scm[toml]>=3.4.3"]
build-backend = "setuptools.build_meta"

[tool.setuptools_scm]
write_to_template = "__version__ = \"{version}\"\n"
write_to = "constraint/version.py"
37 changes: 37 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -1,3 +1,40 @@
[metadata]
name = python-constraint
author = Gustavo Niemeyer
author_email = gustavo@niemeyer.net
license = BSD-2-Clause
description = python-constraint is a module implementing support for handling CSPs (Constraint Solving Problems) over finite domain
keywords =
csp
constraint
solving
problems
problem
solver
url = https://github.com/python-constraint/python-constraint
long_description = file: README.rst
classifiers =
Development Status :: 3 - Alpha
Environment :: Console
Intended Audience :: Science/Research
Operating System :: OS Independent
Programming Language :: Cython
Programming Language :: Python
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3.4
Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6
Topic :: Scientific/Engineering
License :: OSI Approved :: BSD License

[options]
packages = find:
install_requires =

[options.extras_require]
dev = check-manifest; nose
test = coverage; nose

[bdist_wheel]
universal = 1

Expand Down
101 changes: 3 additions & 98 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,102 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-

from setuptools import setup, find_packages # Always prefer setuptools over distutils
from codecs import open # To use a consistent encoding
from os import path
import io
from setuptools import setup

NAME = "python-constraint"
filename = "%s/version.py" % "constraint"
with open(filename) as f:
exec(f.read())

here = path.abspath(path.dirname(__file__))


def readme():
filename = path.join(here, "README.rst")
with io.open(filename, "rt", encoding="UTF-8") as f:
return f.read()


setup(
name=NAME,
# Versions should comply with PEP440. For a discussion on single-sourcing
# the version across setup.py and the project code, see
# https://packaging.python.org/en/latest/development.html#single-sourcing-the-version
# version='0.0.1',
version=__version__,
description="python-constraint is a module implementing support "
"for handling CSPs (Constraint Solving Problems) over finite domain",
long_description=readme(),
# The project's main homepage.
url=__url__,
# Author details
author=__author__,
author_email=__email__,
# Choose your license
license=__license__,
# See https://pypi.python.org/pypi?%3Aaction=list_classifiers
classifiers=[
# How mature is this project? Common values are
# 3 - Alpha
# 4 - Beta
# 5 - Production/Stable
"Development Status :: 3 - Alpha",
# Indicate who your project is intended for
"Environment :: Console",
# 'Topic :: Software Development :: Build Tools',
"Intended Audience :: Science/Research",
"Operating System :: OS Independent",
# Specify the Python versions you support here. In particular, ensure
# that you indicate whether you support Python 2, Python 3 or both.
"Programming Language :: Cython",
"Programming Language :: Python",
# 'Programming Language :: Python :: 2',
# 'Programming Language :: Python :: 2.6',
"Programming Language :: Python :: 2.7",
# 'Programming Language :: Python :: 3',
# 'Programming Language :: Python :: 3.2',
# "Programming Language :: Python :: 3.3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Topic :: Scientific/Engineering",
# Pick your license as you wish (should match "license" above)
"License :: OSI Approved :: BSD License",
],
# What does your project relate to?
keywords="csp constraint solving problems problem solver",
# You can just specify the packages manually here if your project is
# simple. Or you can use find_packages().
packages=find_packages(exclude=["contrib", "docs", "tests*"]),
# List run-time dependencies here. These will be installed by pip when your
# project is installed. For an analysis of "install_requires" vs pip's
# requirements files see:
# https://packaging.python.org/en/latest/technical.html#install-requires-vs-requirements-files
install_requires=[],
# List additional groups of dependencies here (e.g. development dependencies).
# You can install these using the following syntax, for example:
# $ pip install -e .[dev,test]
extras_require={"dev": ["check-manifest", "nose"], "test": ["coverage", "nose"]},
# If there are data files included in your packages that need to be
# installed, specify them here. If using Python 2.6 or less, then these
# have to be included in MANIFEST.in as well.
# package_data={
# 'sample': ['logging.conf'],
# },
# Although 'package_data' is the preferred approach, in some case you may
# need to place data files outside of your packages.
# see http://docs.python.org/3.4/distutils/setupscript.html#installing-additional-files
# In this case, 'data_file' will be installed into '<sys.prefix>/my_data'
# data_files=[('my_data', ['data/data_file'])],
# To provide executable scripts, use entry points in preference to the
# "scripts" keyword. Entry points provide cross-platform support and allow
# pip to create the appropriate form of executable for the target platform.
# entry_points={
# 'console_scripts': [
# 'sample=sample:main',
# ],
# },
)
if __name__ == "__main__":
setup()

0 comments on commit 66ecbed

Please sign in to comment.