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. 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.


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.7.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.7-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tha_wright_stuff-0.1.7.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.7.tar.gz
Algorithm Hash digest
SHA256 5b3a1424f7a8b9e094c91cca959c81208ff2f718aa4367e29326b13ba380eb23
MD5 ab75f367852032ef76f499962ba16238
BLAKE2b-256 7ce7ee5db6fe1c6cab5a4089dff0e17bed3e8adad2e21f7bda20ae4d0d9d972e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tha_wright_stuff-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 cc584ca15a13a11a9f7fa3a4bf224ad9ee9e0ef44a5a8cdae9f9fdbf559a7ef0
MD5 6760494e5820c89d819e9722f0f7192a
BLAKE2b-256 62682fca7fe3b848a32b554928b186bf1d9644a59ff7844768f0fc08c2838b4b

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