Переглянути джерело

Add release notes and versioned deprecation warnings for #9824

Matt Westcott 2 роки тому
батько
коміт
1da5b97d51

+ 1 - 0
CHANGELOG.txt

@@ -19,6 +19,7 @@ Changelog
  * Snippet models extending `DraftStateMixin` now automatically define a "Publish" permission type (Sage Abdullah)
  * Users now remain on the edit page after saving a snippet as draft (Sage Abdullah)
  * Base project template now populates the meta description tag from the search description field (Aman Pandey)
+ * Added support for `azure-mgmt-cdn` version >= 10 and `azure-mgmt-frontdoor` version >= 1 in the frontend cache invalidator (Sylvain Fankhauser)
  * Fix: Make sure workflow timeline icons are visible in high-contrast mode (Loveth Omokaro)
  * Fix: Ensure authentication forms (login, password reset) have a visible border in Windows high-contrast mode (Loveth Omokaro)
  * Fix: Ensure visual consistency between buttons and links as buttons in Windows high-contrast mode (Albina Starykova)

+ 16 - 8
docs/reference/contrib/frontendcache.md

@@ -132,10 +132,14 @@ With [Azure CDN](https://azure.microsoft.com/en-gb/products/cdn/) you will need
 The third-party dependencies of this backend are:
 
 | PyPI Package                                                           | Essential | Reason                                                                                                                              |
-| ---------------------------------------------------------------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------- |
-| [`azure-mgmt-cdn`](https://pypi.org/project/azure-mgmt-cdn/)           | Yes       | Interacting with the CDN service.                                                                                                   |
-| [`azure-identity`](https://pypi.org/project/azure-identity/)           | No        | Obtaining credentials. It's optional if you want to specify your own credential using a `CREDENTIALS` setting (more details below). |
-| [`azure-mgmt-resource`](https://pypi.org/project/azure-mgmt-resource/) | No        | For obtaining the subscription ID. Redundant if you want to explicitly specify a `SUBSCRIPTION_ID` setting (more details below).    |
+| ---------------------------------------------------------------------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
+| [`azure-mgmt-cdn`](https://pypi.org/project/azure-mgmt-cdn/)           | Yes (v10.0 or above) | Interacting with the CDN service.                                                                                                   |
+| [`azure-identity`](https://pypi.org/project/azure-identity/)           | No                   | Obtaining credentials. It's optional if you want to specify your own credential using a `CREDENTIALS` setting (more details below). |
+| [`azure-mgmt-resource`](https://pypi.org/project/azure-mgmt-resource/) | No                   | For obtaining the subscription ID. Redundant if you want to explicitly specify a `SUBSCRIPTION_ID` setting (more details below).    |
+
+```{versionchanged} 4.1
+Support for versions of `azure-mgmt-cdn` below 10.0 is deprecated and will be dropped in a future release.
+```
 
 Add an item into the `WAGTAILFRONTENDCACHE` and set the `BACKEND` parameter to `wagtail.contrib.frontend_cache.backends.AzureCdnBackend`. This backend requires the following settings to be set:
 
@@ -182,10 +186,14 @@ With [Azure Front Door](https://azure.microsoft.com/en-gb/products/frontdoor/) y
 The third-party dependencies of this backend are:
 
 | PyPI Package                                                             | Essential | Reason                                                                                                                              |
-| ------------------------------------------------------------------------ | --------- | ----------------------------------------------------------------------------------------------------------------------------------- |
-| [`azure-mgmt-frontdoor`](https://pypi.org/project/azure-mgmt-frontdoor/) | Yes       | Interacting with the Front Door service.                                                                                            |
-| [`azure-identity`](https://pypi.org/project/azure-identity/)             | No        | Obtaining credentials. It's optional if you want to specify your own credential using a `CREDENTIALS` setting (more details below). |
-| [`azure-mgmt-resource`](https://pypi.org/project/azure-mgmt-resource/)   | No        | For obtaining the subscription ID. Redundant if you want to explicitly specify a `SUBSCRIPTION_ID` setting (more details below).    |
+| ------------------------------------------------------------------------ | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
+| [`azure-mgmt-frontdoor`](https://pypi.org/project/azure-mgmt-frontdoor/) | Yes (v1.0 or above) | Interacting with the Front Door service.                                                                                            |
+| [`azure-identity`](https://pypi.org/project/azure-identity/)             | No                  | Obtaining credentials. It's optional if you want to specify your own credential using a `CREDENTIALS` setting (more details below). |
+| [`azure-mgmt-resource`](https://pypi.org/project/azure-mgmt-resource/)   | No                  | For obtaining the subscription ID. Redundant if you want to explicitly specify a `SUBSCRIPTION_ID` setting (more details below).    |
+
+```{versionchanged} 4.1
+Support for versions of `azure-mgmt-frontdoor` below 1.0 is deprecated and will be dropped in a future release.
+```
 
 Add an item into the `WAGTAILFRONTENDCACHE` and set the `BACKEND` parameter to `wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend`. This backend requires the following settings to be set:
 

+ 10 - 0
docs/releases/4.2.md

@@ -41,6 +41,7 @@ This feature was developed by Jake Howard.
  * Snippet models extending `DraftStateMixin` now automatically define a "Publish" permission type (Sage Abdullah)
  * Users now remain on the edit page after saving a snippet as draft (Sage Abdullah)
  * Base project template now populates the meta description tag from the search description field (Aman Pandey)
+ * Added support for `azure-mgmt-cdn` version >= 10 and `azure-mgmt-frontdoor` version >= 1 in the frontend cache invalidator (Sylvain Fankhauser)
 
 ### Bug fixes
 
@@ -178,3 +179,12 @@ wagtail-userbar::part(userbar) {
     bottom: 30px;
 }
 ```
+
+### Support for legacy versions of `azure-mgmt-cdn` and `azure-mgmt-frontdoor` packages will be dropped
+
+If you are using the front-end cache invalidator module (`wagtail.contrib.frontend_cache`) with Azure CDN or Azure Front Door, the following packages need to be updated:
+
+* For Azure CDN: upgrade `azure-mgmt-cdn` to version 10 or above
+* For Azure Front Door: upgrade `azure-mgmt-frontdoor` to version 1 or above
+
+Support for older versions will be dropped in a future release.

+ 3 - 2
wagtail/contrib/frontend_cache/backends.py

@@ -10,6 +10,7 @@ import requests
 from django.core.exceptions import ImproperlyConfigured
 
 from wagtail import __version__
+from wagtail.utils.deprecation import RemovedInWagtail50Warning
 
 logger = logging.getLogger("wagtail.frontendcache")
 
@@ -368,7 +369,7 @@ class AzureFrontDoorBackend(AzureBaseBackend):
         if self._legacy_azure_library:
             warnings.warn(
                 f"Support for azure-mgmt-frontdoor {__version__} will be dropped in the next release. Please upgrade to azure-mgmt-frontdoor >= 1.0.",
-                DeprecationWarning,
+                RemovedInWagtail50Warning,
             )
 
         super().__init__(params)
@@ -412,7 +413,7 @@ class AzureCdnBackend(AzureBaseBackend):
         if self._legacy_azure_library:
             warnings.warn(
                 f"Support for azure-mgmt-cdn {__version__} will be dropped in the next release. Please upgrade to azure-mgmt-cdn >= 10.",
-                DeprecationWarning,
+                RemovedInWagtail50Warning,
             )
 
         super().__init__(params)