move to hatch-based build

This commit is contained in:
Jan Petykiewicz 2022-08-18 23:44:20 -07:00
parent 5a42081f6a
commit 9c798b9906
7 changed files with 60 additions and 73 deletions

View File

@ -1,3 +0,0 @@
include README.md
include LICENSE.md
include fatamorgana/VERSION

1
fatamorgana/LICENSE.md Symbolic link
View File

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

1
fatamorgana/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__ = '''
0.11
'''.strip()

View File

@ -15,7 +15,7 @@
numpy to speed up reading/writing. numpy to speed up reading/writing.
Dependencies: Dependencies:
- Python 3.5 or later - Python 3.8 or later
- numpy (optional, faster but no additional functionality) - numpy (optional, faster but no additional functionality)
To get started, try: To get started, try:
@ -36,6 +36,5 @@ from .basic import (
__author__ = 'Jan Petykiewicz' __author__ = 'Jan Petykiewicz'
__version__ = '0.11'
from .VERSION import __version__
version = __version__ version = __version__

56
pyproject.toml Normal file
View File

@ -0,0 +1,56 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "fatamorgana"
description = "OASIS layout format parser and writer"
readme = "README.md"
license = { file = "LICENSE.md" }
authors = [
{ name="Jan Petykiewicz", email="jan@mpxd.net" },
]
homepage = "https://mpxd.net/code/jan/fatamorgana"
repository = "https://mpxd.net/code/jan/fatamorgana"
keywords = [
"OASIS",
"layout",
"design",
"CAD",
"EDA",
"oas",
"electronics",
"open",
"artwork",
"interchange",
"standard",
"mask",
"pattern",
"IC",
"geometry",
"geometric",
"polygon",
"gds",
]
classifiers = [
"Programming Language :: Python :: 3",
"Development Status :: 3 - Alpha",
"Environment :: Other Environment",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: Manufacturing",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU Affero General Public License v3",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)",
]
requires-python = ">=3.8"
dynamic = ["version"]
dependencies = [
]
[tool.hatch.version]
path = "fatamorgana/__init__.py"
[project.optional-dependencies]
numpy = ["numpy~=1.21"]

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('fatamorgana/VERSION.py', 'rt') as f:
version = f.readlines()[2].strip()
setup(name='fatamorgana',
version=version,
description='OASIS layout format parser and 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/fatamorgana',
packages=find_packages(),
package_data={
'fatamorgana': ['py.typed'],
},
install_requires=[
'typing',
],
extras_require={
'numpy': ['numpy'],
},
classifiers=[
'Programming Language :: Python :: 3',
'Development Status :: 3 - Alpha',
'Environment :: Other Environment',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: Manufacturing',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: GNU Affero General Public License v3',
'Topic :: Scientific/Engineering',
'Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)',
],
keywords=[
'OASIS',
'layout',
'design',
'CAD',
'EDA',
'oas',
'electronics',
'open',
'artwork',
'interchange',
'standard',
'mask',
'pattern',
'IC',
'geometry',
'geometric',
'polygon',
'gds',
],
)