Переглянути джерело

feat: update setup.py to use the project_desc.md as long description

trgiangdo 1 рік тому
батько
коміт
bb76ece7f1

+ 18 - 4
setup.py

@@ -9,7 +9,7 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy package"""
 
 import os
 import json
@@ -22,7 +22,7 @@ from setuptools.command.build_py import build_py
 
 root_folder = Path(__file__).parent
 
-readme = (root_folder / "README.md").read_text("UTF-8")
+package_desc = Path("package_desc.md").read_text("UTF-8")
 
 # get current version
 with open(os.path.join("taipy", "version.json")) as version_file:
@@ -73,6 +73,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -82,6 +83,12 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="A 360° open-source platform from Python pilots to production-ready web apps.",
     install_requires=get_requirements(),
@@ -91,16 +98,23 @@ setup(
         ]
     },
     license="Apache License 2.0",
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     keywords="taipy",
     name="taipy",
     packages=find_packages(include=["taipy", "taipy.*"]),
     include_package_data=True,
     test_suite="tests",
-    url="https://github.com/avaiga/taipy",
     version=version_string,
     zip_safe=False,
     extras_require=extras_require,
     cmdclass={"build_py": NPMInstall},
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 20 - 7
taipy/config/setup.py

@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 # Copyright 2021-2024 Avaiga Private Limited
 #
 # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
@@ -11,14 +9,15 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy-config package"""
+
 import json
 import os
+from pathlib import Path
 
 from setuptools import find_namespace_packages, find_packages, setup
 
-with open("README.md") as readme_file:
-    readme = readme_file.read()
+package_desc = Path("package_desc.md").read_text("UTF-8")
 
 version_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "version.json")
 
@@ -37,6 +36,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -46,10 +46,16 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="A Taipy package dedicated to easily configure a Taipy application.",
     install_requires=requirements,
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     license="Apache License 2.0",
     keywords="taipy-config",
@@ -60,7 +66,14 @@ setup(
     data_files=[('version', ['version.json'])],
     test_suite="tests",
     tests_require=test_requirements,
-    url="https://github.com/avaiga/taipy-config",
     version=version_string,
     zip_safe=False,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 19 - 8
taipy/core/setup.py

@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 # Copyright 2021-2024 Avaiga Private Limited
 #
 # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
@@ -11,7 +9,8 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy-core package"""
+
 import json
 import os
 from pathlib import Path
@@ -20,8 +19,7 @@ from setuptools import find_namespace_packages, find_packages, setup
 
 root_folder = Path(__file__).parent
 
-with open("README.md") as readme_file:
-    readme = readme_file.read()
+package_desc = Path("package_desc.md").read_text("UTF-8")
 
 version_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "version.json")
 with open(version_path) as version_file:
@@ -31,7 +29,6 @@ with open(version_path) as version_file:
         version_string = f"{version_string}.{vext}"
 
 
-
 def get_requirements():
     # get requirements from the different setups in tools/packages (removing taipy packages)
     reqs = set()
@@ -61,6 +58,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -70,10 +68,16 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="A Python library to build powerful and customized data-driven back-end applications.",
     install_requires=get_requirements(),
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     license="Apache License 2.0",
     keywords="taipy-core",
@@ -83,8 +87,15 @@ setup(
     data_files=[('version', ['version.json'])],
     test_suite="tests",
     tests_require=test_requirements,
-    url="https://github.com/avaiga/taipy-core",
     version=version_string,
     zip_safe=False,
     extras_require=extras_require,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 18 - 6
taipy/gui/setup.py

@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 # Copyright 2021-2024 Avaiga Private Limited
 #
 # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
@@ -11,7 +9,7 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy-gui package"""
 
 import json
 import os
@@ -22,7 +20,7 @@ from setuptools.command.build_py import build_py
 
 root_folder = Path(__file__).parent
 
-readme = Path("README.md").read_text()
+package_desc = Path("package_desc.md").read_text("UTF-8")
 
 version_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "version.json")
 with open(version_path) as version_file:
@@ -75,6 +73,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -84,9 +83,15 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="Low-code library to create graphical user interfaces on the Web for your Python applications.",
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     install_requires=get_requirements(),
     license="Apache License 2.0",
@@ -97,9 +102,16 @@ setup(
     packages=find_namespace_packages(where=".") + find_packages(include=["taipy", "taipy.gui", "taipy.gui.*"]),
     test_suite="tests",
     tests_require=test_requirements,
-    url="https://github.com/avaiga/taipy-gui",
     version=version_string,
     zip_safe=False,
     extras_require=extras_require,
     cmdclass={"build_py": NPMInstall},
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 20 - 3
taipy/rest/setup.py

@@ -8,6 +8,9 @@
 # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
+
+"""The setup script for taipy-rest package"""
+
 import json
 import os
 from pathlib import Path
@@ -16,8 +19,7 @@ from setuptools import find_namespace_packages, find_packages, setup
 
 root_folder = Path(__file__).parent
 
-with open("README.md") as readme_file:
-    readme = readme_file.read()
+package_desc = Path("package_desc.md").read_text("UTF-8")
 
 version_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "version.json")
 with open(version_path) as version_file:
@@ -50,11 +52,12 @@ setup(
     packages=find_namespace_packages(where=".") + find_packages(include=["taipy", "taipy.rest"]),
     include_package_data=True,
     data_files=[('version', ['version.json'])],
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     description="Library to expose taipy-core REST APIs.",
     license="Apache License 2.0",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -64,6 +67,20 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     install_requires=get_requirements(),
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 19 - 5
taipy/templates/setup.py

@@ -9,15 +9,15 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy-templates package"""
 
 import json
 import os
+from pathlib import Path
 
 from setuptools import find_namespace_packages, find_packages, setup
 
-with open("README.md", "rb") as readme_file:
-    readme = readme_file.read().decode("UTF-8")
+package_desc = Path("package_desc.md").read_text("UTF-8")
 
 version_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "version.json")
 with open(version_path) as version_file:
@@ -33,6 +33,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -42,10 +43,16 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="An open-source package holding Taipy application templates.",
     license="Apache License 2.0",
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     keywords="taipy-templates",
     name="taipy-templates",
@@ -53,7 +60,14 @@ setup(
     include_package_data=True,
     data_files=[('version', ['version.json'])],
     test_suite="tests",
-    url="https://github.com/avaiga/taipy-templates",
     version=version_string,
     zip_safe=False,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 19 - 6
tools/packages/taipy-config/setup.py

@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 # Copyright 2021-2024 Avaiga Private Limited
 #
 # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
@@ -11,7 +9,8 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy-config package"""
+
 import json
 from pathlib import Path
 
@@ -19,7 +18,7 @@ from setuptools import find_packages, setup
 
 root_folder = Path(__file__).parent
 
-readme = Path(root_folder / "README.md").read_text("UTF-8")
+package_desc = Path(root_folder / "package_desc.md").read_text("UTF-8")
 
 version_path = "taipy/config/version.json"
 
@@ -40,6 +39,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -49,10 +49,16 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="A Taipy package dedicated to easily configure a Taipy application.",
     install_requires=requirements,
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     include_package_data=True,
     license="Apache License 2.0",
@@ -65,7 +71,14 @@ setup(
     ),
     test_suite="tests",
     tests_require=test_requirements,
-    url="https://github.com/avaiga/taipy-config",
     version=version_string,
     zip_safe=False,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 19 - 7
tools/packages/taipy-core/setup.py

@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 # Copyright 2021-2024 Avaiga Private Limited
 #
 # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
@@ -11,16 +9,16 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
-import json
+"""The setup script for taipy-core package"""
 
+import json
 from pathlib import Path
 
 from setuptools import find_packages, setup
 
 root_folder = Path(__file__).parent
 
-readme = Path(root_folder / "README.md").read_text("UTF-8")
+package_desc = Path(root_folder / "package_desc.md").read_text("UTF-8")
 
 version_path = "taipy/core/version.json"
 
@@ -48,6 +46,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -57,10 +56,16 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="A Python library to build powerful and customized data-driven back-end applications.",
     install_requires=requirements,
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     license="Apache License 2.0",
     keywords="taipy-core",
@@ -69,8 +74,15 @@ setup(
     include_package_data=True,
     test_suite="tests",
     tests_require=test_requirements,
-    url="https://github.com/avaiga/taipy-core",
     version=version_string,
     zip_safe=False,
     extras_require=extras_require,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 18 - 6
tools/packages/taipy-gui/setup.py

@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 # Copyright 2021-2024 Avaiga Private Limited
 #
 # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
@@ -11,7 +9,7 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
+"""The setup script for taipy-gui package"""
 
 import json
 import os
@@ -24,7 +22,7 @@ from setuptools.command.build_py import build_py
 
 root_folder = Path(__file__).parent
 
-readme = Path(root_folder / "README.md").read_text("UTF-8")
+package_desc = Path(root_folder / "package_desc.md").read_text("UTF-8")
 
 version_path = os.path.join(root_folder, "taipy/gui/version.json")
 
@@ -78,6 +76,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -87,9 +86,15 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="Low-code library to create graphical user interfaces on the Web for your Python applications.",
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     install_requires=requirements,
     license="Apache License 2.0",
@@ -99,9 +104,16 @@ setup(
     packages=find_packages(where=root_folder, include=["taipy", "taipy.gui", "taipy.gui.*"]),
     test_suite="tests",
     tests_require=test_requirements,
-    url="https://github.com/avaiga/taipy-gui",
     version=version_string,
     zip_safe=False,
     extras_require=extras_require,
     cmdclass={"build_py": NPMInstall},
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 20 - 3
tools/packages/taipy-rest/setup.py

@@ -8,15 +8,17 @@
 # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
-import json
 
+"""The setup script for taipy-rest package"""
+
+import json
 from pathlib import Path
 
 from setuptools import find_packages, setup
 
 root_folder = Path(__file__).parent
 
-readme = Path(root_folder / "README.md").read_text("UTF-8")
+package_desc = Path(root_folder / "package_desc.md").read_text("UTF-8")
 
 version_path = "taipy/rest/version.json"
 
@@ -39,11 +41,12 @@ setup(
     author_email="dev@taipy.io",
     packages=find_packages(where=root_folder, include=["taipy", "taipy.rest", "taipy.rest.*"]),
     include_package_data=True,
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     description="Library to expose taipy-core REST APIs.",
     license="Apache License 2.0",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -53,6 +56,20 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     install_requires=requirements,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 16 - 3
tools/packages/taipy-templates/setup.py

@@ -12,14 +12,13 @@
 """The setup script."""
 
 import json
-
 from pathlib import Path
 
 from setuptools import find_packages, setup
 
 root_folder = Path(__file__).parent
 
-readme = Path(root_folder / "README.md").read_text("UTF-8")
+package_desc = Path(root_folder / "package_desc.md").read_text("UTF-8")
 
 version_path = "taipy/templates/version.json"
 
@@ -40,6 +39,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -49,6 +49,12 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="An open-source package holding Taipy application templates.",
     license="Apache License 2.0",
@@ -60,7 +66,14 @@ setup(
     packages=find_packages(where=root_folder, include=["taipy"]),
     include_package_data=True,
     test_suite="tests",
-    url="https://github.com/avaiga/taipy-templates",
     version=version_string,
     zip_safe=False,
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )

+ 18 - 5
tools/packages/taipy/setup.py

@@ -9,8 +9,7 @@
 # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 # specific language governing permissions and limitations under the License.
 
-"""The setup script."""
-
+"""The setup script for taipy package"""
 
 import json
 import platform
@@ -22,7 +21,7 @@ from setuptools.command.build_py import build_py
 
 root_folder = Path(__file__).parent
 
-readme = (root_folder / "README.md").read_text("UTF-8")
+package_desc = (root_folder / "package_desc.md").read_text("UTF-8")
 
 with open(root_folder / "taipy" / "version.json") as version_file:
     version = json.load(version_file)
@@ -62,6 +61,7 @@ setup(
     author_email="dev@taipy.io",
     python_requires=">=3.8",
     classifiers=[
+        "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Developers",
         "License :: OSI Approved :: Apache Software License",
         "Natural Language :: English",
@@ -71,6 +71,12 @@ setup(
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Topic :: Software Development",
+        "Topic :: Scientific/Engineering",
+        "Operating System :: Microsoft :: Windows",
+        "Operating System :: POSIX",
+        "Operating System :: Unix",
+        "Operating System :: MacOS",
     ],
     description="A 360° open-source platform from Python pilots to production-ready web apps.",
     install_requires=requirements,
@@ -80,16 +86,23 @@ setup(
         ]
     },
     license="Apache License 2.0",
-    long_description=readme,
+    long_description=package_desc,
     long_description_content_type="text/markdown",
     keywords="taipy",
     name="taipy",
     packages=find_packages(include=["taipy", "taipy._cli", "taipy._cli.*", "taipy.gui_core"]),
     include_package_data=True,
     test_suite="tests",
-    url="https://github.com/avaiga/taipy",
     version=version_string,
     zip_safe=False,
     extras_require=extras_require,
     cmdclass={"build_py": NPMInstall},
+    project_urls={
+        "Homepage": "https://www.taipy.io",
+        "Documentation": "https://docs.taipy.io",
+        "Source": "https://github.com/Avaiga/taipy",
+        "Download": "https://pypi.org/project/taipy/#files",
+        "Tracker": "https://github.com/Avaiga/taipy/issues",
+        "Release notes": "https://docs.taipy.io/en/latest/relnotes/",
+    },
 )