diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..0391095 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,44 @@ +[project] +name = "donjon-rainbow" +version = "2.0" +authors = [ + {name = "Victor Servant", email = "yhql.gh@gmail.com"}, + {name = "Alexandre Iooss"}, + {name = "Ján Jančár"}, +] +description = "Generic Unicorn tracer for side-channels and fault injection" +requires-python = ">=3.7" +dependencies = [ + "unicorn>=2.0.1", + "capstone>=4.0.0", + "cle>=9.2", + "intelhex", + "pygments", + "numpy", + "PyQt5" +] +readme = "README.md" +classifiers = [ + "Development Status :: 4 - Beta", + "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", + "Topic :: Security", + "Topic :: Security :: Cryptography", + "Topic :: System :: Emulators", + "Programming Language :: Python :: 3", + "Intended Audience :: Developers", + "Intended Audience :: Science/Research" +] + +[project.urls] +Homepage = "https://github.com/Ledger-Donjon/rainbow" +Issues = "https://github.com/Ledger-Donjon/rainbow/issues" + +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + +[tool.hatch.build.targets.sdist] +exclude = ["OAES_variance.jpg"] + +[tool.hatch.build.targets.wheel] +packages = ["rainbow"] diff --git a/setup.py b/setup.py deleted file mode 100644 index 940c676..0000000 --- a/setup.py +++ /dev/null @@ -1,55 +0,0 @@ -# This file is part of rainbow -# -# rainbow is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this program. If not, see . -# -# -# Copyright 2019 Victor Servant, Ledger SAS -# Copyright 2023 Jan Jancar - -from setuptools import setup, find_packages - -setup( - name="rainbow", - version="2.0", - author="Victor Servant", - author_email="victor.servant@ledger.fr", - description="Generic Unicorn tracer for side-channels", - long_description=open("README.md").read(), - long_description_content_type="text/markdown", - packages=find_packages(), - package_data={'': ['*.pickle']}, - classifiers=[ - "Development Status :: 4 - Beta", - "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", - "Topic :: Security", - "Topic :: Security :: Cryptography", - "Topic :: System :: Emulators", - "Programming Language :: Python :: 3", - "Intended Audience :: Developers", - "Intended Audience :: Science/Research" - ], - python_requires='>=3.7', - install_requires=[ - "unicorn>=2.0.1", - "capstone>=4.0.0", - "cle>=9.2", - "intelhex", - "pygments", - "numpy", - "PyQt5" - ], - extras_require={ - "examples": ["visplot @ git+https://github.com/Ledger-Donjon/visplot#egg=visplot", "lascar", "pycryptodome"] - } -)