fa1083e98907a6a7dc48e8decfa7146708510341
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 Add dependency on cryptogra...

Marco Ricci authored 1 month ago

35) export = [
36)   # The vault configuration exporter relies on cryptography.  Version 38 was
37)   # the first to include the `algorithms.AES256` interface, instead of only
38)   # the `algorithms.AES` interface.
39)   "cryptography >= 38.0.0",
40) ]
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

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

Marco Ricci authored 2 months ago

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

Marco Ricci authored 4 months ago

44) Issues = "https://github.com/the-13th-letter/derivepassphrase/issues"
45) Source = "https://github.com/the-13th-letter/derivepassphrase"
46) 
47) [project.scripts]
48) derivepassphrase = "derivepassphrase.cli:derivepassphrase"
Marco Ricci Add command-line interface...

Marco Ricci authored 3 weeks ago

49) derivepassphrase_export = "derivepassphrase.exporter:derivepassphrase_export"
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

50) 
51) [tool.mypy]
Marco Ricci Add mypy configuration to a...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 4 months ago

53) mypy_path = '$MYPY_CONFIG_FILE_DIR/src'
54) explicit_package_bases = true
55) implicit_reexport = false
56) sqlite_cache = true
57) 
58) [tool.pytest.ini_options]
59) addopts = '--doctest-modules'
60) pythonpath = ['src']
Marco Ricci Add unit tests, both new an...

Marco Ricci authored 3 months ago

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

Marco Ricci authored 4 months ago

62) xfail_strict = true
63) 
64) [tool.hatch.version]
Marco Ricci Remove __about__.py files,...

Marco Ricci authored 3 months ago

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

Marco Ricci authored 4 months ago

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

Marco Ricci authored 1 month ago

67) [tool.hatch.build.targets.sdist]
68) exclude = [
69)     'towncrier.d/[0123456789+]*.md',
70) ]
71) 
72) [tool.hatch.build.targets.wheel]
Marco Ricci Move `sequin` and `ssh_agen...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

74) 
Marco Ricci Add coverage testing

Marco Ricci authored 3 months ago

75) [tool.hatch.envs.hatch-test]
76) default-args = ['src', 'tests']
77) 
78) [[tool.hatch.envs.hatch-test.matrix]]
Marco Ricci Support Python 3.10 and PyP...

Marco Ricci authored 2 months ago

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

Marco Ricci authored 3 months ago

80) 
Marco Ricci Add preliminary tests for t...

Marco Ricci authored 3 weeks ago

81) [[tool.hatch.envs.hatch-test.matrix]]
82) python = ["3.10", "3.11", "3.12", "pypy3.10"]
83) feature = ["export"]
84) 
85) [tool.hatch.envs.hatch-test.overrides]
86) matrix.feature.features = [
87)     { value = "export", if = ["export"] },
88) ]
89) 
Marco Ricci Overhaul dependency and env...

Marco Ricci authored 3 months ago

90) [tool.hatch.env]
91) requires = [
92)   "hatch-mkdocs",
93) ]
94) 
95) [tool.hatch.env.collectors.mkdocs.docs]
96) path = "mkdocs.yml"
97) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 2 months ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 2 months ago

111) ]
112) detached = false
113) 
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

114) [tool.hatch.envs.types]
115) extra-dependencies = [
116)   "mypy>=1.0.0",
Marco Ricci Create the configuration di...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 4 months ago

118) ]
Marco Ricci Add command-line interface...

Marco Ricci authored 3 weeks ago

119) features = [
120)     "export",
121) ]
122) 
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

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

Marco Ricci authored 2 months ago

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

Marco Ricci authored 2 months ago

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

Marco Ricci authored 2 months ago

128) 
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 4 months ago

131) branch = true
132) parallel = true
133) omit = [
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

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

Marco Ricci authored 4 months ago

135) ]
136) 
137) [tool.coverage.paths]
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

138) src = ["src"]
139) tests = ["tests"]
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

140) 
141) [tool.coverage.report]
Marco Ricci Add finished command-line i...

Marco Ricci authored 2 months ago

142) skip_covered = false
143) skip_empty = true
144) precision = 3
145) partial_branches = [
146)     'pragma: no branch',
147) ]
148) exclude_also = [
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

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

Marco Ricci authored 2 months ago

150)   'if (?:typing\.)?TYPE_CHECKING:',
151)   "raise AssertionError",
152)   "raise NotImplementedError",
153)   'assert False',
Marco Ricci Add command-line interface...

Marco Ricci authored 3 weeks ago

154)   '(?:typing\.)?assert_never\(',
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

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

Marco Ricci authored 2 months ago

156) 
157) [tool.ruff]
158) line-length = 79
159) src = ["src"]
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 2 months ago

161) 
162) [tool.ruff.format]
163) quote-style = 'single'
Marco Ricci Reformat everything with ruff

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

165) preview = true
166) 
167) [tool.ruff.lint]
168) preview = true
169) extend-ignore = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

172)     'S101',
173) ]
174) extend-select = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

176)     'E501',
177) ]
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 2 months ago

178) 
179) [tool.ruff.lint.pydocstyle]
180) convention = 'google'
Marco Ricci Fix style issues with ruff...

Marco Ricci authored 1 month ago

181) 
182) [tool.ruff.lint.flake8-pytest-style]
183) parametrize-names-type = 'list'
184) 
185) [tool.ruff.lint.extend-per-file-ignores]
186) "**/tests/**/*" = [
Marco Ricci Annotate settings and selec...

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

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

Marco Ricci authored 1 month ago

200) ]
201) 
202) [tool.hatch.envs.hatch-static-analysis]
203) config-path = "ruff_defaults_v0.5.0.toml"
204) dependencies = ["ruff==0.5.0"]