tha-wright-stuff 0.1.0__py3-none-any.whl

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.
@@ -0,0 +1,95 @@
1
+ """tha-wright-stuff: the full tha-* Tabular Helper library family in one install."""
2
+
3
+ from tha_aws_runner import (
4
+ AWSBase,
5
+ AWSClients,
6
+ AwsError,
7
+ BatchCountResult,
8
+ BatchQueryResult,
9
+ BatchUpdateResult,
10
+ DdbCostTracker,
11
+ ThaDdb,
12
+ ThaGsi,
13
+ ThaS3,
14
+ ThaSSM,
15
+ cli_auth_check,
16
+ current_identity,
17
+ parse_arn,
18
+ parse_assumed_role_arn,
19
+ )
20
+ from tha_csv_runner import ConfigError, ThaCSV
21
+ from tha_edfi_runner import EdfiError, ThaEdfiBase, ThaStudentAssessment
22
+ from tha_google_runner import GoogleError, ThaSheets
23
+ from tha_map_runner import MapperError, ThaMap
24
+ from tha_req_runner import ReqError, ThaReq
25
+ from tha_snowflake_runner import Session, SnowflakeError, ThaSnowflake, list_profiles
26
+ from tha_utils_helper import (
27
+ DateError,
28
+ DictUtils,
29
+ ListUtils,
30
+ NumError,
31
+ StrError,
32
+ ThaDict,
33
+ ThaDT,
34
+ ThaList,
35
+ ThaNum,
36
+ ThaStr,
37
+ ThaType,
38
+ TypeUtils,
39
+ UtilsError,
40
+ )
41
+
42
+ __version__ = "0.1.0"
43
+ __all__ = [
44
+ # tha-aws-runner
45
+ "AWSBase",
46
+ "AWSClients",
47
+ "AwsError",
48
+ "BatchCountResult",
49
+ "BatchQueryResult",
50
+ "BatchUpdateResult",
51
+ # tha-csv-runner
52
+ "ConfigError",
53
+ "DateError",
54
+ "DdbCostTracker",
55
+ "DictUtils",
56
+ # tha-edfi-runner
57
+ "EdfiError",
58
+ # tha-google-runner
59
+ "GoogleError",
60
+ "ListUtils",
61
+ # tha-map-runner
62
+ "MapperError",
63
+ "NumError",
64
+ # tha-req-runner
65
+ "ReqError",
66
+ # tha-snowflake-runner
67
+ "Session",
68
+ "SnowflakeError",
69
+ "StrError",
70
+ "ThaCSV",
71
+ "ThaDT",
72
+ "ThaDdb",
73
+ # tha-utils-helper
74
+ "ThaDict",
75
+ "ThaEdfiBase",
76
+ "ThaGsi",
77
+ "ThaList",
78
+ "ThaMap",
79
+ "ThaNum",
80
+ "ThaReq",
81
+ "ThaS3",
82
+ "ThaSSM",
83
+ "ThaSheets",
84
+ "ThaSnowflake",
85
+ "ThaStr",
86
+ "ThaStudentAssessment",
87
+ "ThaType",
88
+ "TypeUtils",
89
+ "UtilsError",
90
+ "cli_auth_check",
91
+ "current_identity",
92
+ "list_profiles",
93
+ "parse_arn",
94
+ "parse_assumed_role_arn",
95
+ ]
File without changes
@@ -0,0 +1,89 @@
1
+ Metadata-Version: 2.4
2
+ Name: tha-wright-stuff
3
+ Version: 0.1.0
4
+ Summary: A Tabular Helper meta-package that bundles the full tha-* library family in a single install.
5
+ Project-URL: Homepage, https://github.com/tha-guy-nate/tha-wright-stuff
6
+ Project-URL: Issues, https://github.com/tha-guy-nate/tha-wright-stuff/issues
7
+ Author: Nate Wright
8
+ License: MIT
9
+ Keywords: api,aws,csv,edfi,google,helper,meta,snowflake,tabular,utilities
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: License :: OSI Approved :: MIT License
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Classifier: Topic :: Utilities
18
+ Classifier: Typing :: Typed
19
+ Requires-Python: >=3.10
20
+ Requires-Dist: tha-aws-runner>=0.1.15
21
+ Requires-Dist: tha-csv-runner>=0.2.6
22
+ Requires-Dist: tha-edfi-runner>=0.1.2
23
+ Requires-Dist: tha-google-runner>=0.1.0
24
+ Requires-Dist: tha-map-runner>=0.2.7
25
+ Requires-Dist: tha-req-runner>=0.2.2
26
+ Requires-Dist: tha-snowflake-runner>=0.1.1
27
+ Requires-Dist: tha-utils-helper>=0.2.3
28
+ Provides-Extra: dev
29
+ Requires-Dist: mypy>=2.1.0; extra == 'dev'
30
+ Requires-Dist: pytest>=9.1.0; extra == 'dev'
31
+ Requires-Dist: ruff>=0.15.17; extra == 'dev'
32
+ Description-Content-Type: text/markdown
33
+
34
+ # tha-wright-stuff
35
+
36
+ > Install the entire Tabular Helper (`tha-*`) library family in one shot.
37
+
38
+ ```bash
39
+ pip install tha-wright-stuff
40
+ ```
41
+
42
+ ---
43
+
44
+ ## What is this?
45
+
46
+ `tha-wright-stuff` serves two purposes at once:
47
+
48
+ ### 1. Meta-package
49
+
50
+ One install pulls in every `tha-*` library and re-exports all of their public symbols from a single namespace. Instead of installing and importing from eight separate packages, you can just do:
51
+
52
+ ```python
53
+ from tha_wright_stuff import ThaCSV, ThaMap, ThaReq, ThaDict, ThaDdb, ThaEdfiBase, ThaSheets, ThaSnowflake
54
+ ```
55
+
56
+ Every public class, function, and error type from all eight libraries is available at the top level.
57
+
58
+ ### 2. Cross-family integration canary
59
+
60
+ `uv.lock` is intentionally **not committed** to this repo. That means every CI run resolves all eight libraries fresh from PyPI — no pinned snapshot. If any two libraries in the family ship incompatible dependency requirements, this repo's CI will fail, surfacing the conflict before users hit it.
61
+
62
+ ---
63
+
64
+ ## Included libraries
65
+
66
+ | Package | PyPI | GitHub | What it does |
67
+ |---|---|---|---|
68
+ | **tha-csv-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-csv-runner)](https://pypi.org/project/tha-csv-runner/) | [tha-csv-runner](https://github.com/tha-guy-nate/tha-csv-runner) | Read and write CSVs with progress bars, header validation, chunking, sort/filter, and an optional per-row validator callback. |
69
+ | **tha-map-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-map-runner)](https://pypi.org/project/tha-map-runner/) | [tha-map-runner](https://github.com/tha-guy-nate/tha-map-runner) | Enrich and join dicts using dotted-path projection and O(n+m) index-based lookups. Supports left / inner / anti joins and DynamoDB result shapes. |
70
+ | **tha-req-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-req-runner)](https://pypi.org/project/tha-req-runner/) | [tha-req-runner](https://github.com/tha-guy-nate/tha-req-runner) | Transport layer for API runners — session management, retries, `safe_call`, and a normalized `parse_response` dict. Supports both `requests` and `httpx` backends. |
71
+ | **tha-aws-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-aws-runner)](https://pypi.org/project/tha-aws-runner/) | [tha-aws-runner](https://github.com/tha-guy-nate/tha-aws-runner) | DynamoDB (`ThaDdb`), GSI queries (`ThaGsi`), S3 (`ThaS3`), SSM Parameter Store (`ThaSSM`), and a `DdbCostTracker` context manager that tallies RCU/WCU and USD cost per run. |
72
+ | **tha-utils-helper** | [![PyPI](https://img.shields.io/pypi/v/tha-utils-helper)](https://pypi.org/project/tha-utils-helper/) | [tha-utils-helper](https://github.com/tha-guy-nate/tha-utils-helper) | Zero-dependency utilities: `ThaStr` (slugify, format), `ThaNum` (currency, parens-as-negative, cast), `ThaDT` (auto-detect date formats), `ThaDict` (pick, omit, rename), `ThaList` (chunk, flatten), `ThaType` (bool/int/float coercion). All include matching `*_rows` batch methods. |
73
+ | **tha-edfi-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-edfi-runner)](https://pypi.org/project/tha-edfi-runner/) | [tha-edfi-runner](https://github.com/tha-guy-nate/tha-edfi-runner) | Ed-Fi ODS API client — OAuth client-credentials auth, pagination, and chunked parallel posting via `ThreadPoolExecutor`. |
74
+ | **tha-google-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-google-runner)](https://pypi.org/project/tha-google-runner/) | [tha-google-runner](https://github.com/tha-guy-nate/tha-google-runner) | Google Sheets reader/writer (`ThaSheets`) using a service account — reads sheets to row dicts, writes row dicts back with optional header control. |
75
+ | **tha-snowflake-runner** | [![PyPI](https://img.shields.io/pypi/v/tha-snowflake-runner)](https://pypi.org/project/tha-snowflake-runner/) | [tha-snowflake-runner](https://github.com/tha-guy-nate/tha-snowflake-runner) | Snowflake query runner (`ThaSnowflake`) — named connection profiles, query execution to row dicts, and chunked parallel inserts. |
76
+
77
+ ---
78
+
79
+ ## Requirements
80
+
81
+ - Python 3.10+
82
+
83
+ All eight libraries are installed automatically as dependencies. Optional extras from individual libraries (e.g. `tha-csv-runner[excel]`, `tha-req-runner[httpx]`) are not pulled in by default — install them separately if needed.
84
+
85
+ ---
86
+
87
+ ## License
88
+
89
+ MIT
@@ -0,0 +1,5 @@
1
+ tha_wright_stuff/__init__.py,sha256=enlX7DHC3ufI7dioxkl_-tO0yLOFo1uOhdYfFY54ew0,1927
2
+ tha_wright_stuff/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ tha_wright_stuff-0.1.0.dist-info/METADATA,sha256=_qygh3rVLHGWhJeGmwBC8fO4TdGRA9lQIJdjNxc2s6w,5608
4
+ tha_wright_stuff-0.1.0.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
5
+ tha_wright_stuff-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.30.1
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any