-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
93 lines (86 loc) · 2.7 KB
/
pyproject.toml
File metadata and controls
93 lines (86 loc) · 2.7 KB
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
[project]
name = "secrets-cache"
version = "0.3.2"
description = "In-memory caching for AWS Secrets Manager / SSM in Lambda, with optional file-based cache for local use."
readme = "README.md"
authors = [
{name = "Ritvik Nag", email = "me@ritviknag.com"}
]
maintainers = [
{name = "Ritvik Nag", email = "me@ritviknag.com"}
]
keywords = ["aws", "secrets", "ssm", "cache", "lambda", "secrets-manager", "parameter-store"]
classifiers = [
# TODO
# Ref: https://pypi.org/classifiers/
# 'Development Status :: 5 - Production/Stable',
'Development Status :: 4 - Beta',
'Intended Audience :: Developers',
'Natural Language :: English',
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
'Programming Language :: Python :: 3.14',
'Programming Language :: Python :: Implementation :: CPython',
'Topic :: Software Development',
]
license = {text = "MIT"}
# Base dependencies (always installed)
dependencies = []
requires-python = ">= 3.10"
[project.optional-dependencies]
cli = [
'typer', # CLI / optional but handy
]
local = [
'boto3>=1.26', # AWS SDK for fetching secrets
'tomli-w>=1.0', # TOML writer for Python <3.11
'tomli>=2.0; python_version<"3.11"', # TOML reader for Python <3.11
]
docs = [
'mkdocs',
'mkdocs-material',
'mkdocs-github-admonitions-plugin',
'mkdocs-markdownextradata-plugin',
'mkdocs-macros-plugin',
'mkdocs-include-markdown-plugin',
]
lambda = [] # Lambda-friendly, skips boto3
dev = [
"bump2version", # Automatic version bumping
]
test = [
"coverage", # testing
"pytest", # testing
"ruff", # linting
"ty", # checking types
"ipdb", # debugging
]
[project.urls]
"Source" = "https://github.com/rnag/py-secrets-cache"
"Homepage" = "https://secrets-cache.ritviknag.com"
"Bug Tracker" = "https://github.com/rnag/py-secrets-cache/issues"
"Changelog" = "https://github.com/rnag/py-secrets-cache/blob/main/HISTORY.md"
[project.scripts]
secrets_cache = "secrets_cache.cli:app"
[tool.ty]
# All rules are enabled as "error" by default; no need to specify unless overriding.
# Example override: relax a rule for the entire project (uncomment if needed).
# rules.TY015 = "warn" # For invalid-argument-type, warn instead of error.
[tool.ruff]
line-length = 120
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # Pyflakes
"I", # isort
"B", # flake8-bugbear
"UP", # pyupgrade
]
[tool.uv]
package = true