From 79ce641ff309fa57adb592a538cbfbd7f82e6637 Mon Sep 17 00:00:00 2001 From: donBarbos Date: Sun, 24 Aug 2025 12:19:33 +0400 Subject: [PATCH 1/2] Update description of third-party library removal policy --- CONTRIBUTING.md | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0b87fec53767..09f77b088b37 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -436,28 +436,24 @@ following criteria is met: * the upstream package was declared or appears to be unmaintained, and retaining the stubs causes maintenance issues in typeshed. -If a package ships its own `py.typed` file, please follow these steps: +Case 1: If a package ships its own `py.typed` file, please follow these steps: -1. Open an issue with the earliest month of removal in the subject. -2. A maintainer will add the - ["stubs: removal" label](https://github.com/python/typeshed/labels/%22stubs%3A%20removal%22). -3. Open a PR that sets the `obsolete_since` field in the `METADATA.toml` - file to the first version of the package that shipped `py.typed`. -4. After at least six months, open a PR to remove the stubs. +1. Make sure *stubsabot* open a PR that sets the `obsolete_since` field in the + `METADATA.toml` file to the first version of the package that shipped `py.typed`. +2. After at least six months, make sure *stubsabot* open a PR to remove the stubs. -If third-party stubs should be removed for other reasons, please follow these -steps: +Case 2: If third-party stubs should be removed for other reasons, please follow +these steps: 1. Open an issue explaining why the stubs should be removed. 2. A maintainer will add the ["stubs: removal" label](https://github.com/python/typeshed/labels/%22stubs%3A%20removal%22). 3. Open a PR that sets the `no_longer_updated` field in the `METADATA.toml` file to `true`. -4. When a new version of the package was automatically uploaded to PyPI - (which can take up to a day), open a PR to remove the stubs. +4. When a new version of the package was automatically uploaded to PyPI (which + can take up to a day), make sure *stubsabot* open a PR to remove the stubs. -Don't forget to make sure the library is not in the [`pyrightconfig.stricter.json`](./pyrightconfig.stricter.json) -exclusion list. If feeling kindly, please update [mypy](https://github.com/python/mypy/blob/master/mypy/stubinfo.py) +If feeling kindly, please update [mypy](https://github.com/python/mypy/blob/master/mypy/stubinfo.py) for any stub obsoletions or removals. ### Marking PRs as "deferred" From aed05992924073ba63cf53eaa27e7a1e47bdc47a Mon Sep 17 00:00:00 2001 From: donBarbos Date: Sun, 24 Aug 2025 12:26:12 +0400 Subject: [PATCH 2/2] use bold for stubsabot --- CONTRIBUTING.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 09f77b088b37..46650a30f3d6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -438,9 +438,9 @@ following criteria is met: Case 1: If a package ships its own `py.typed` file, please follow these steps: -1. Make sure *stubsabot* open a PR that sets the `obsolete_since` field in the +1. Make sure **stubsabot** open a PR that sets the `obsolete_since` field in the `METADATA.toml` file to the first version of the package that shipped `py.typed`. -2. After at least six months, make sure *stubsabot* open a PR to remove the stubs. +2. After at least six months, make sure **stubsabot** open a PR to remove the stubs. Case 2: If third-party stubs should be removed for other reasons, please follow these steps: @@ -451,7 +451,7 @@ these steps: 3. Open a PR that sets the `no_longer_updated` field in the `METADATA.toml` file to `true`. 4. When a new version of the package was automatically uploaded to PyPI (which - can take up to a day), make sure *stubsabot* open a PR to remove the stubs. + can take up to a day), make sure **stubsabot** open a PR to remove the stubs. If feeling kindly, please update [mypy](https://github.com/python/mypy/blob/master/mypy/stubinfo.py) for any stub obsoletions or removals.