diff --git a/.gitignore b/.gitignore index 521fc2b461b75eaee51a2ed0f189b5ba8c49b557..3ac07fc417810bd5def54408dcdf073b9383b478 100644 --- a/.gitignore +++ b/.gitignore @@ -48,3 +48,4 @@ __pycache__ MANIFEST _skbuild/ dist +*.egg-info diff --git a/pyproject.toml b/pyproject.toml index 091476c5fcd299ba3fa7c4d28c7c261a1fb99e84..562fd5e7ec1eafe724c9483195224d8b50674ce7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,3 @@ [build-system] -requires = ['setuptools', 'wheel', 'scikit-build', 'cmake', 'ninja', 'requests', 'dune-common>=2.8.0.dev0', 'dune-grid>=2.8.0.dev0', 'dune-localfunctions>=2.8.0.dev0', 'dune-istl>=2.8.0.dev0', 'dune-alugrid>=2.8.0.dev0'] +requires = ['setuptools', 'wheel', 'scikit-build', 'cmake', 'ninja', 'requests', 'dune-common<=2.8.0.dev20201218', 'dune-grid<=2.8.0.dev20201218', 'dune-localfunctions<=2.8.0.dev20201218', 'dune-istl<=2.8.0.dev20201218'] build-backend = 'setuptools.build_meta' diff --git a/setup.py b/setup.py index 24d51ef9493c88d1c44fc479e05500fb4e0d562e..09b97f44dcb49cdf4afd87a5fdcb7c64c2bbc650 100644 --- a/setup.py +++ b/setup.py @@ -1,19 +1,36 @@ try: - from dune.packagemetadata import metaData, Description + from dune.packagemetadata import metaData except ImportError: - from packagemetadata import metaData, Description + from packagemetadata import metaData from setuptools import find_namespace_packages from skbuild import setup -description = Description('dune.module') -version = description.versionstring.replace('-git', '') +# When building a new package, update the version numbers below and run: +# > python setup.py sdist +# > python -m twine upload dist/* -buildVersion = '.0.dev20201212' -duneVersion = '2.8' + buildVersion +dumuxVersion = '3.4.0.dev20210114' +duneVersion = '2.8.0.dev20201218' metadata = metaData(duneVersion)[1] -metadata['version'] = version + buildVersion -metadata['long_description'] = metadata['long_description'].replace('doc/logo/dumux_logo_hires_whitebg.png', 'https://dumux.org/images/logo.svg') +metadata['version'] = dumuxVersion +metadata['long_description'] = metadata['long_description'].replace( + 'doc/logo/dumux_logo_hires_whitebg.png', + 'https://dumux.org/images/logo.svg' +) metadata['packages'] = find_namespace_packages(where='python', include=['dumux.*']) +# auto-generate pyproject.toml with duneVersion when building sdist +from skbuild.command.sdist import sdist +class mysdist(sdist): + def run(self): + requires = ['setuptools', 'wheel', 'scikit-build', 'cmake', 'ninja', 'requests'] + requires += metadata['install_requires'] + with open('pyproject.toml', 'w') as f: + f.write("[build-system]\n") + f.write("requires = ['"+"', '".join(requires)+"']\n") + f.write("build-backend = 'setuptools.build_meta'\n") + sdist.run(self) +metadata['cmdclass'] = {'sdist': mysdist} + setup(**metadata)