-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathpyproject.toml
116 lines (107 loc) · 3.13 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
110
111
112
113
114
115
116
[project]
name = "pg_upsert"
dynamic = ["version"]
authors = [{ name = "Caleb Grant", email = "[email protected]" }]
description = "A Python library for upserting data into postgres."
readme = { file = "README.md", content-type = "text/markdown" }
license = { file = "LICENSE" }
requires-python = ">=3.10"
classifiers = [
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Intended Audience :: Developers",
"Topic :: Database",
"Topic :: Software Development :: Libraries :: Python Modules",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
]
dependencies = ["psycopg2-binary>=2.9.0,<3", "tabulate==0.9.0", "pyyaml==6.0.1"]
keywords = ["postgresql", "postgres", "dbms", "etl", "upsert", "database"]
[project.scripts]
pg_upsert = "pg_upsert.cli:main"
[tool.setuptools.dynamic]
version = { attr = "pg_upsert.__version__.__version__" }
[project.urls]
Homepage = "https://pg-upsert.readthedocs.io"
Repository = "https://github.com/geocoug/pg_upsert"
Issues = "https://github.com/geocoug/pg_upsert/issues"
[tool.pytest.ini_options]
addopts = ["--cov=pg_upsert", "--cov-report=term-missing", "-sv"]
testpaths = ["tests"]
log_cli = true
log_cli_level = "INFO"
log_cli_format = "%(asctime)s - %(name)s - %(levelname)s: %(message)s"
log_cli_date_format = "%Y-%m-%d %H:%M:%S"
[tool.ruff]
# Exclude a variety of commonly ignored directories.
exclude = [
".bzr",
".direnv",
".eggs",
".git",
".hg",
".mypy_cache",
".nox",
".pants.d",
".ruff_cache",
".svn",
".tox",
".venv",
"__pypackages__",
"_build",
"buck-out",
"build",
"dist",
"node_modules",
"venv",
"*cache*",
]
# The line length to use when enforcing long-lines violations (like E501).
line-length = 120
# Assume Python 3.11.
target-version = "py312"
# Whether to automatically exclude files that are ignored by .ignore, .gitignore, .git/info/exclude, and global gitignore files.
respect-gitignore = true
# Default autofix behavior
fix = false
[tool.ruff.lint]
# Allow unused variables when underscore-prefixed.
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
# A list of rule codes or prefixes to enable.
# Prefixes can specify exact rules (like F841), entire categories (like F), or anything in between.
# Default = Pyflakes `E` and `F` codes.
select = [
"E",
"F",
"Q",
"B",
"I",
"UP",
"N",
"S",
"C4",
"T20",
"RET",
"SIM",
"PD",
"RUF",
]
ignore = ["PD901", "S101", "F401", "SIM117", "F811"]
[tool.ruff.format]
# Like Black, use double quotes for strings.
quote-style = "double"
# Like Black, indent with spaces, rather than tabs.
indent-style = "space"
# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false
# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"
[tool.bumpversion]
current_version = "1.4.6"
commit = true
commit_args = "--no-verify"
tag = true
[[tool.bumpversion.files]]
filename = "pg_upsert/__version__.py"