From 15f619ade0c94e38873f19b188bad0bc347b2d2d Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Wed, 29 Nov 2023 14:13:36 +0000 Subject: [PATCH 1/4] Add Svix to sponsors (#9173) --- README.md | 5 ++++- docs/img/premium/svix-premium.png | Bin 0 -> 32055 bytes docs/index.md | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 docs/img/premium/svix-premium.png diff --git a/README.md b/README.md index c2975a418f..60c62ebf54 100644 --- a/README.md +++ b/README.md @@ -27,8 +27,9 @@ The initial aim is to provide a single full-time position on REST framework. [![][posthog-img]][posthog-url] [![][cryptapi-img]][cryptapi-url] [![][fezto-img]][fezto-url] +[![][svix-img]][svix-url] -Many thanks to all our [wonderful sponsors][sponsors], and in particular to our premium backers, [Sentry][sentry-url], [Stream][stream-url], [Spacinov][spacinov-url], [Retool][retool-url], [bit.io][bitio-url], [PostHog][posthog-url], [CryptAPI][cryptapi-url], and [FEZTO][fezto-url]. +Many thanks to all our [wonderful sponsors][sponsors], and in particular to our premium backers, [Sentry][sentry-url], [Stream][stream-url], [Spacinov][spacinov-url], [Retool][retool-url], [bit.io][bitio-url], [PostHog][posthog-url], [CryptAPI][cryptapi-url], [FEZTO][fezto-url], and [Svix][svix-url]. --- @@ -200,6 +201,7 @@ Please see the [security policy][security-policy]. [posthog-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/posthog-readme.png [cryptapi-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/cryptapi-readme.png [fezto-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/fezto-readme.png +[svix-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/svix-readme.png [sentry-url]: https://getsentry.com/welcome/ [stream-url]: https://getstream.io/?utm_source=DjangoRESTFramework&utm_medium=Webpage_Logo_Ad&utm_content=Developer&utm_campaign=DjangoRESTFramework_Jan2022_HomePage @@ -209,6 +211,7 @@ Please see the [security policy][security-policy]. [posthog-url]: https://posthog.com?utm_source=drf&utm_medium=sponsorship&utm_campaign=open-source-sponsorship [cryptapi-url]: https://cryptapi.io [fezto-url]: https://www.fezto.xyz/?utm_source=DjangoRESTFramework +[svix-url]: https://www.svix.com/?utm_source=django-REST&utm_medium=sponsorship [oauth1-section]: https://www.django-rest-framework.org/api-guide/authentication/#django-rest-framework-oauth [oauth2-section]: https://www.django-rest-framework.org/api-guide/authentication/#django-oauth-toolkit diff --git a/docs/img/premium/svix-premium.png b/docs/img/premium/svix-premium.png new file mode 100644 index 0000000000000000000000000000000000000000..68ff063879bec44644ffea214c86200c476976af GIT binary patch literal 32055 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 literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index 81a5563133..60eb65744d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -74,10 +74,11 @@ continued development by **[signing up for a paid plan][funding]**.
  • PostHog
  • CryptAPI
  • FEZTO
  • +
  • Svix
  • -*Many thanks to all our [wonderful sponsors][sponsors], and in particular to our premium backers, [Sentry](https://getsentry.com/welcome/), [Stream](https://getstream.io/?utm_source=DjangoRESTFramework&utm_medium=Webpage_Logo_Ad&utm_content=Developer&utm_campaign=DjangoRESTFramework_Jan2022_HomePage), [Spacinov](https://www.spacinov.com/), [Retool](https://retool.com/?utm_source=djangorest&utm_medium=sponsorship), [bit.io](https://bit.io/jobs?utm_source=DRF&utm_medium=sponsor&utm_campaign=DRF_sponsorship), [PostHog](https://posthog.com?utm_source=DRF&utm_medium=sponsor&utm_campaign=DRF_sponsorship), [CryptAPI](https://cryptapi.io), and [FEZTO](https://www.fezto.xyz/?utm_source=DjangoRESTFramework).* +*Many thanks to all our [wonderful sponsors][sponsors], and in particular to our premium backers, [Sentry](https://getsentry.com/welcome/), [Stream](https://getstream.io/?utm_source=DjangoRESTFramework&utm_medium=Webpage_Logo_Ad&utm_content=Developer&utm_campaign=DjangoRESTFramework_Jan2022_HomePage), [Spacinov](https://www.spacinov.com/), [Retool](https://retool.com/?utm_source=djangorest&utm_medium=sponsorship), [bit.io](https://bit.io/jobs?utm_source=DRF&utm_medium=sponsor&utm_campaign=DRF_sponsorship), [PostHog](https://posthog.com?utm_source=DRF&utm_medium=sponsor&utm_campaign=DRF_sponsorship), [CryptAPI](https://cryptapi.io), [FEZTO](https://www.fezto.xyz/?utm_source=DjangoRESTFramework), and [Svix](https://www.svix.com/?utm_source=django-REST&utm_medium=sponsorship).* --- From 06022e788e1d23775af6044f02d8a2d577e30b50 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Wed, 29 Nov 2023 14:15:53 +0000 Subject: [PATCH 2/4] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 60c62ebf54..524edb8c35 100644 --- a/README.md +++ b/README.md @@ -201,7 +201,7 @@ Please see the [security policy][security-policy]. [posthog-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/posthog-readme.png [cryptapi-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/cryptapi-readme.png [fezto-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/fezto-readme.png -[svix-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/svix-readme.png +[svix-img]: https://raw.githubusercontent.com/encode/django-rest-framework/master/docs/img/premium/svix-premium.png [sentry-url]: https://getsentry.com/welcome/ [stream-url]: https://getstream.io/?utm_source=DjangoRESTFramework&utm_medium=Webpage_Logo_Ad&utm_content=Developer&utm_campaign=DjangoRESTFramework_Jan2022_HomePage From 0abb84fa3955956fc6156cc2c51222cd4ceae783 Mon Sep 17 00:00:00 2001 From: Krishna2864 <75547302+Krishna2864@users.noreply.github.com> Date: Thu, 30 Nov 2023 16:37:36 +0530 Subject: [PATCH 3/4] removed hyperlink for web browsable API on homepage (#9174) --- README.md | 2 +- docs/index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 524edb8c35..078ac07116 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ Django REST framework is a powerful and flexible toolkit for building Web APIs. Some reasons you might want to use REST framework: -* The [Web browsable API][sandbox] is a huge usability win for your developers. +* The Web browsable API is a huge usability win for your developers. * [Authentication policies][authentication] including optional packages for [OAuth1a][oauth1-section] and [OAuth2][oauth2-section]. * [Serialization][serializers] that supports both [ORM][modelserializer-section] and [non-ORM][serializer-section] data sources. * Customizable all the way down - just use [regular function-based views][functionview-section] if you don't need the [more][generic-views] [powerful][viewsets] [features][routers]. diff --git a/docs/index.md b/docs/index.md index 60eb65744d..a7f1444a32 100644 --- a/docs/index.md +++ b/docs/index.md @@ -48,7 +48,7 @@ Django REST framework is a powerful and flexible toolkit for building Web APIs. Some reasons you might want to use REST framework: -* The [Web browsable API][sandbox] is a huge usability win for your developers. +* The Web browsable API is a huge usability win for your developers. * [Authentication policies][authentication] including packages for [OAuth1a][oauth1-section] and [OAuth2][oauth2-section]. * [Serialization][serializers] that supports both [ORM][modelserializer-section] and [non-ORM][serializer-section] data sources. * Customizable all the way down - just use [regular function-based views][functionview-section] if you don't need the [more][generic-views] [powerful][viewsets] [features][routers]. From 0f39e0124d358b0098261f070175fa8e0359b739 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Wed, 6 Dec 2023 22:44:47 +0600 Subject: [PATCH 4/4] Update requirements-optionals.txt (#9181) * Update requirements-optionals.txt * Update requirements-optionals.txt --- requirements/requirements-optionals.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-optionals.txt b/requirements/requirements-optionals.txt index dadfba5bd6..e54100f522 100644 --- a/requirements/requirements-optionals.txt +++ b/requirements/requirements-optionals.txt @@ -4,7 +4,7 @@ coreschema==0.0.4 django-filter django-guardian>=2.4.0,<2.5 inflection==0.5.1 -markdown==3.3 +markdown>=3.3.7 psycopg2-binary>=2.9.5,<2.10 pygments>=2.12.0,<2.14.0 pyyaml>=5.3.1,<5.4