Skip to content

Commit 256ad12

Browse files
committed
Enhance project configuration and publishing capabilities
- Added a new 'publish' target in the Makefile to facilitate publishing the package to PyPI, streamlining the release process. - Updated the pyproject.toml to include maintainers, revised the development status from Alpha to Beta, and added relevant keywords to improve package discoverability. - Expanded the classifiers section to better categorize the project and its intended audience, enhancing clarity for potential users. - Included project URLs for source, documentation, issue tracking, license, contributing guidelines, and code of conduct, providing comprehensive resources for users and contributors.
1 parent 774e4c8 commit 256ad12

File tree

2 files changed

+47
-2
lines changed

2 files changed

+47
-2
lines changed

Makefile

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,13 @@ all: format lint security complexity docs test ## Run everything (full CI simul
131131
@echo ""
132132
@echo "🎉 All checks passed! Ready to push to GitHub!"
133133

134+
publish: ## Publish to PyPI
135+
@echo "📦 Publishing to PyPI..."
136+
# export $(cat .env | xargs)
137+
python -m build
138+
twine upload dist/*
139+
@echo "✅ Published to PyPI!"
140+
134141
# Quick commands for common tasks, defining aliases for the most common commands (alias: common_command)
135142
fix: format
136143
check: lint

pyproject.toml

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,20 +12,36 @@ name = "torchsom"
1212
authors = [
1313
{name = "Louis Berthier", email = "louis-desire-romeo.berthier@michelin.com"},
1414
]
15+
maintainers = [
16+
{name = "Louis Berthier", email = "louis-desire-romeo.berthier@michelin.com"},
17+
]
1518
dynamic = [
1619
"version", # Version will be determined dynamically (via git)
1720
"readme", # README will be dynamically loaded
1821
]
1922
description = "torchsom: The Reference PyTorch Library for Self-Organizing Maps"
2023
requires-python = ">=3.9" # Minimum Python version required
24+
# https://pypi.org/classifiers/
2125
classifiers = [
22-
"Development Status :: 3 - Alpha",
26+
"Development Status :: 4 - Beta", # 3 - Alpha, 4 - Beta, 5 - Production/Stable
2327
"Natural Language :: English",
2428
"Operating System :: OS Independent",
29+
"Intended Audience :: Developers",
30+
"Intended Audience :: Healthcare Industry",
31+
"Intended Audience :: Manufacturing",
32+
"Intended Audience :: Science/Research",
33+
"Topic :: Scientific/Engineering :: Artificial Intelligence",
34+
"Topic :: Scientific/Engineering :: Information Analysis",
35+
"Topic :: Scientific/Engineering :: Information Retrieval",
36+
"Topic :: Scientific/Engineering :: Visualization",
37+
"Topic :: Software Development :: Libraries",
38+
"Topic :: Software Development :: Testing :: Unit",
39+
"Topic :: Software Development :: Version Control :: Git",
2540
"Programming Language :: Python",
26-
"Programming Language :: Python :: 3.8",
2741
"Programming Language :: Python :: 3.9",
2842
"Programming Language :: Python :: 3.10",
43+
"Programming Language :: Python :: 3.11",
44+
"License :: OSI Approved :: Apache Software License",
2945
]
3046
dependencies = [
3147
"torch",
@@ -34,6 +50,28 @@ dependencies = [
3450
"tqdm",
3551
"pydantic",
3652
]
53+
keywords = [
54+
"Self-Organizing-Maps",
55+
"SOM",
56+
"PyTorch",
57+
"Machine-Learning",
58+
"Unsupervised-Learning",
59+
"Dimensionality-Reduction",
60+
"Clustering",
61+
"Data-Visualization",
62+
"Just-In-Time-Learning",
63+
]
64+
65+
[project.urls]
66+
"Source" = "https://github.com/michelin/torchsom"
67+
"Documentation" = "https://opensource.michelin.io/TorchSOM/"
68+
"Tracker" = "https://github.com/michelin/TorchSOM/issues"
69+
"License" = "https://github.com/michelin/TorchSOM/blob/main/LICENSE"
70+
"Contributing" = "https://github.com/michelin/TorchSOM/blob/main/CONTRIBUTING.md"
71+
"Code of Conduct" = "https://github.com/michelin/TorchSOM/blob/main/CODE_OF_CONDUCT.md"
72+
"Citation" = "https://github.com/michelin/TorchSOM/blob/main/CITATION.cff"
73+
# "Changelog" = "https://github.com/michelin/torchsom/releases"
74+
# "Author" = "https://github.com/michelin/TorchSOM/blob/main/AUTHORS.md"
3775

3876
# Configuration for setuptools-git-versioning plugin
3977
[tool.setuptools-git-versioning]

0 commit comments

Comments
 (0)