159 lines
5.1 KiB
TOML
159 lines
5.1 KiB
TOML
# vim: set ft=toml ts=4 sw=4 et: fenc=utf-8
|
|
# SPDX-FileCopyrightText: 2025-present RenatoXSR <renatoxsr@gmail.com>
|
|
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=61.0.0", "setuptools-scm[simple]>=9.2"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "renatoxsr"
|
|
dynamic = ['version']
|
|
description = "RenatoXSR's Python Utilities (monorepo)"
|
|
readme = "README.md"
|
|
license = "BSD-3-Clause-Clear"
|
|
license-files = ["LICENSE"]
|
|
#requires-python = ">=3.11,<3.13"
|
|
requires-python = ">=3.14"
|
|
dependencies = [
|
|
"base58",
|
|
"colorlog",
|
|
"dotenv",
|
|
"rich",
|
|
]
|
|
|
|
authors = [
|
|
{ name = "Renato Xavier da Silveira Rosa", email = "renatoxsr@gmail.com" }
|
|
]
|
|
|
|
|
|
classifiers = [
|
|
"Programming Language :: Python :: 3",
|
|
"Development Status :: 3 - Alpha",
|
|
"Operating System :: OS Independent",
|
|
"Environment :: Console",
|
|
]
|
|
|
|
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"ruff>=0.4",
|
|
]
|
|
|
|
i18n = [
|
|
"Babel",
|
|
]
|
|
|
|
audio = [
|
|
"mutagen",
|
|
"selenium",
|
|
]
|
|
|
|
web = [
|
|
"httpx",
|
|
"Jinja2",
|
|
"python-datauri",
|
|
"requests",
|
|
]
|
|
|
|
webdav = [
|
|
"icalendar",
|
|
#"gcsa",
|
|
#"caldav",
|
|
]
|
|
|
|
data = [
|
|
"numpy",
|
|
"openpyxl",
|
|
"pandas[excel,html,output-formatting,hdf5,compression,parquet,feather]",
|
|
"xlrd",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://git.silveirarosa.com/renatoxsr/monorepo"
|
|
Issues = "https://git.silveirarosa.com/renatoxsr/monorepo/issues"
|
|
|
|
[project.scripts]
|
|
composectl = "renatoxsr.scripts.composectl:main"
|
|
bulk-jsonl = "renatoxsr.scripts.bulk_jsonl:main"
|
|
avaliar-dataset = "renatoxsr.scripts.avaliar_dataset:main"
|
|
prompt = "renatoxsr.scripts.prompt:main"
|
|
|
|
# SETUPTOOLS
|
|
[tool.setuptools.packages.find]
|
|
where = ["src-py"]
|
|
exclude = ["vendor*"]
|
|
# See: https://setuptools.pypa.io/en/latest/userguide/package_discovery.html#src-layout
|
|
# # Reserved package names
|
|
# FlatLayoutPackageFinder.DEFAULT_EXCLUDE: ClassVar[tuple[str, ...]] = ('ci', 'ci.*', 'bin', 'bin.*', 'debian', 'debian.*', 'doc', 'doc.*', 'docs', 'docs.*', 'documentation', 'documentation.*', 'manpages', 'manpages.*', 'news', 'news.*', 'newsfragments', 'newsfragments.*', 'changelog', 'changelog.*', 'test', 'test.*', 'tests', 'tests.*', 'unit_test', 'unit_test.*', 'unit_tests', 'unit_tests.*', 'example', 'example.*', 'examples', 'examples.*', 'scripts', 'scripts.*', 'tools', 'tools.*', 'util', 'util.*', 'utils', 'utils.*', 'python', 'python.*', 'build', 'build.*', 'dist', 'dist.*', 'venv', 'venv.*', 'env', 'env.*', 'requirements', 'requirements.*', 'tasks', 'tasks.*', 'fabfile', 'fabfile.*', 'site_scons', 'site_scons.*', 'benchmark', 'benchmark.*', 'benchmarks', 'benchmarks.*', 'exercise', 'exercise.*', 'exercises', 'exercises.*', 'htmlcov', 'htmlcov.*', '[._]*', '[._]*.*')
|
|
# # Reserved top-level module names
|
|
# FlatLayoutModuleFinder.DEFAULT_EXCLUDE: ClassVar[tuple[str, ...]] = ('setup', 'conftest', 'test', 'tests', 'example', 'examples', 'build', 'toxfile', 'noxfile', 'pavement', 'dodo', 'tasks', 'fabfile', '[Ss][Cc]onstruct', 'conanfile', 'manage', 'benchmark', 'benchmarks', 'exercise', 'exercises', '[._]*')
|
|
|
|
[tool.setuptools.dynamic]
|
|
#version = {attr = "__version__"}
|
|
|
|
[tool.setuptools_scm]
|
|
# Optional: add configuration overrides here if needed
|
|
|
|
# RUFF
|
|
[tool.ruff]
|
|
|
|
# Target Python version
|
|
target-version = "py314"
|
|
|
|
# Same as Black default
|
|
indent-width = 4
|
|
|
|
# # Standard Line Length Limits
|
|
# - 79 Characters: The strict PEP 8 official standard for code. It prevents horizontal wrapping or scrolling on older terminals and ensures high code readability.
|
|
# - 72 Characters: The PEP 8 official standard strictly reserved for docstrings and comments.
|
|
# - 88 Characters: The default standard used by Black, a highly popular, uncompromising Python code formatter.
|
|
# - 99 Characters: The maximum limit permitted by PEP 8 for internal or team-based projects if the team explicitly agrees to a longer limit.
|
|
# - 100 to 120 Characters: A very common relaxed standard used in enterprise environments, large open-source projects, and default setups for modern IDEs like JetBrains
|
|
line-length = 88
|
|
|
|
# Exclude a variety of commonly ignored directories.
|
|
exclude = [
|
|
".bzr",
|
|
".direnv",
|
|
".eggs",
|
|
".git",
|
|
".git-rewrite",
|
|
".hg",
|
|
".ipynb_checkpoints",
|
|
".mypy_cache",
|
|
".nox",
|
|
".pants.d",
|
|
".pyenv",
|
|
".pytest_cache",
|
|
".pytype",
|
|
".ruff_cache",
|
|
".svn",
|
|
".tox",
|
|
".venv",
|
|
".vscode",
|
|
"__pypackages__",
|
|
"_build",
|
|
"buck-out",
|
|
"build",
|
|
"dist",
|
|
"node_modules",
|
|
"site-packages",
|
|
"venv",
|
|
]
|
|
|
|
[tool.ruff.lint]
|
|
# select = [...] # See the Default Rules page for the full listing.
|
|
ignore = ["E501"]
|
|
fixable = ["ALL"] # Allow fix for all enabled rules (when `--fix`) is provided.
|
|
unfixable = []
|
|
select = ["E", "F", "I"] # Enable Pyflakes (F) and Flake8 (E/W) codes
|
|
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$" # Allow unused variables when underscore-prefixed.
|
|
|
|
[tool.ruff.format]
|
|
quote-style = "double" # Use double quotes (like Black)
|
|
indent-style = "space" # Like Black, indent with spaces, rather than tabs.
|
|
skip-magic-trailing-comma = false # Like Black, respect magic trailing commas.
|
|
line-ending = "auto" # Like Black, automatically detect the appropriate line ending.
|