4c743695b4dd6e60507cbc47001664b9bd31a59e
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

1) [build-system]
2) requires = ["hatchling"]
3) build-backend = "hatchling.build"
4) 
5) [project]
6) name = "derivepassphrase"
7) description = "An almost faithful Python reimplementation of James Coglan's vault."
8) readme = "README.md"
Marco Ricci Support Python 3.10 and PyP...

Marco Ricci authored 2 months ago

9) requires-python = ">=3.10"
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

10) license = "MIT"
11) keywords = []
12) authors = [
13)   { name = "Marco Ricci", email = "m@the13thletter.info" },
14) ]
15) classifiers = [
16)   "Development Status :: 4 - Beta",
17)   "Environment :: Console",
Marco Ricci Fix misspelt project settings

Marco Ricci authored 2 months ago

18)   "License :: OSI Approved :: MIT License",
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

19)   "Programming Language :: Python :: 3",
Marco Ricci Support Python 3.10 and PyP...

Marco Ricci authored 2 months ago

20)   "Programming Language :: Python :: 3.10",
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

21)   "Programming Language :: Python :: 3.11",
22)   "Programming Language :: Python :: 3.12",
23)   "Programming Language :: Python :: Implementation :: CPython",
24)   "Programming Language :: Python :: Implementation :: PyPy",
25) ]
26) dependencies = [
Marco Ricci Overhaul dependency and env...

Marco Ricci authored 3 months ago

27)   "click>=8.1",
Marco Ricci Support Python 3.10 and PyP...

Marco Ricci authored 2 months ago

28)   "typing_extensions",
Marco Ricci Overhaul dependency and env...

Marco Ricci authored 3 months ago

29) ]
Marco Ricci Release 0.1.3

Marco Ricci authored 1 month ago

30) version = "0.1.3"
Marco Ricci Overhaul dependency and env...

Marco Ricci authored 3 months ago

31) 
32) [project.optional-dependencies]
Marco Ricci Support Python 3.10 and PyP...

Marco Ricci authored 2 months ago

33) dev = ["black", "coverage", "hatch>=1.10", "mkdocs", "mkdocs-material",
Marco Ricci Add a changelog and support...

Marco Ricci authored 1 month ago

34)        "mkdocstrings[python]", "pytest>=8.1", "towncrier>=23.11"]
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

35) 
36) [project.urls]
Marco Ricci Set up a web host for the d...

Marco Ricci authored 2 months ago

37) Documentation = "https://the13thletter.info/derivepassphrase/"
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

38) Issues = "https://github.com/the-13th-letter/derivepassphrase/issues"
39) Source = "https://github.com/the-13th-letter/derivepassphrase"
40) 
41) [project.scripts]
42) derivepassphrase = "derivepassphrase.cli:derivepassphrase"
43) 
44) [tool.mypy]
Marco Ricci Add mypy configuration to a...

Marco Ricci authored 1 month ago

45) files = ['src/**/*.py', 'tests/**/*.py']
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

46) mypy_path = '$MYPY_CONFIG_FILE_DIR/src'
47) explicit_package_bases = true
48) implicit_reexport = false
49) sqlite_cache = true
50) 
51) [tool.pytest.ini_options]
52) addopts = '--doctest-modules'
53) pythonpath = ['src']
Marco Ricci Add unit tests, both new an...

Marco Ricci authored 3 months ago

54) testpaths = ['src', 'tests']
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

55) xfail_strict = true
56) 
57) [tool.hatch.version]
Marco Ricci Remove __about__.py files,...

Marco Ricci authored 3 months ago

58) path = "src/derivepassphrase/__init__.py"
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

59) 
Marco Ricci Fix Python package build co...

Marco Ricci authored 1 month ago

60) [tool.hatch.build.targets.sdist]
61) exclude = [
62)     'towncrier.d/[0123456789+]*.md',
63) ]
64) 
65) [tool.hatch.build.targets.wheel]
Marco Ricci Move `sequin` and `ssh_agen...

Marco Ricci authored 1 month ago

66) packages = ['src/derivepassphrase']
Marco Ricci Fix Python package build co...

Marco Ricci authored 1 month ago

67) 
Marco Ricci Add coverage testing

Marco Ricci authored 3 months ago

68) [tool.hatch.envs.hatch-test]
69) default-args = ['src', 'tests']
70) 
71) [[tool.hatch.envs.hatch-test.matrix]]
Marco Ricci Support Python 3.10 and PyP...

Marco Ricci authored 2 months ago

72) python = ["3.10", "3.11", "3.12", "pypy3.10"]
Marco Ricci Add coverage testing

Marco Ricci authored 3 months ago

73) 
Marco Ricci Overhaul dependency and env...

Marco Ricci authored 3 months ago

74) [tool.hatch.env]
75) requires = [
76)   "hatch-mkdocs",
77) ]
78) 
79) [tool.hatch.env.collectors.mkdocs.docs]
80) path = "mkdocs.yml"
81) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

82) [tool.hatch.envs.docs]
83) extra-dependencies = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

84)   # Our documentation uses the Material theme.  It also uses
85)   # `mkdocstrings[python]`, but `hatch-mkdocs` is apparently smart
86)   # enough to pick *that* one up from the MkDocs configuration, but not
87)   # the selected theme...
88)   "mkdocs-material",
89)   # Our documentation uses formatted function signatures (i.e. with
90)   # formatted type annotations), which requires `black`.
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

91)   "black",
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

92)   # Our documentation is generated in multiple versions, orchestrated by
93)   # `mike`.
Marco Ricci Deploy versioned documentat...

Marco Ricci authored 1 month ago

94)   "mike",
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

95) ]
96) detached = false
97) 
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

98) [tool.hatch.envs.types]
99) extra-dependencies = [
100)   "mypy>=1.0.0",
Marco Ricci Create the configuration di...

Marco Ricci authored 1 month ago

101)   "pytest~=8.1",
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

102) ]
103) [tool.hatch.envs.types.scripts]
104) check = "mypy --install-types --non-interactive {args:src/derivepassphrase tests}"
105) 
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

106) [tool.coverage.html]
Marco Ricci Remove coverage from docume...

Marco Ricci authored 2 months ago

107) directory = "html/coverage"
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

108) 
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

109) [tool.coverage.run]
Marco Ricci Move `sequin` and `ssh_agen...

Marco Ricci authored 1 month ago

110) source_pkgs = ["derivepassphrase", "tests"]
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

111) branch = true
112) parallel = true
113) omit = [
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

114)   "__main__.py",
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

115) ]
116) 
117) [tool.coverage.paths]
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

118) src = ["src"]
119) tests = ["tests"]
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

120) 
121) [tool.coverage.report]
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

122) skip_covered = false
123) skip_empty = true
124) precision = 3
125) partial_branches = [
126)     'pragma: no branch',
127) ]
128) exclude_also = [
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

129)   "if __name__ == .__main__.:",
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

130)   'if (?:typing\.)?TYPE_CHECKING:',
131)   "raise AssertionError",
132)   "raise NotImplementedError",
133)   'assert False',
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

134) ]
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 2 months ago

135) 
136) [tool.ruff]
137) line-length = 79
138) src = ["src"]
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

139) extend = "ruff_defaults_v0.5.0.toml"
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 2 months ago

140) 
141) [tool.ruff.format]
142) quote-style = 'single'
Marco Ricci Reformat everything with ruff

Marco Ricci authored 1 month ago

143) docstring-code-line-length = "dynamic"
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

144) preview = true
145) 
146) [tool.ruff.lint]
147) preview = true
148) extend-ignore = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

149)     # We use `assert` regularly to appease the type checker, and because
150)     # it is the right language tool for this job.
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

151)     'S101',
152) ]
153) extend-select = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

154)     # Unlike hatch's standard configuration, we care about line length.
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

155)     'E501',
156) ]
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 2 months ago

157) 
158) [tool.ruff.lint.pydocstyle]
159) convention = 'google'
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

160) 
161) [tool.ruff.lint.flake8-pytest-style]
162) parametrize-names-type = 'list'
163) 
164) [tool.ruff.lint.extend-per-file-ignores]
165) "**/tests/**/*" = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

166)   # Our tests are pytest-style tests, which use `assert` liberally.
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

167)   'A002',
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

168)   # Our tests are regularly parametrized with booleans, for benign
169)   # purposes.
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

170)   'FBT001',
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

171)   # One of our standard modules is called `derivepassphrase._types`.
172)   # Importing this from the tests directory would then automatically
173)   # trigger `PLC2701`.
Marco Ricci Consolidate `types` submodu...

Marco Ricci authored 1 month ago

174)   'PLC2701',
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

175)   # To fully test the `derivepassphrase.cli` module (and a couple other
176)   # things), we need to call and to mock several internal functions,
177)   # which would automatically trigger `SLF001`.
Marco Ricci Consolidate `types` submodu...

Marco Ricci authored 1 month ago

178)   'SLF001',
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

179) ]
180) 
181) [tool.hatch.envs.hatch-static-analysis]
182) config-path = "ruff_defaults_v0.5.0.toml"
183) dependencies = ["ruff==0.5.0"]