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[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.13.tar.gz (7.4 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.13-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tha_wright_stuff-0.1.13.tar.gz
  • Upload date:
  • Size: 7.4 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.13.tar.gz
Algorithm Hash digest
SHA256 6f5c45c5c3a4e213777b5600f212671823389b5091e6ec4ba3f3f95b3775638d
MD5 02ddcf6d267125b1a92d0f71dd19dd6c
BLAKE2b-256 31198b05eefd813f6d11e3b5329ff9cd0dac004d47aa4bff6686f4c836165253

See more details on using hashes here.

Provenance

The following attestation bundles were made for tha_wright_stuff-0.1.13.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.13-py3-none-any.whl.

File metadata

File hashes

Hashes for tha_wright_stuff-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 fc839dd27ed7de8a457a522f0c2958213e5de2b38eb3eb7ff472f15fdcdb2698
MD5 37f2d33982780fbea7292d82cb4728ef
BLAKE2b-256 b64181f411aa49bef9677f313201a56bc4a4c894f6603bd81797742eefb51d32

See more details on using hashes here.

Provenance

The following attestation bundles were made for tha_wright_stuff-0.1.13-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