Skip to main content

A Tabular Helper meta-package that bundles the full tha-* library family in a single install.

Project description

tha-wright-stuff

PyPI dep floors

Install the entire Tabular Helper (tha-*) library family in one shot.

pip install tha-wright-stuff        # core family
pip install tha-wright-stuff[all]   # + all optional extras (httpx backend, etc.)

What is this?

tha-wright-stuff serves two purposes at once:

1. Meta-package

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:

from tha_wright_stuff import ThaCSV, ThaMap, ThaReq, ThaDict, ThaDdb, ThaEdfiBase, ThaSheets, ThaDocs, ThaDrive, ThaSlides, ThaGmail, ThaSnowflake

Every public class, function, and error type from all eight libraries is available at the top level.

2. Cross-family integration canary

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.


Included libraries

Package PyPI GitHub What it does
tha-csv-runner PyPI tha-csv-runner Read and write CSVs with progress bars, header validation, chunking, sort/filter, and an optional per-row validator callback.
tha-map-runner PyPI 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.
tha-req-runner PyPI 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.
tha-aws-runner PyPI tha-aws-runner DynamoDB (ThaDdb), GSI queries (ThaGsi), S3 (ThaS3), SSM Parameter Store (ThaSSM), a DdbCostTracker context manager that tallies RCU/WCU and USD cost per run, and standalone helpers (cli_auth_check, current_identity, parse_arn, parse_assumed_role_arn).
tha-utils-helper PyPI 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.
tha-edfi-runner PyPI tha-edfi-runner Ed-Fi ODS API client — OAuth client-credentials auth, pagination, and chunked parallel posting via ThreadPoolExecutor.
tha-google-runner PyPI tha-google-runner Typed wrappers for Google Sheets (ThaSheets), Docs (ThaDocs), Drive (ThaDrive), Slides (ThaSlides), and Gmail (ThaGmail) — OAuth2 or ADC auth, read/write/upsert rows, file download, presentation creation, and email sending.
tha-snowflake-runner PyPI tha-snowflake-runner Snowflake query runner (ThaSnowflake) — named connection profiles, query execution to row dicts, and chunked parallel inserts.

Requirements

  • Python 3.10+

All eight libraries are installed automatically as dependencies. Use pip install tha-wright-stuff[all] to also pull in optional extras (currently tha-req-runner[httpx]).


License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tha_wright_stuff-0.1.8.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tha_wright_stuff-0.1.8-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file tha_wright_stuff-0.1.8.tar.gz.

File metadata

  • Download URL: tha_wright_stuff-0.1.8.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tha_wright_stuff-0.1.8.tar.gz
Algorithm Hash digest
SHA256 dda838a81691a1e6ae317f4afd3f37b60b3b60c8fa88dad3dc1ebb683c47deb2
MD5 9ecef6d682e68c7b2017844d49a42b0d
BLAKE2b-256 2bf92ef9fdef09a6970ace856195a665a46f2254ac46d6c134fa736af95a0d07

See more details on using hashes here.

File details

Details for the file tha_wright_stuff-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: tha_wright_stuff-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tha_wright_stuff-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 5243d06bd2727c00f4fcfa8d9025adcd9f5221f0985767836ce807010089bc95
MD5 82cbf3d218a188c4c628b841f0cc06a5
BLAKE2b-256 41ea3bf81ccd6db443149728badee081dfe87e714907dd9b3e34e83315a01add

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page