{"id":493,"library":"google-cloud-dataform","title":"Google Cloud Dataform","description":"Google Cloud Dataform is a service for developing, creating, documenting, testing, and updating curated tables in BigQuery. This Python client library (version 0.9.0) provides an interface to interact with the Dataform API. Google Cloud client libraries typically follow a regular release cadence, often coinciding with API updates or bug fixes, and are generally well-maintained.","status":"active","version":"0.9.0","language":"python","source_language":"en","source_url":"https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-dataform","tags":["google cloud","dataform","etl","data orchestration","bigquery"],"install":[{"cmd":"pip install google-cloud-dataform","lang":"bash","label":"Install latest version"}],"dependencies":[{"reason":"Core library for Google Cloud API clients.","package":"google-api-core","optional":false},{"reason":"Handles authentication with Google Cloud services.","package":"google-auth","optional":false},{"reason":"Provides Pythonic wrappers around Protocol Buffer messages.","package":"proto-plus","optional":false}],"imports":[{"wrong":"from google.cloud import dataform_v1beta","symbol":"DataformClient","correct":"from google.cloud.dataform_v1beta1 import DataformClient"}],"quickstart":{"code":"import os\nfrom google.cloud import dataform_v1beta\n\n# Set your Google Cloud Project ID and Location\n# For example, 'my-project-id' and 'us-central1'\nproject_id = os.environ.get('GOOGLE_CLOUD_PROJECT', 'your-project-id')\nlocation = 'us-central1' # Replace with your Dataform repository location\n\ndef list_dataform_repositories(project_id: str, location: str):\n    \"\"\"Lists Dataform repositories in a given project and location.\"\"\"\n    client = dataform_v1beta.DataformClient()\n    parent = f\"projects/{project_id}/locations/{location}\"\n\n    print(f\"Listing Dataform repositories in {parent}:\")\n    try:\n        for repository in client.list_repositories(parent=parent):\n            print(f\"- Repository: {repository.name}\")\n    except Exception as e:\n        print(f\"Error listing repositories: {e}\")\n        print(\"Please ensure the Dataform API is enabled and your account has the necessary permissions.\")\n\nif __name__ == \"__main__\":\n    list_dataform_repositories(project_id, location)","lang":"python","description":"This quickstart initializes a Dataform client and lists all Dataform repositories within a specified Google Cloud project and location. Ensure your `GOOGLE_CLOUD_PROJECT` environment variable is set or replace 'your-project-id' with your actual project ID, and set the correct location. Authentication is handled automatically via Application Default Credentials (ADC)."},"warnings":[{"fix":"Migrate to using custom service accounts for Dataform repositories and ensure `roles/iam.serviceAccountUser` is granted to them. Refer to Google Cloud documentation on 'Use strict act-as mode' and 'Verify act-as permissions'.","message":"As of January 19, 2026, Dataform workflows, BigQuery notebooks, pipelines, and data preparations enforce strict act-as mode at the project level. This requires using custom service accounts instead of the default Dataform service agent across all repositories and granting the Service Account User role (`roles/iam.serviceAccountUser`) to the default Dataform service agent and relevant principals to avoid failures.","severity":"breaking","affected_versions":">= 0.9.0"},{"fix":"Migrate any existing legacy Dataform projects to Dataform in Google Cloud Platform. Refer to the official migration guide.","message":"Legacy Dataform was deprecated on February 26, 2024. Projects running on legacy Dataform cannot be accessed after this date.","severity":"deprecated","affected_versions":"N/A (affects old Dataform product, not this client library directly)"},{"fix":"Pin your dependency to specific patch versions (e.g., `google-cloud-dataform==0.9.0`) to prevent unexpected breakage during upgrades, and thoroughly test minor version updates.","message":"The `google-cloud-dataform` library is currently in `0.x.x` version series, indicating that its API surface might still undergo backward-incompatible changes between minor versions (e.g., 0.8.0 to 0.9.0). While Google aims for stability, pre-1.0 releases do not strictly adhere to semantic versioning guarantees.","severity":"gotcha","affected_versions":"< 1.0.0"},{"fix":"Do not build critical system logic solely dependent on the exact format or content of library-generated log messages. Configure standard Python logging handlers to capture logs at appropriate levels.","message":"The library's internal logging events (occurrence, level, content) may be refined without being flagged as breaking changes. Avoid depending on the immutability of these logging events.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Upgrade your Python environment to version 3.7 or higher. All current active and maintenance versions of Python (>=3.7) are compatible.","message":"Python versions 3.6 and below are no longer supported by Google Cloud client libraries, including `google-cloud-dataform`.","severity":"breaking","affected_versions":"<= 3.6"},{"fix":"Ensure the `google-cloud-dataform` library is installed using `pip install google-cloud-dataform`. If already installed, ensure it is up-to-date or compatible with the desired API version (`dataform_v1beta`). Verify installed packages with `pip freeze` and consult the library's documentation or changelog for module availability and import paths.","message":"The required `google-cloud-dataform` client library, or the specific version containing the `dataform_v1beta` submodule, may not be installed or is incompatible with the import statement. Importing client components directly from `google.cloud` (e.g., `from google.cloud import dataform_v1beta`) depends on the individual client library being correctly installed and compatible.","severity":"breaking","affected_versions":"All versions"},{"fix":"Use `from google.cloud.dataform_v1beta import DataformClient` to import the Dataform v1beta client, or `from google.cloud import dataform` for the stable client if that is desired, followed by `dataform.DataformClient`.","message":"Attempting to import `dataform_v1beta` directly from `google.cloud` (e.g., `from google.cloud import dataform_v1beta`) will result in an `ImportError`. The Dataform v1beta client is typically found within its own subpackage.","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"search_vec":"'0.9.0':26 'api':35,49 'bigqueri':20,66 'bug':52 'cadenc':45 'client':23,38 'cloud':2,5,37,61 'coincid':47 'creat':12 'curat':17 'data':64 'dataform':3,6,34,62 'develop':11 'document':13 'etl':63 'fix':53 'follow':41 'general':56 'googl':1,4,36,60 'interact':31 'interfac':29 'librari':24,39 'maintain':59 'often':46 'orchestr':65 'provid':27 'python':22 'regular':43 'releas':44 'servic':9 'tabl':18 'test':14 'typic':40 'updat':16,50 'version':25 'well':58 'well-maintain':57","created_at":"2026-03-28T15:15:58.910424+00:00","updated_at":"2026-04-16T15:21:04.776398+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":0,"quickstart_score":0,"quickstart_tag":"stale","pypi_latest":"0.11.3","cli_name":"","cli_version":null,"type":"library","homepage":"https://cloud.google.com/dataform","github":"https://github.com/googleapis/google-cloud-python","docs":null,"changelog":null,"pypi":"https://pypi.org/project/google-cloud-dataform/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["gcp","data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-30","last_verified":"2026-08-27","next_check":"2026-07-30","install_tag":"stale"}}