You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Deprecation] remove deprecated pkg from main (#40625)
* update deprecation doc to remove package from main
* update steps to remove ci.yml if no other artifacts
* reword
* move things around
* xiangs feedback
* add step to remove links to main in samples readme
* update depr doc
* kristas comments
* reword
* laurents comments
* nit
Copy file name to clipboardExpand all lines: doc/deprecation_process.md
+28-20
Original file line number
Diff line number
Diff line change
@@ -29,37 +29,37 @@ Clone the `azure-sdk-for-python` repository and update the following files of yo
29
29
30
30
A disclaimer should be added indicating end-of-life date (EOLDate) of the package and directing to a replacement package and migration guide as necessary.
31
31
- The EOLDate should be in the format `MM-DD-YYYY`.
32
-
- If there is no replacement package, the package EOLDate should be the service retirement date. This does not necessarily need to be the same as the release date in the CHANGELOG.md, since the package may be deprecated before/after the service is retired.
32
+
- If there is no replacement package, the package EOLDate should be the service retirement date.
33
33
- If there is a replacement package (or repo), the EOLDate should be the same as the deprecation release date of the old package in the CHANGELOG.md.
34
34
- Service retirement dates MAY be listed [here](https://aka.ms/servicesretirementworkbook), where retiring feature says 'Entire service'.
35
35
- The link to the replacement package should be a PyPI link: `https://pypi.org/project/azure-mynewpackage/`.
36
36
- The link to the migration guide should be a link in the format `https://aka.ms/azsdk/python/migrate/my-new-package`. To create this aka.ms link, follow the "How to create aka.ms links" section [here](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/233/Azure-SDK-AKA.ms-Links?anchor=how-to-create-aka.ms-links).
37
37
-**NOTE**: You may decide to postpone or skip writing a migration guide based on downloads numbers (found on [pypistats](https://pypistats.org/), [pepy.tech](https://www.pepy.tech/), etc.) and internal knowledge of the usage of the package.
38
38
39
-
The disclaimer should be added at the very top of the README.md before any other text in the following format.
39
+
Replace ALL existing text with a disclaimer in the following format.
40
40
41
41
- If a replacement package and migration guide exist:
42
42
43
43
```md
44
-
**NOTE**: This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>. To receive updates on new features and non-security bug fixes, upgrade to the replacement package, [azure-mynewpackage](https://pypi.org/project/azure-mynewpackage/). Refer to the migration guide (https://aka.ms/azsdk/python/migrate/my-new-package) for guidance on upgrading.
44
+
This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>. To receive updates on new features and non-security bug fixes, upgrade to the replacement package, [azure-mynewpackage](https://pypi.org/project/azure-mynewpackage/). Refer to the migration guide (https://aka.ms/azsdk/python/migrate/my-new-package) for guidance on upgrading.
45
45
```
46
46
47
47
- If a migration guide is not provided:
48
48
49
49
```md
50
-
**NOTE**: This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>. To receive updates on new features and non-security bug fixes, upgrade to the replacement package, [azure-mynewpackage](https://pypi.org/project/azure-mynewpackage/).
50
+
This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>. To receive updates on new features and non-security bug fixes, upgrade to the replacement package, [azure-mynewpackage](https://pypi.org/project/azure-mynewpackage/).
51
51
```
52
52
53
53
- If a replacement package does not exist:
54
54
55
55
```md
56
-
**NOTE**: This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>.
56
+
This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>.
57
57
```
58
58
59
59
- If a new service has replaced the service, and existing customers should be directed to the new service's Rest API docs/repo:
60
60
61
61
```md
62
-
**NOTE**: This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>. Refer to the samples in the [My New Service repo](https://github.com/microsoft/my-new-service/tree/main) instead.
62
+
This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>. Refer to the samples in the [My New Service repo](https://github.com/microsoft/my-new-service/tree/main) instead.
63
63
64
64
For additional support, open a new issue in the [Issues](https://github.com/microsoft/my-new-service/issues) section of the My New Service repo.
65
65
```
@@ -105,7 +105,6 @@ The disclaimer should be added at the very top of the README.md before any other
105
105
safeName: azuremypackage
106
106
```
107
107
108
-
109
108
# Step 2: Resolve all open issues/PRs corresponding to the library.
110
109
111
110
If there is a replacement library, provide a link to the new library or an existing migration guide before closing.
@@ -167,11 +166,28 @@ You may see tests/mypy/pylint or other checks failing on other packages in the C
167
166
168
167
## Post-Release
169
168
170
-
Check to make sure that the new version of the package has been released on PyPI.
169
+
Check to make sure that the new version of the package has been released on PyPI and that the release has been tagged in the `azure-sdk-for-python` repo with `azure-mypackage_<version>`.
170
+
171
+
**NOTE: If your package has been released, there should be a corresponding [GitHub release tag](https://github.com/Azure/azure-sdk-for-python/tags). If there is not, create a post in the [Engineering System channel](https://teams.microsoft.com/l/channel/19%3A59dbfadafb5e41c4890e2cd3d74cc7ba%40thread.skype/Engineering%20System%20%F0%9F%9B%A0%EF%B8%8F?groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47) that the release tag cannot be found and add a link to the release build.**
172
+
173
+
Example release tag: [azure-cognitiveservices-language-spellcheck_2.0.1](https://github.com/Azure/azure-sdk-for-python/releases/tag/azure-cognitiveservices-language-spellcheck_2.0.1)
174
+
175
+
# Step 5: Create a new PR to remove the package from the main branch
176
+
177
+
Append a note to the README.md deprecation message stating the package has been removed from the main branch, a link to the latest GitHub release tag and package on PyPI, and contact info for questions. The full README text should now look like the following:
178
+
179
+
```md
180
+
# Microsoft Azure SDK for Python
181
+
182
+
This package has been deprecated and will no longer be maintained after <EOLDate>. This package will only receive security fixes until <EOLDate>.
171
183
172
-
# Step 5: Create a new PR to remove the package from CI
184
+
Package source code and samples have been removed from the `main` branch and can be found under the release tag for the latest version. See [azure-mypackage_<version>](https://github.com/Azure/azure-sdk-for-python/tree/azure-mypackage_<version>/sdk/mypackage/azure-mypackage). The latest release can be found on [PyPI](https://pypi.org/project/azure-mypackage/).
173
185
174
-
- You will see an `Artifacts` parameter in the `mypackage/ci.yml`.
186
+
If you have any questions, please open a [GitHub Issue](https://github.com/Azure/azure-sdk-for-python/issues) or email `[email protected]`.
187
+
```
188
+
189
+
- Delete all files in the package directory `sdk/mypackage/azure-mypackage` EXCEPT for the README.md at the package directory root.
190
+
- You will see an `Artifacts` parameter in `mypackage/ci.yml`.
175
191
```yml
176
192
extends:
177
193
parameters:
@@ -180,29 +196,21 @@ Check to make sure that the new version of the package has been released on PyPI
180
196
- name: azure-mypackage
181
197
safeName: azuremypackage
182
198
```
183
-
- If the only package listed is `azure-mypackage`, remove the `Artifacts` section altogether.
184
-
```yml
185
-
extends:
186
-
parameters:
187
-
...
188
-
```
189
-
- If there are multiple packages listed, remove the `name` and corresponding `safeName` lines for only `azure-mypackage`.
199
+
- If there are multiple packages listed, remove the `name` and corresponding `safeName` lines for only `azure-mypackage`.
190
200
```yml
191
201
extends:
192
202
parameters:
193
203
...
194
204
Artifacts:
195
205
...
196
206
```
207
+
- If the only package listed is `azure-mypackage`, delete `ci.yml` and all other files -- _not package subdirectories_-- in the `mypackage` service directory (i.e. `tests.yml`, `test-resources.bicep`, etc.).
197
208
198
-
- Add the line `ci_enabled = false` to `azure-mypackage/pyproject.toml`.
199
209
- Create a new PR targeting the `main` branch of the repository.
200
210
- Post the PR in the [review channel for Python](https://teams.microsoft.com/l/channel/19%3a4175567f1e154a80ab5b88cbd22ea92f%40thread.skype/Language%2520-%2520Python%2520-%2520Reviews?groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47).
201
211
- Once the PR has been approved by codeowner, merge.
202
212
- You're responsible for fixing any CI issues related to this PR.
203
213
204
-
Example post-deprecation PR for azure-cognitiveservices-language-spellcheck [here](https://github.com/Azure/azure-sdk-for-python/pull/37459/files).
0 commit comments