generated from ultralytics/template
-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
pyproject.toml
109 lines (94 loc) · 4.49 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# Ultralytics YOLO 🚀, AGPL-3.0 License https://ultralytics.com/license
# Overview:
# This pyproject.toml file manages the build, packaging, and distribution of the Ultralytics Template library.
# It defines essential project metadata, dependencies, and settings used to develop and deploy the library.
# Key Sections:
# - [build-system]: Specifies the build requirements and backend (e.g., setuptools, wheel).
# - [project]: Includes details like name, version, description, authors, dependencies and more.
# - [project.optional-dependencies]: Provides additional, optional packages for extended features.
# - [tool.*]: Configures settings for various tools (pytest, yapf, etc.) used in the project.
# Installation:
# The Template library can be installed using the command: 'pip install git+https://TOKEN:[email protected]/ultralytics/template.git@main'
# For development purposes, you can install the package in editable mode with: 'pip install -e .'
# This approach allows for real-time code modifications without the need for re-installation.
# Documentation:
# For comprehensive documentation and usage instructions, visit: https://docs.ultralytics.com
[build-system]
requires = ["setuptools>=43.0.0", "wheel"]
build-backend = "setuptools.build_meta"
# Project settings -----------------------------------------------------------------------------------------------------
[project]
name = "handbook" # Required
dynamic = ["version"]
description = "Ultralytics Handbook" # Optional
readme = "README.md" # Optional
requires-python = ">=3.8"
license = { file = "LICENSE" }
keywords = ["Ultralytics", "Handbook"] # Optional
authors = [
{ name = "Glenn Jocher", email = "[email protected]" } # Optional
]
maintainers = [
{ name = "Glenn Jocher", email = "[email protected]" } # Optional
]
classifiers = [# Optional, for a list of valid classifiers, see https://pypi.org/classifiers/
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: Software Development",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Operating System :: POSIX :: Linux",
"Operating System :: MacOS",
"Operating System :: Microsoft :: Windows",
]
# Required dependencies ------------------------------------------------------------------------------------------------
dependencies = [
"ipython",
"pytest",
"pytest-cov",
"coverage[toml]",
"mkdocs>=1.6.0",
"mkdocs-material>=9.5.9",
"mkdocstrings[python]",
"mkdocs-jupyter", # notebooks
"mkdocs-redirects", # 301 redirects
"mkdocs-ultralytics-plugin>=0.1.8", # for meta descriptions and images, dates and authors
"mkdocs-macros-plugin>=1.0.5" # duplicating content (i.e. export tables) in multiple places
]
# Optional dependencies ------------------------------------------------------------------------------------------------
[project.optional-dependencies] # Optional
tests = ["pytest"]
[project.urls] # Optional
"Homepage" = "https://ultralytics.com"
"Source" = "https://github.com/ultralytics/handbook"
"Documentation" = "https://docs.ultralytics.com"
"Handbook" = "https://handbook.ultralytics.com"
"Bug Reports" = "https://github.com/ultralytics/handbook/issues"
"Changelog" = "https://github.com/ultralytics/handbook/releases"
# [project.scripts] # Optional
# sample = "sample:main" # executes the function `main` from this package when "sample" is called.
# Tools settings -------------------------------------------------------------------------------------------------------
[tool.setuptools] # configuration specific to the `setuptools` build backend.
packages = { find = { where = ["."], include = ["handbook", "handbook.*"] } }
package-data = { "sample" = ["*.yaml"] }
[tool.setuptools.dynamic]
version = { attr = "handbook.__version__" }
[tool.ruff]
line-length = 120
[tool.docformatter]
wrap-summaries = 120
wrap-descriptions = 120
in-place = true
pre-summary-newline = true
close-quotes-on-newline = true
[tool.codespell]
ignore-words-list = "crate,nd,strack,dota,ane,segway,fo,gool,winn,commend"
skip = '*.csv,*venv*,docs/??/,docs/mkdocs_??.yml'