-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.cfg
197 lines (185 loc) · 5.91 KB
/
setup.cfg
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
# This file exists within 'dob-prompt':
#
# https://github.com/tallybark/dob-prompt
#
# Copyright © 2019-2020 Landon Bouma. All rights reserved.
#
# This program is free software: you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software Foundation,
# either version 3 of the License, or (at your option) any later version (GPLv3+).
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# If you lost the GNU General Public License that ships with this software
# repository (read the 'LICENSE' file), see <http://www.gnu.org/licenses/>.
# """Distributable Python application packaging metadata."""
# (lb): Note that using `-` or `_` in key names is interchangeable, e.g.,
# long-description is the
# same as long_description.
[metadata]
# NOTE: Values specified in setup.py will shadow those here.
# (Although there are very few values left in setup().)
name = dob-prompt
author = Tally Bark LLC
author-email = [email protected]
home-page = https://github.com/tallybark/dob-prompt
description = journal and time tracker, supercharged for the terminal
long-description = file: README.rst
long-description-content-type = text/x-rst; charset=UTF-8
project_urls =
# Bug Tracker = https://bugs.launchpad.net/dob-prompt/
Documentation = https://dob-prompt.readthedocs.io/en/latest/
Source Code = https://github.com/tallybark/dob-prompt
license = GPLv3+
license-file = LICENSE
platform = any
# https://pypi.org/classifiers/
classifier =
License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Development Status :: 5 - Production/Stable
Environment :: Console
Intended Audience :: End Users/Desktop
License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Natural Language :: English
Operating System :: OS Independent
Programming Language :: Python :: 3
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.6
Programming Language :: Python
Topic :: Software Development :: Libraries :: Python Modules
# Keywords for PyPI to display, and to use for search results.
keywords =
journal
diary
timesheet
timetrack
jrnl
rednotebook
todo.txt
prjct
hamster
fact
[options]
# MAYBE/2020-01-26: (lb): Try zip_safe=true.
zip_safe = false
# Enable setuptools_scm's use_scm_version.
setup_requires =
setuptools
setuptools_scm
[coverage:report]
precision = 0
[coverage:run]
branch = True
source = dob_prompt
[doc8]
ignore-path = .eggs/, *.egg-info/, .tox/, docs/_build/, tests/fixtures/test-import-fixture.rst
max-line-length = 89
# Specify encoding lest doc8 think it's 'Windows-1254' and raise UnicodeDecodeError.
file-encoding = utf-8
# DEVs: Uncomment verbose for TMI.
# verbose=1
# Babel i18n/l10n configuration.
#
# USAGE:
#
# pip install Babel
# python setup.py extract_messages
#
# SEE ALSO:
#
# http://babel.pocoo.org/en/latest/setup.html#extract-messages
#
[extract_messages]
input_dirs = dob_prompt
output_file = messages.pot
[flake8]
# So that the user can call `flake8`, maintain an exclude list. (Another way
# to lint is via `make lint` or `tox -e flake8`, which call flake8 on exact
# paths, e.g., `flake8 setup.py source/ tests/`. Here we achieve same effect
# but by doing the opposite, being exclusive rather than inclusive.)
exclude =
# The build directory, if not ignored, has 50 or so lintable files.
build/
# Docs' conf.py is modified Sphinx boilerplate. That does not lint.
docs/conf.py
docs/_themes/sphinx_rtd_theme/
# Not ignoring .eggs adds 10 files.
.eggs/
# Not ignoring .tox adds tens of Ks files.
.tox/
# These directories don't contain any lintable files for flake8 to
# find, but ignore them anyway to save whatever time globbing takes.
dist/
*.egg-info/
.git/
htmlcov/
.pytest_cache/
__pycache__
max-line-length = 89
# See list of error codes (we can list here to ignore):
#
# https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes
#
# - Project-agnostic, universal behavior (that supports and enforces this
# and similar projects' style guides, i.e., this developer's preferences):
#
# - ✓ W391: blank line at end of file
#
# - (lb): Personal preference. So that, e.g., Vim's <C-End> is predictable
# and goes to first column of an empty last line, rather than to
# some unknown last column of a nonempty last line.
#
# - ✓ W503 line break before binary operator
#
# - (lb): I'm with Knuth, for readability, because columns align.
#
# Prefer this:
#
# if (some_thing
# and another
# and another_thing):
#
# over this:
#
# if (some_thing and
# another and
# another_thing):
#
# - Project- and dependency-specific, less common options:
#
# - ✗ W605 invalid escape sequence:
#
# - Specific to some Click library usage.
# - (lb): Was warned on regex, e.g., '\d{2}' was flagged.
# - (lb): Was warned on escape in Click help string, e.g., 'blah \# blah'.
#
ignore = W391,W503,W605
[isort]
# See: setup.cfg's [flake8] max-line-length = 89.
line_length = 89
# multi_line_output: 3 - Vertical Hanging Indent.
multi_line_output = 3
not_skip = __init__.py
known_third_party =
# SYNC_ME: setup.py:requirements
apipkg
inflector
pedantic_timedelta
prompt_toolkit
# Testing packages.
factory
faker
fauxfactory
freezegun
pytest
pytest_factoryboy
known_first_party = gettext
sections = STDLIB,FIRSTPARTY,THIRDPARTY,LOCALFOLDER
[tool:pytest]
addopt =
--tb=short
--strict
--rsx