census-loader 0.1.0__tar.gz → 0.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {census_loader-0.1.0/src/census_loader.egg-info → census_loader-0.1.2}/PKG-INFO +2 -1
- {census_loader-0.1.0 → census_loader-0.1.2}/pyproject.toml +2 -1
- {census_loader-0.1.0 → census_loader-0.1.2/src/census_loader.egg-info}/PKG-INFO +2 -1
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader.egg-info/SOURCES.txt +1 -0
- census_loader-0.1.2/tests/test_typed.py +46 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/LICENSE +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/README.md +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/setup.cfg +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader/__init__.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader/load.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader/py.typed +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader/series.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader/utils.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader.egg-info/dependency_links.txt +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader.egg-info/requires.txt +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/src/census_loader.egg-info/top_level.txt +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/tests/test_catalog.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/tests/test_clean_frame_and_guards.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/tests/test_discovery_and_clean.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/tests/test_geography_and_loader.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/tests/test_pull_loop.py +0 -0
- {census_loader-0.1.0 → census_loader-0.1.2}/tests/test_utils_uncovered.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: census-loader
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: A Python wrapper around the U.S. Census Bureau API that abstracts away variable codes, dataset endpoints, and FIPS identifiers behind a clean, human-readable interface.
|
|
5
5
|
Author: Ian Solberg
|
|
6
6
|
License: MIT
|
|
@@ -14,6 +14,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.12
|
|
16
16
|
Classifier: Topic :: Scientific/Engineering
|
|
17
|
+
Classifier: Typing :: Typed
|
|
17
18
|
Requires-Python: >=3.10
|
|
18
19
|
Description-Content-Type: text/markdown
|
|
19
20
|
License-File: LICENSE
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "census-loader"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.2"
|
|
8
8
|
description = "A Python wrapper around the U.S. Census Bureau API that abstracts away variable codes, dataset endpoints, and FIPS identifiers behind a clean, human-readable interface."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -22,6 +22,7 @@ classifiers = [
|
|
|
22
22
|
"Programming Language :: Python :: 3.11",
|
|
23
23
|
"Programming Language :: Python :: 3.12",
|
|
24
24
|
"Topic :: Scientific/Engineering",
|
|
25
|
+
"Typing :: Typed",
|
|
25
26
|
]
|
|
26
27
|
|
|
27
28
|
[project.optional-dependencies]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: census-loader
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: A Python wrapper around the U.S. Census Bureau API that abstracts away variable codes, dataset endpoints, and FIPS identifiers behind a clean, human-readable interface.
|
|
5
5
|
Author: Ian Solberg
|
|
6
6
|
License: MIT
|
|
@@ -14,6 +14,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.12
|
|
16
16
|
Classifier: Topic :: Scientific/Engineering
|
|
17
|
+
Classifier: Typing :: Typed
|
|
17
18
|
Requires-Python: >=3.10
|
|
18
19
|
Description-Content-Type: text/markdown
|
|
19
20
|
License-File: LICENSE
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import sys
|
|
3
|
+
from pathlib import Path
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
def _classifier_declared(pyproject: Path, classifier: str) -> bool:
|
|
7
|
+
"""Is this classifier declared in pyproject.toml?
|
|
8
|
+
|
|
9
|
+
`tomllib` IS STDLIB ONLY FROM 3.11 and this package supports >=3.10, so a
|
|
10
|
+
bare `import tomllib` failed COLLECTION on the oldest Python it claims to
|
|
11
|
+
support. Measured on CI 2026-09-17: 3.11 green, 3.10 red with
|
|
12
|
+
`ModuleNotFoundError: No module named 'tomllib'`, and because the publish
|
|
13
|
+
job is gated on the tests, the release never ran at all.
|
|
14
|
+
|
|
15
|
+
On 3.10 this asserts against the file TEXT rather than skipping. A skipped
|
|
16
|
+
test here would read as green while asserting nothing, which is precisely
|
|
17
|
+
the fault this test was written to catch.
|
|
18
|
+
"""
|
|
19
|
+
if sys.version_info >= (3, 11):
|
|
20
|
+
import tomllib
|
|
21
|
+
|
|
22
|
+
with pyproject.open("rb") as fh:
|
|
23
|
+
data = tomllib.load(fh)
|
|
24
|
+
return classifier in data.get("project", {}).get("classifiers", [])
|
|
25
|
+
return classifier in pyproject.read_text(encoding="utf-8")
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def _repo_root_from_test_file() -> Path:
|
|
29
|
+
# The test file sits under <repo>/tests/test_typed.py
|
|
30
|
+
# Resolve repo root by going up from this file's directory.
|
|
31
|
+
return Path(__file__).resolve().parents[1]
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def test_pyproject_classifiers_include_typing_and_license():
|
|
35
|
+
root = _repo_root_from_test_file()
|
|
36
|
+
pyproject = root / "pyproject.toml"
|
|
37
|
+
assert pyproject.exists(), f"pyproject.toml not found at {pyproject}"
|
|
38
|
+
|
|
39
|
+
assert _classifier_declared(pyproject, "Typing :: Typed"), \
|
|
40
|
+
"Typing :: Typed classifier missing in pyproject.toml [project].classifiers"
|
|
41
|
+
assert _classifier_declared(pyproject, "License :: OSI Approved :: MIT License"), \
|
|
42
|
+
"MIT license classifier missing from pyproject.toml [project].classifiers"
|
|
43
|
+
|
|
44
|
+
# Ensure the package ships py.typed marker in the installed source tree layout
|
|
45
|
+
pytyped_marker = root / "src" / "census_loader" / "py.typed"
|
|
46
|
+
assert pytyped_marker.exists(), f"py.typed marker missing at {pytyped_marker}"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|