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 Python dep floors pre-commit

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

pip install tha-wright-stuff[all]   # recommended: core family + all optional extras
pip install tha-wright-stuff        # core family only

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:

# AWS
from tha_wright_stuff import ThaDdb, ThaGsi, ThaS3, ThaSSM, DdbCostTracker, cli_auth_check, current_identity, parse_arn, parse_assumed_role_arn
# CSV
from tha_wright_stuff import ThaCSV
# Ed-Fi
from tha_wright_stuff import ThaEdfiBase, ThaStudentAssessment
# Google
from tha_wright_stuff import ThaSheets, ThaDocs, ThaDrive, ThaSlides, ThaGmail
# Map
from tha_wright_stuff import ThaMap
# Requests
from tha_wright_stuff import ThaReq
# Snowflake
from tha_wright_stuff import ThaSnowflake, Session, list_profiles
# Utils
from tha_wright_stuff import ThaStr, ThaNum, ThaDT, ThaDict, ThaList, ThaType

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. The [all] extra additionally installs optional extras across the family (currently tha-req-runner[httpx] for the httpx transport backend).


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.14.tar.gz (8.5 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.14-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tha_wright_stuff-0.1.14.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tha_wright_stuff-0.1.14.tar.gz
Algorithm Hash digest
SHA256 52ae98d8201bcf317bebecc2a56f07c6d229db71468a42f3fcead1c6a3aa4ff8
MD5 fc2836f6c5820c0a6f52dbfea5fe78b8
BLAKE2b-256 c6d122d3e3c63f00ee628d944a7279087a625758caf60e6d110a2aa3545c6d84

See more details on using hashes here.

Provenance

The following attestation bundles were made for tha_wright_stuff-0.1.14.tar.gz:

Publisher: publish.yml on tha-guy-nate/tha-wright-stuff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

File hashes

Hashes for tha_wright_stuff-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 66fdaf558738c0139ce33a4fe6a1a8c10e0b5ff565e987ede45f090774a3f8e7
MD5 423624748beb30249efa815a27cd6cc1
BLAKE2b-256 a9c50ff2a76b2f62c6424b28cb06cad5e0ff27f3e1b14dc5daa5b319923b725a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tha_wright_stuff-0.1.14-py3-none-any.whl:

Publisher: publish.yml on tha-guy-nate/tha-wright-stuff

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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