Title: It is possible for python_tzpath_context to fail in test_zoneinfo · Issue #102537 · python/cpython · GitHub
Open Graph Title: It is possible for python_tzpath_context to fail in test_zoneinfo · Issue #102537 · python/cpython
X Title: It is possible for python_tzpath_context to fail in test_zoneinfo · Issue #102537 · python/cpython
Description: Bug report This code started failing the pylint check on backports.zoneinfo recently: @staticmethod @contextlib.contextmanager def python_tzpath_context(value): path_var = "PYTHONTZPATH" try: with OS_ENV_LOCK: old_env = os.environ.get(pa...
Open Graph Description: Bug report This code started failing the pylint check on backports.zoneinfo recently: @staticmethod @contextlib.contextmanager def python_tzpath_context(value): path_var = "PYTHONTZPATH" try: with ...
X Description: Bug report This code started failing the pylint check on backports.zoneinfo recently: @staticmethod @contextlib.contextmanager def python_tzpath_context(value): path_var = "PYTHONTZPATH" ...
Opengraph URL: https://github.com/python/cpython/issues/102537
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"It is possible for python_tzpath_context to fail in test_zoneinfo","articleBody":"# Bug report\r\n\r\n[This code](https://github.com/python/cpython/blob/11a2c6ce516b24b2435cb627742a6c4df92d411c/Lib/test/test_zoneinfo/test_zoneinfo.py#L1544-L1555) started failing the `pylint` check on `backports.zoneinfo` recently:\r\n\r\n```python\r\n@staticmethod\r\n@contextlib.contextmanager\r\ndef python_tzpath_context(value):\r\n path_var = \"PYTHONTZPATH\"\r\n try:\r\n with OS_ENV_LOCK:\r\n old_env = os.environ.get(path_var, None)\r\n os.environ[path_var] = value\r\n yield\r\n finally:\r\n if old_env is None:\r\n del os.environ[path_var]\r\n else:\r\n os.environ[path_var] = old_env # pragma: nocover\r\n```\r\n\r\nIt's kind of a non-issue, but it *is* true that if an error is raised while acquiring `OS_ENV_LOCK` or when calling `os.environ.get`, `old_env` won't be set, which will raise a `NameError`. This is a kind of rare situation anyway, and it would probably only come up during a non-recoverable error, but we may as well fix it — if only so that people who use CPython as an example of \"good code\" will have an example of the right way to handle this sort of situation.\r\n\r\nProbably this is trivial enough that we can skip an issue and news, but I'll just create one anyway 😛\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-102538\n* gh-102586\n* gh-102587\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/pganssle","@type":"Person","name":"pganssle"},"datePublished":"2023-03-08T18:51:24.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/102537/cpython/issues/102537"}
| 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:1b512f5f-5bc7-c811-5d49-0dd7e66f213f |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | DCDE:28AE23:93D949:CCE1FC:696A82D1 |
| html-safe-nonce | ab9fea073ebab25d09a383d2ef014e5a6fe847eca893855686c137662f482fd2 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEQ0RFOjI4QUUyMzo5M0Q5NDk6Q0NFMUZDOjY5NkE4MkQxIiwidmlzaXRvcl9pZCI6IjM1ODA4MDA3NjI4NTQ5MzMyMDEiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | affe7f2c8e7209a21096e91d0536348380f97b00db2fbc654151dafc29603c0f |
| hovercard-subject-tag | issue:1615757674 |
| 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/python/cpython/102537/issue_layout |
| twitter:image | https://opengraph.githubassets.com/b0e43fa590729743f2ad3b90154926d8449ebbcdd25bc79c92156688b1588884/python/cpython/issues/102537 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/b0e43fa590729743f2ad3b90154926d8449ebbcdd25bc79c92156688b1588884/python/cpython/issues/102537 |
| og:image:alt | Bug report This code started failing the pylint check on backports.zoneinfo recently: @staticmethod @contextlib.contextmanager def python_tzpath_context(value): path_var = "PYTHONTZPATH" try: with ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | pganssle |
| hostname | github.com |
| expected-hostname | github.com |
| None | 913560fa317c3c5a71e34f9b19253c9f09d02b4b958a86c2a56f4c8541116377 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| 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 | 5998c30593994bf2589055aef7b22d368a499367 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width