Move to hatch-based build

This commit is contained in:
Jan Petykiewicz 2022-08-18 23:06:41 -07:00
parent a8ecd5f0ef
commit 38fc306644
7 changed files with 64 additions and 70 deletions

3
.gitignore vendored
View File

@ -1,5 +1,5 @@
*.pyc *.pyc
__pycache__ __pycache__/
*.idea *.idea
@ -7,6 +7,7 @@ build/
dist/ dist/
*.egg-info/ *.egg-info/
.mypy_cache/ .mypy_cache/
.pytest_cache/
*.swp *.swp
*.swo *.swo

1
klamath/LICENSE.md Symbolic link
View File

@ -0,0 +1 @@
../LICENSE.md

1
klamath/README.md Symbolic link
View File

@ -0,0 +1 @@
../README.md

View File

@ -1,4 +0,0 @@
""" VERSION defintion. THIS FILE IS MANUALLY PARSED BY setup.py and REQUIRES A SPECIFIC FORMAT """
__version__ = '''
1.2
'''.strip()

View File

@ -33,6 +33,6 @@ from . import records
from . import elements from . import elements
from . import library from . import library
from .VERSION import __version__
__author__ = 'Jan Petykiewicz' __author__ = 'Jan Petykiewicz'
__version__ = '1.2'

58
pyproject.toml Normal file
View File

@ -0,0 +1,58 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "klamath"
description = "GDSII format reader/writer"
readme = "README.md"
license = { file = "LICENSE.md" }
authors = [
{ name="Jan Petykiewicz", email="jan@mpxd.net" },
]
homepage = "https://mpxd.net/code/jan/klamath"
repository = "https://mpxd.net/code/jan/klamath"
keywords = [
"layout",
"gds",
"gdsii",
"gds2",
"Calma",
"stream",
"design",
"CAD",
"EDA",
"electronics",
"photonics",
"IC",
"mask",
"pattern",
"drawing",
"lithography",
"litho",
"geometry",
"geometric",
"polygon",
"vector",
]
classifiers = [
"Programming Language :: Python :: 3",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: Manufacturing",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)",
]
requires-python = ">=3.8"
include = [
"LICENSE.md"
]
dynamic = ["version"]
dependencies = [
"numpy~=1.21",
]
[tool.hatch.version]
path = "klamath/__init__.py"

View File

@ -1,63 +0,0 @@
#!/usr/bin/env python3
from setuptools import setup, find_packages
with open('README.md', 'r') as f:
long_description = f.read()
with open('klamath/VERSION.py', 'rt') as f:
version = f.readlines()[2].strip()
setup(name='klamath',
version=version,
description='GDSII format reader/writer',
long_description=long_description,
long_description_content_type='text/markdown',
author='Jan Petykiewicz',
author_email='jan@mpxd.net',
url='https://mpxd.net/code/jan/klamath',
packages=find_packages(),
package_data={
'klamath': ['py.typed'],
},
install_requires=[
'numpy',
],
classifiers=[
'Programming Language :: Python :: 3',
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: Manufacturing',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
'Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)',
],
keywords=[
'layout',
'design',
'CAD',
'EDA',
'electronics',
'photonics',
'IC',
'mask',
'pattern',
'drawing',
'lithography',
'litho',
'geometry',
'geometric',
'polygon',
'gds',
'gdsii',
'gds2',
'stream',
'vector',
'freeform',
'manhattan',
'angle',
'Calma',
],
)