import setuptools import os import re with open("README.md", "r") as fh: long_description = fh.read() with open("requirements.txt", "r") as f: requirements = [ req.strip() for req in f.readlines() if not req.startswith("#") and req.__contains__("==") ] def get_version(): # 找到 __init__.py 的路径 init_path = os.path.join( os.path.dirname(__file__), "csst_ifs_gehong", "__init__.py" ) # 读取文件内容,使用正则找出版本号 with open(init_path, "r", encoding="utf-8") as f: content = f.read() version_match = re.search(r'^__version__ = ["\']([^"\']*)["\']', content, re.M) if version_match: return version_match.group(1) raise RuntimeError("无法在 __init__.py 中找到 __version__ 定义") setuptools.setup( name = 'csst_ifs_gehong', version = get_version(), license = 'MIT', author = "Shuai Feng", author_email = 'sfeng@hebtu.edu.cn', description = 'The packages for the scientific data simulation of CSST-IFS', # short description long_description=long_description, long_description_content_type = "text/markdown", url = 'https://csst-tb.bao.ac.cn/code/csst-sims/csst_ifs_gehong', project_urls = { 'Source': 'https://csst-tb.bao.ac.cn/code/csst-sims/csst_ifs_gehong', }, packages=setuptools.find_packages(), classifiers=["Development Status :: 5 - Production/Stable", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.11", "Topic :: Scientific/Engineering :: Physics", "Topic :: Scientific/Engineering :: Astronomy"], package_dir={'csst_ifs_gehong': 'csst_ifs_gehong'}, # include_package_data=True, package_data={"": ["LICENSE", "README.md"], "csst_ifs_gehong": [ "data/*", ]}, python_requires='>=3.11', install_requires=requirements, )