.gitignore
CHANGELOG.md
CLAUDE.md
CONTEXT.md
LICENSE
MANIFEST.in
pyproject.toml
readme.md
readme_ru.md
.github/workflows/publish.yml
airflow_provider_google_sheets/__init__.py
airflow_provider_google_sheets/_version.py
airflow_provider_google_sheets/exceptions.py
airflow_provider_google_sheets.egg-info/PKG-INFO
airflow_provider_google_sheets.egg-info/SOURCES.txt
airflow_provider_google_sheets.egg-info/dependency_links.txt
airflow_provider_google_sheets.egg-info/entry_points.txt
airflow_provider_google_sheets.egg-info/requires.txt
airflow_provider_google_sheets.egg-info/scm_file_list.json
airflow_provider_google_sheets.egg-info/scm_version.json
airflow_provider_google_sheets.egg-info/top_level.txt
airflow_provider_google_sheets/hooks/__init__.py
airflow_provider_google_sheets/hooks/google_sheets.py
airflow_provider_google_sheets/operators/__init__.py
airflow_provider_google_sheets/operators/manage.py
airflow_provider_google_sheets/operators/read.py
airflow_provider_google_sheets/operators/write.py
airflow_provider_google_sheets/utils/__init__.py
airflow_provider_google_sheets/utils/a1.py
airflow_provider_google_sheets/utils/data_formats.py
airflow_provider_google_sheets/utils/headers.py
airflow_provider_google_sheets/utils/merge_key.py
airflow_provider_google_sheets/utils/merge_planner.py
airflow_provider_google_sheets/utils/retry.py
airflow_provider_google_sheets/utils/row_filter.py
airflow_provider_google_sheets/utils/schema.py
airflow_provider_google_sheets/utils/write_extent.py
docs/adr/0001-no-transient-retry-object.md
docs/adr/0002-no-shared-reader-framework.md
docs/plans/20260702-deep-hook-methods-design.md
docs/plans/20260702-pure-write-planning-design.md
docs/plans/completed/20260309-fix-numeric-thousands-separator.md
docs/plans/completed/20260309-robust-numeric-parsing.md
docs/plans/completed/20260309-strip-strings.md
docs/plans/completed/20260310-list-sheets-and-row-filtering.md
docs/plans/completed/20260316-fix-smart-merge-empty-sheet-insert-position.md
docs/plans/completed/20260316-smart-merge-insert-not-append.md
docs/plans/completed/20260316-smart-merge-replace-strategy.md
docs/plans/completed/20260316-table-start-parameter.md
docs/plans/completed/20260316-write-headers-on-empty-sheet.md
docs/plans/completed/20260317-fix-insert-dimension-api-error.md
docs/plans/completed/20260317-merge-style-fix-and-rename.md
docs/plans/completed/20260325-partitioned-write.md
docs/plans/completed/20260325-write-column-mapping.md
docs/plans/completed/20260326-fix-400-error-handling.md
docs/plans/completed/20260326-max-xcom-bytes.md
docs/plans/completed/20260326-schema-input-format.md
docs/plans/completed/20260326-validate-write-mode-in-init.md
docs/plans/completed/20260403-read-filter-column.md
docs/plans/completed/20260417-request-timeout.md
docs/plans/completed/20260604-fix-insert-rows-grid-extension.md
docs/plans/completed/20260605-normalize-merge-key-format.md
docs/plans/completed/20260624-merge-key-date-normalization.md
docs/plans/completed/20260625-merge-extraction-refactor.md
docs/plans/completed/20260627-transient-404-retry.md
docs/plans/completed/20260629-sort-keys.md
docs/plans/completed/20260701-idempotent-append-design.md
examples/example_bigquery_to_sheets.py
examples/example_bq_query_to_sheets.py
examples/example_manage.py
examples/example_read.py
examples/example_sheets_to_bigquery.py
examples/example_smart_merge.py
examples/example_write.py
tests/__init__.py
tests/test_hooks/__init__.py
tests/test_hooks/test_google_sheets.py
tests/test_operators/__init__.py
tests/test_operators/test_manage.py
tests/test_operators/test_read.py
tests/test_operators/test_write.py
tests/test_utils/__init__.py
tests/test_utils/test_a1.py
tests/test_utils/test_data_formats.py
tests/test_utils/test_headers.py
tests/test_utils/test_merge_key.py
tests/test_utils/test_merge_planner.py
tests/test_utils/test_retry.py
tests/test_utils/test_row_filter.py
tests/test_utils/test_schema.py
tests/test_utils/test_write_extent.py