Title: `An error occurred: module 'importlib.metadata' has no attribute 'packages_distributions'` · Issue #857 · googleapis/python-api-core · GitHub
Open Graph Title: `An error occurred: module 'importlib.metadata' has no attribute 'packages_distributions'` · Issue #857 · googleapis/python-api-core
X Title: `An error occurred: module 'importlib.metadata' has no attribute 'packages_distributions'` · Issue #857 · googleapis/python-api-core
Description: This is happening because importlib.metadata.packages_distributions was added in Python 3.10, but the current version check implementation allows this to be called for 3.8 and above: python-api-core/google/api_core/_python_version_suppor...
Open Graph Description: This is happening because importlib.metadata.packages_distributions was added in Python 3.10, but the current version check implementation allows this to be called for 3.8 and above: python-api-cor...
X Description: This is happening because importlib.metadata.packages_distributions was added in Python 3.10, but the current version check implementation allows this to be called for 3.8 and above: python-api-cor...
Opengraph URL: https://github.com/googleapis/python-api-core/issues/857
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"`An error occurred: module 'importlib.metadata' has no attribute 'packages_distributions'`","articleBody":"This is happening because `importlib.metadata.packages_distributions` was added in Python 3.10, but the current version check implementation allows this to be called for 3.8 and above: https://github.com/googleapis/python-api-core/blob/c97b3a004044ebf8b35c2a7ba97409d7795e11b0/google/api_core/_python_version_support.py#L150-L176\n\nIntroduced in this commit: https://github.com/googleapis/python-api-core/commit/d36e896f98a2371c4d58ce1a7a3bc1a77a081836\n\nIn our case, this is a problem purely because the error is printed rather than logged, as we are using applications designed around a communication spec that is particularly sensitive to unexpected stdout writes.\n\n---\n\nThanks for stopping by to let us know something could be better!\n\n**PLEASE READ**: If you have a support contract with Google, please create an issue in the [support console](https://cloud.google.com/support/) instead of filing on GitHub. This will ensure a timely response.\n\nPlease run down the following list and make sure you've tried the usual \"quick fixes\":\n\n - Search the issues already opened: https://github.com/googleapis/python-api-core/issues\n - Search StackOverflow: https://stackoverflow.com/questions/tagged/google-cloud-platform+python\n\nIf you are still having issues, please be sure to include as much information as possible:\n\n#### Environment details\n\n - OS type and version: Ubuntu 22.04.5 LTS\n - Python version: Python 3.9.21\n - pip version: 24.3.1\n - `google-api-core` version: 2.28.1\n\n#### Steps to reproduce\n\n 1. Import `google.api_core` in Python REPL\n 2. Observed error printed to stdout\n\n#### Code example\n\n```console\n$ .meltano/extractors/tap-bigquery/venv/bin/python\nPython 3.9.21 (main, Dec 3 2024, 17:50:13) \n[GCC 11.4.0] on linux\nType \"help\", \"copyright\", \"credits\" or \"license\" for more information.\nCtrl click to launch VS Code Native REPL\n\u003e\u003e\u003e import google.api_core\nAn error occurred: module 'importlib.metadata' has no attribute 'packages_distributions'\n/home/reuben/meltano/bigquery-test/.meltano/extractors/tap-bigquery/venv/lib/python3.9/site-packages/google/api_core/_python_version_support.py:252: FutureWarning: You are using a Python version (3.9.21) past its end of life. Google will update google.api_core with critical bug fixes on a best-effort basis, but not with any other fixes or features. Please upgrade to the latest Python version, or at least Python 3.10, and then update google.api_core.\n warnings.warn(message, FutureWarning)\n\u003e\u003e\u003e\n```\n\n#### Stack trace\n```\n# example\n```\n\nMaking sure to follow these steps will guarantee the quickest resolution possible.\n\nThanks!","author":{"url":"https://github.com/ReubenFrankel","@type":"Person","name":"ReubenFrankel"},"datePublished":"2025-10-31T04:00:45.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/857/python-api-core/issues/857"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:4d025951-4ddb-0f2a-65dd-408af0bfba3c |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | DB56:25C9D0:D83A35:126B9DC:6A4DCDA9 |
| html-safe-nonce | 9777b9ed7dfc54c6049c737bbb459eb041c63230eeb3224a81499f2f644f80fd |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEQjU2OjI1QzlEMDpEODNBMzU6MTI2QjlEQzo2QTREQ0RBOSIsInZpc2l0b3JfaWQiOiI1NDAzNTE4NTA0NTcyNjY5MzUzIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 2ac7defc536d37d625f5a46466b0d7b33ad41c038fb08436c6ea0bf3366f41b2 |
| hovercard-subject-tag | issue:3573313266 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/googleapis/python-api-core/857/issue_layout |
| twitter:image | https://opengraph.githubassets.com/ece0d0d72991dc1696e91ca7b18879e3359bf97bf495eda9963b1470cd0e3f9c/googleapis/python-api-core/issues/857 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/ece0d0d72991dc1696e91ca7b18879e3359bf97bf495eda9963b1470cd0e3f9c/googleapis/python-api-core/issues/857 |
| og:image:alt | This is happening because importlib.metadata.packages_distributions was added in Python 3.10, but the current version check implementation allows this to be called for 3.8 and above: python-api-cor... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | ReubenFrankel |
| hostname | github.com |
| expected-hostname | github.com |
| None | 06b8a6144231bf3a234f1c2e9993861e07ce98a905912b114aa386c2d7e84b33 |
| turbo-cache-control | no-preview |
| go-import | github.com/googleapis/python-api-core git https://github.com/googleapis/python-api-core.git |
| octolytics-dimension-user_id | 16785467 |
| octolytics-dimension-user_login | googleapis |
| octolytics-dimension-repository_id | 226992456 |
| octolytics-dimension-repository_nwo | googleapis/python-api-core |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 226992456 |
| octolytics-dimension-repository_network_root_nwo | googleapis/python-api-core |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 1d344bdb7547fe6bca17a59bb2b8aac3dc9532a0 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width