From b325ac06331bab218e16c2389caef76ab8166695 Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Mon, 20 Feb 2023 18:07:50 +0400 Subject: [PATCH 1/8] Update black from 22.12.0 to 23.1.0 --- requirements/requirements-codestyle.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-codestyle.txt b/requirements/requirements-codestyle.txt index b698dde6..ed701100 100644 --- a/requirements/requirements-codestyle.txt +++ b/requirements/requirements-codestyle.txt @@ -1,4 +1,4 @@ -black==22.12.0 +black==23.1.0 flake8==6.0.0 flake8-bugbear==23.1.14 flake8-isort==6.0.0 From 8a5e9acd47480e50a9df1a88ad13ea11235be45f Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Mon, 20 Feb 2023 18:07:50 +0400 Subject: [PATCH 2/8] Update flake8-bugbear from 23.1.14 to 23.2.13 --- requirements/requirements-codestyle.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-codestyle.txt b/requirements/requirements-codestyle.txt index ed701100..6d48482f 100644 --- a/requirements/requirements-codestyle.txt +++ b/requirements/requirements-codestyle.txt @@ -1,5 +1,5 @@ black==23.1.0 flake8==6.0.0 -flake8-bugbear==23.1.14 +flake8-bugbear==23.2.13 flake8-isort==6.0.0 isort==5.11.4 From 506e58cf38619d03ba76aea619a7bd7b08820549 Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Mon, 20 Feb 2023 18:07:51 +0400 Subject: [PATCH 3/8] Update isort from 5.11.4 to 5.12.0 --- requirements/requirements-codestyle.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-codestyle.txt b/requirements/requirements-codestyle.txt index 6d48482f..4092f80f 100644 --- a/requirements/requirements-codestyle.txt +++ b/requirements/requirements-codestyle.txt @@ -2,4 +2,4 @@ black==23.1.0 flake8==6.0.0 flake8-bugbear==23.2.13 flake8-isort==6.0.0 -isort==5.11.4 +isort==5.12.0 From f7dace3875dbe382779e3cf710ec25bd20c932ce Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Mon, 20 Feb 2023 18:07:51 +0400 Subject: [PATCH 4/8] Update sphinx from 5.3.0 to 6.1.3 --- requirements/requirements-documentation.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-documentation.txt b/requirements/requirements-documentation.txt index 95e25adc..a423e819 100644 --- a/requirements/requirements-documentation.txt +++ b/requirements/requirements-documentation.txt @@ -1,3 +1,3 @@ recommonmark==0.7.1 -Sphinx==5.3.0 +Sphinx==6.1.3 sphinx_rtd_theme==1.1.1 From 10ff9acea41c44f0fca0458ce020da5395fa1539 Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Mon, 20 Feb 2023 18:07:52 +0400 Subject: [PATCH 5/8] Update sphinx_rtd_theme from 1.1.1 to 1.2.0 --- requirements/requirements-documentation.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-documentation.txt b/requirements/requirements-documentation.txt index a423e819..36e96657 100644 --- a/requirements/requirements-documentation.txt +++ b/requirements/requirements-documentation.txt @@ -1,3 +1,3 @@ recommonmark==0.7.1 Sphinx==6.1.3 -sphinx_rtd_theme==1.1.1 +sphinx_rtd_theme==1.2.0 From db455c268098c242feade27f585b12ad453b1349 Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Mon, 20 Feb 2023 18:07:52 +0400 Subject: [PATCH 6/8] Update faker from 16.4.0 to 17.0.0 --- requirements/requirements-testing.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements-testing.txt b/requirements/requirements-testing.txt index d3b097fd..69371227 100644 --- a/requirements/requirements-testing.txt +++ b/requirements/requirements-testing.txt @@ -1,5 +1,5 @@ factory-boy==3.2.1 -Faker==16.4.0 +Faker==17.0.0 pytest==7.2.1 pytest-cov==4.0.0 pytest-django==4.5.2 From 5a75c8170b2118284a2b3174aa7e5f89807f547e Mon Sep 17 00:00:00 2001 From: Oliver Sauder Date: Tue, 21 Feb 2023 10:05:38 +0400 Subject: [PATCH 7/8] Reformatted with black 2023 style --- example/migrations/0001_initial.py | 1 - example/migrations/0002_taggeditem.py | 1 - example/migrations/0003_polymorphics.py | 1 - example/migrations/0004_auto_20171011_0631.py | 1 - example/migrations/0005_auto_20180922_1508.py | 1 - example/migrations/0006_auto_20181228_0752.py | 1 - example/migrations/0007_artproject_description.py | 1 - example/migrations/0008_labresults.py | 1 - example/migrations/0009_labresults_author.py | 1 - example/migrations/0010_auto_20210714_0809.py | 1 - .../0011_rename_type_author_author_type_and_more.py | 1 - example/migrations/0012_author_full_name.py | 1 - example/serializers.py | 1 - example/tests/conftest.py | 2 -- example/tests/integration/test_meta.py | 2 -- example/tests/integration/test_model_resource_name.py | 2 -- example/tests/integration/test_non_paginated_responses.py | 1 - example/tests/integration/test_pagination.py | 1 - example/tests/unit/test_default_drf_serializers.py | 4 ---- rest_framework_json_api/renderers.py | 2 -- rest_framework_json_api/utils.py | 1 - rest_framework_json_api/views.py | 2 -- 22 files changed, 30 deletions(-) diff --git a/example/migrations/0001_initial.py b/example/migrations/0001_initial.py index 0161cd49..18805099 100644 --- a/example/migrations/0001_initial.py +++ b/example/migrations/0001_initial.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - initial = True dependencies = [] diff --git a/example/migrations/0002_taggeditem.py b/example/migrations/0002_taggeditem.py index 0abf49e0..62b1cf81 100644 --- a/example/migrations/0002_taggeditem.py +++ b/example/migrations/0002_taggeditem.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [ ("contenttypes", "0002_remove_content_type_name"), ("example", "0001_initial"), diff --git a/example/migrations/0003_polymorphics.py b/example/migrations/0003_polymorphics.py index 1bae8491..70c62ddd 100644 --- a/example/migrations/0003_polymorphics.py +++ b/example/migrations/0003_polymorphics.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [ ("contenttypes", "0002_remove_content_type_name"), ("example", "0002_taggeditem"), diff --git a/example/migrations/0004_auto_20171011_0631.py b/example/migrations/0004_auto_20171011_0631.py index fa597a29..51db8e3f 100644 --- a/example/migrations/0004_auto_20171011_0631.py +++ b/example/migrations/0004_auto_20171011_0631.py @@ -3,7 +3,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0003_polymorphics"), ] diff --git a/example/migrations/0005_auto_20180922_1508.py b/example/migrations/0005_auto_20180922_1508.py index 58b2808d..52c3a0ac 100644 --- a/example/migrations/0005_auto_20180922_1508.py +++ b/example/migrations/0005_auto_20180922_1508.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0004_auto_20171011_0631"), ] diff --git a/example/migrations/0006_auto_20181228_0752.py b/example/migrations/0006_auto_20181228_0752.py index 4126c797..3ef2678e 100644 --- a/example/migrations/0006_auto_20181228_0752.py +++ b/example/migrations/0006_auto_20181228_0752.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0005_auto_20180922_1508"), ] diff --git a/example/migrations/0007_artproject_description.py b/example/migrations/0007_artproject_description.py index 20f9d42e..4ed2d7a9 100644 --- a/example/migrations/0007_artproject_description.py +++ b/example/migrations/0007_artproject_description.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0006_auto_20181228_0752"), ] diff --git a/example/migrations/0008_labresults.py b/example/migrations/0008_labresults.py index e0a1d6ba..290c2cb8 100644 --- a/example/migrations/0008_labresults.py +++ b/example/migrations/0008_labresults.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0007_artproject_description"), ] diff --git a/example/migrations/0009_labresults_author.py b/example/migrations/0009_labresults_author.py index 6365d01c..6c805ab0 100644 --- a/example/migrations/0009_labresults_author.py +++ b/example/migrations/0009_labresults_author.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0008_labresults"), ] diff --git a/example/migrations/0010_auto_20210714_0809.py b/example/migrations/0010_auto_20210714_0809.py index de36ba20..cd96cccc 100644 --- a/example/migrations/0010_auto_20210714_0809.py +++ b/example/migrations/0010_auto_20210714_0809.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0009_labresults_author"), ] diff --git a/example/migrations/0011_rename_type_author_author_type_and_more.py b/example/migrations/0011_rename_type_author_author_type_and_more.py index 191e901c..cc2f5546 100644 --- a/example/migrations/0011_rename_type_author_author_type_and_more.py +++ b/example/migrations/0011_rename_type_author_author_type_and_more.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("contenttypes", "0002_remove_content_type_name"), ("example", "0010_auto_20210714_0809"), diff --git a/example/migrations/0012_author_full_name.py b/example/migrations/0012_author_full_name.py index 1f67558e..0486d041 100644 --- a/example/migrations/0012_author_full_name.py +++ b/example/migrations/0012_author_full_name.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [ ("example", "0011_rename_type_author_author_type_and_more"), ] diff --git a/example/serializers.py b/example/serializers.py index 75a1de11..3d94e6cc 100644 --- a/example/serializers.py +++ b/example/serializers.py @@ -181,7 +181,6 @@ class JSONAPIMeta: class EntryDRFSerializers(drf_serilazers.ModelSerializer): - tags = TaggedItemDRFSerializer(many=True, read_only=True) url = drf_serilazers.HyperlinkedIdentityField( view_name="drf-entry-blog-detail", diff --git a/example/tests/conftest.py b/example/tests/conftest.py index df5bbdfc..22ab6bd1 100644 --- a/example/tests/conftest.py +++ b/example/tests/conftest.py @@ -31,7 +31,6 @@ @pytest.fixture def single_entry(blog, author, entry_factory, comment_factory, tagged_item_factory): - entry = entry_factory(blog=blog, authors=(author,)) comment_factory(entry=entry) tagged_item_factory(content_object=entry) @@ -40,7 +39,6 @@ def single_entry(blog, author, entry_factory, comment_factory, tagged_item_facto @pytest.fixture def multiple_entries(blog_factory, author_factory, entry_factory, comment_factory): - entries = [ entry_factory(blog=blog_factory(), authors=(author_factory(),)), entry_factory(blog=blog_factory(), authors=(author_factory(),)), diff --git a/example/tests/integration/test_meta.py b/example/tests/integration/test_meta.py index f54cda8e..c63a6d9b 100644 --- a/example/tests/integration/test_meta.py +++ b/example/tests/integration/test_meta.py @@ -7,7 +7,6 @@ def test_top_level_meta_for_list_view(blog, client): - expected = { "data": [ { @@ -37,7 +36,6 @@ def test_top_level_meta_for_list_view(blog, client): def test_top_level_meta_for_detail_view(blog, client): - expected = { "data": { "type": "blogs", diff --git a/example/tests/integration/test_model_resource_name.py b/example/tests/integration/test_model_resource_name.py index 2dacd2d5..b2fda333 100644 --- a/example/tests/integration/test_model_resource_name.py +++ b/example/tests/integration/test_model_resource_name.py @@ -50,7 +50,6 @@ def _check_relationship_and_included_comment_type_are_the_same(django_client, ur @pytest.mark.usefixtures("single_entry") class TestModelResourceName: - create_data = { "data": { "type": "resource_name_from_JSONAPIMeta", @@ -147,7 +146,6 @@ def teardown_method(self, method): @pytest.mark.usefixtures("single_entry") class TestResourceNameConsistency: - # Included rename tests def test_type_match_on_included_and_inline_base(self, client): _check_relationship_and_included_comment_type_are_the_same( diff --git a/example/tests/integration/test_non_paginated_responses.py b/example/tests/integration/test_non_paginated_responses.py index 3483b7f4..60376a8b 100644 --- a/example/tests/integration/test_non_paginated_responses.py +++ b/example/tests/integration/test_non_paginated_responses.py @@ -11,7 +11,6 @@ new=lambda s: [], ) def test_multiple_entries_no_pagination(multiple_entries, client): - expected = { "data": [ { diff --git a/example/tests/integration/test_pagination.py b/example/tests/integration/test_pagination.py index c723fce1..4c60e96e 100644 --- a/example/tests/integration/test_pagination.py +++ b/example/tests/integration/test_pagination.py @@ -11,7 +11,6 @@ new=lambda s: [], ) def test_pagination_with_single_entry(single_entry, client): - expected = { "data": [ { diff --git a/example/tests/unit/test_default_drf_serializers.py b/example/tests/unit/test_default_drf_serializers.py index d74edac7..87231896 100644 --- a/example/tests/unit/test_default_drf_serializers.py +++ b/example/tests/unit/test_default_drf_serializers.py @@ -71,7 +71,6 @@ def test_render_format_field_names(db, settings, entry): @pytest.mark.django_db def test_blog_create(client): - url = reverse("drf-entry-blog-list") name = "Dummy Name" @@ -107,7 +106,6 @@ def test_blog_create(client): @pytest.mark.django_db def test_get_object_gives_correct_blog(client, blog, entry): - url = reverse("drf-entry-blog-detail", kwargs={"entry_pk": entry.id}) resp = client.get(url) expected = { @@ -126,7 +124,6 @@ def test_get_object_gives_correct_blog(client, blog, entry): @pytest.mark.django_db def test_get_object_patches_correct_blog(client, blog, entry): - url = reverse("drf-entry-blog-detail", kwargs={"entry_pk": entry.id}) new_name = blog.name + " update" assert not new_name == blog.name @@ -163,7 +160,6 @@ def test_get_object_patches_correct_blog(client, blog, entry): @pytest.mark.django_db def test_get_object_deletes_correct_blog(client, entry): - url = reverse("drf-entry-blog-detail", kwargs={"entry_pk": entry.id}) resp = client.delete(url) diff --git a/rest_framework_json_api/renderers.py b/rest_framework_json_api/renderers.py index db297870..43fef0a3 100644 --- a/rest_framework_json_api/renderers.py +++ b/rest_framework_json_api/renderers.py @@ -499,7 +499,6 @@ def render_errors(self, data, accepted_media_type=None, renderer_context=None): ) def render(self, data, accepted_media_type=None, renderer_context=None): - renderer_context = renderer_context or {} view = renderer_context.get("view", None) @@ -545,7 +544,6 @@ def render(self, data, accepted_media_type=None, renderer_context=None): included_resources = utils.get_included_resources(request, serializer) if serializer is not None: - # Extract root meta for any type of serializer json_api_meta.update(self.extract_root_meta(serializer, serializer_data)) diff --git a/rest_framework_json_api/utils.py b/rest_framework_json_api/utils.py index 130894aa..91b3aba9 100644 --- a/rest_framework_json_api/utils.py +++ b/rest_framework_json_api/utils.py @@ -415,7 +415,6 @@ def format_drf_errors(response, context, exc): def format_error_object(message, pointer, response): errors = [] if isinstance(message, dict): - # as there is no required field in error object we check that all fields are string # except links, source or meta which might be a dict is_custom_error = all( diff --git a/rest_framework_json_api/views.py b/rest_framework_json_api/views.py index de7e8aa6..0b3df693 100644 --- a/rest_framework_json_api/views.py +++ b/rest_framework_json_api/views.py @@ -66,7 +66,6 @@ def get_queryset(self, *args, **kwargs): self.request, self.get_serializer_class() ) for included in included_resources + ["__all__"]: - select_related = self.get_select_related(included) if select_related is not None: qs = qs.select_related(*select_related) @@ -110,7 +109,6 @@ def get_queryset(self, *args, **kwargs): if level == levels[-1]: included_model = field else: - if issubclass(field_class, ReverseOneToOneDescriptor): model_field = field.related.field else: From 5a0ea7f0d1f785e506dd9c3a2fa2d2eb59346901 Mon Sep 17 00:00:00 2001 From: Oliver Sauder Date: Tue, 21 Feb 2023 10:12:14 +0400 Subject: [PATCH 8/8] Set warning stacklevel so it is clear This is a simply warning with a key where not stacktrace is needed. --- rest_framework_json_api/schemas/openapi.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/rest_framework_json_api/schemas/openapi.py b/rest_framework_json_api/schemas/openapi.py index 99ec8ff1..7cb7d9ca 100644 --- a/rest_framework_json_api/schemas/openapi.py +++ b/rest_framework_json_api/schemas/openapi.py @@ -298,9 +298,8 @@ def get_schema(self, request=None, public=False): if components_schemas[k] == components[k]: continue warnings.warn( - 'Schema component "{}" has been overriden with a different value.'.format( - k - ) + f'Schema component "{k}" has been overriden with a different value.', + stacklevel=1, ) components_schemas.update(components)