Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
49 lines (44 loc) · 1.73 KB
/
Copy pathpyproject.toml
File metadata and controls
49 lines (44 loc) · 1.73 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
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "wrodfreq"
version = "0.2.0"
description = "Romanian word-frequency table on the Zipf scale — drop-in compatible with wordfreq"
readme = "README.md"
requires-python = ">=3.10"
authors = [{ name = "pax", email = "pax@mioritics.ro" }]
dependencies = [
# The shipped package's only runtime dependency (spec §10.2: "msgpack +
# xz" for the data file; xz/lzma is stdlib). wordfreq itself depends on
# msgpack for the same purpose.
"msgpack>=1.0",
]
[project.optional-dependencies]
# Third-party deps needed only by the build/ pipeline scripts, never at import
# time by the shipped wrodfreq package.
build = [
"datasets>=2.19",
"huggingface_hub>=0.23",
# ingest_social.py only: the Reddit per-subreddit dumps are zstandard
# ndjson, and they need max_window_size=2**31 to decode (see that
# module's docstring) — the stdlib has no zstd decoder before 3.14.
"zstandard>=0.22",
]
dev = [
"pytest>=8",
]
[tool.hatch.build]
# Hatchling's default file selection is git-tracked files only, and the data
# files are deliberately gitignored (large binaries, rebuilt by
# build/build_package.py rather than committed — see .gitignore). This has
# to be at the top level, not just under targets.wheel: `uv build`/`pip
# wheel` build the wheel FROM the sdist, so if the sdist doesn't have the
# files either, there's nothing for the wheel step to include regardless of
# its own artifacts setting — confirmed by inspecting both archives after a
# real build, not assumed from the docs.
artifacts = ["wrodfreq/data/*.msgpack.xz"]
[tool.hatch.build.targets.wheel]
packages = ["wrodfreq"]
[tool.pytest.ini_options]
testpaths = ["tests"]