Summary
Add Google Sheets as a first-class data source so users can pull a sheet/range into the local warehouse via tycoon data sources add → tycoon data sync.
Approach
Follow the established add-a-source process (source shim + CatalogEntry + dbt staging models). Per project convention, do not bundle the source — pull dlt's verified google_sheets source on demand via dlt init google_sheets duckdb.
Notes
- Sheets has no native incremental key; first cut is full-refresh replace per sync.
- Range/tab selection should be a config option (default: first sheet, used range).
Summary
Add Google Sheets as a first-class data source so users can pull a sheet/range into the local warehouse via
tycoon data sources add→tycoon data sync.Approach
Follow the established add-a-source process (source shim +
CatalogEntry+ dbt staging models). Per project convention, do not bundle the source — pull dlt's verifiedgoogle_sheetssource on demand viadlt init google_sheets duckdb.google_sheetsinto the source registry +CatalogEntry(id, label, required config keys).tycoon doctorrow when creds are missing/invalid.sources addcan be driven without a TTY (consistent with Non-interactive flags fortycoon data sources add(unblocks online recipe doctests) #44).Notes