From d90afa4cde917dc37eeb4dd0edd9e1d77f8088ef Mon Sep 17 00:00:00 2001 From: Jeremy Bowman Date: Tue, 21 Aug 2018 10:25:28 -0400 Subject: [PATCH] TE-2689 Remove useless pylint suppressions part 5 --- .../core/djangoapps/ace_common/templatetags/ace.py | 2 +- .../djangoapps/ace_common/tests/test_templatetags.py | 2 +- .../djangoapps/ace_common/tests/test_tracking.py | 2 +- .../core/djangoapps/api_admin/tests/test_models.py | 10 +++++----- .../core/djangoapps/api_admin/tests/test_views.py | 6 +++--- .../core/djangoapps/auth_exchange/tests/mixins.py | 2 -- openedx/core/djangoapps/auth_exchange/tests/utils.py | 6 +++--- openedx/core/djangoapps/auth_exchange/views.py | 12 ++++++------ openedx/core/djangoapps/bookmarks/models.py | 4 ++-- openedx/core/djangoapps/bookmarks/signals.py | 2 +- openedx/core/djangoapps/bookmarks/tasks.py | 2 +- openedx/core/djangoapps/bookmarks/tests/test_api.py | 4 ++-- .../core/djangoapps/bookmarks/tests/test_models.py | 4 ++-- .../core/djangoapps/bookmarks/tests/test_tasks.py | 2 +- .../core/djangoapps/bookmarks/tests/test_views.py | 2 +- openedx/core/djangoapps/bookmarks/views.py | 4 ++-- openedx/core/djangoapps/cache_toolbox/core.py | 3 +-- openedx/core/djangoapps/cache_toolbox/middleware.py | 2 +- openedx/core/djangoapps/ccxcon/tasks.py | 4 ++-- .../djangoapps/content/block_structure/models.py | 2 +- .../core/djangoapps/content/block_structure/tasks.py | 2 +- .../core/djangoapps/content/course_overviews/apps.py | 2 +- .../djangoapps/content/course_overviews/models.py | 2 +- .../contentserver/test/test_contentserver.py | 2 +- .../djangoapps/course_groups/partition_scheme.py | 3 +-- .../core/djangoapps/course_groups/tests/helpers.py | 1 - .../course_groups/tests/test_partition_scheme.py | 4 ++-- openedx/core/djangoapps/coursegraph/apps.py | 2 +- .../coursegraph/management/commands/dump_to_neo4j.py | 2 +- openedx/core/djangoapps/credit/api/eligibility.py | 1 - openedx/core/djangoapps/credit/models.py | 2 +- openedx/core/djangoapps/credit/tasks.py | 3 +-- openedx/core/djangoapps/credit/tests/factories.py | 5 ++--- .../core/djangoapps/credit/tests/test_serializers.py | 1 - openedx/core/djangoapps/credit/tests/test_views.py | 8 +++----- openedx/core/djangoapps/embargo/models.py | 1 - .../external_auth/tests/test_openid_provider.py | 4 ++-- .../core/djangoapps/external_auth/tests/test_shib.py | 1 - .../core/djangoapps/geoinfo/tests/test_middleware.py | 1 - openedx/core/djangoapps/heartbeat/views.py | 2 +- openedx/core/djangoapps/lang_pref/api.py | 2 +- .../djangoapps/lang_pref/tests/test_middleware.py | 2 +- .../core/djangoapps/lang_pref/tests/test_views.py | 2 +- openedx/core/djangoapps/oauth_dispatch/views.py | 1 - scripts/thresholds.sh | 2 +- 45 files changed, 60 insertions(+), 75 deletions(-) diff --git a/openedx/core/djangoapps/ace_common/templatetags/ace.py b/openedx/core/djangoapps/ace_common/templatetags/ace.py index b84fde3684..9bdc9baac2 100644 --- a/openedx/core/djangoapps/ace_common/templatetags/ace.py +++ b/openedx/core/djangoapps/ace_common/templatetags/ace.py @@ -134,7 +134,7 @@ def modify_url_to_track_clicks(url, campaign=None): if campaign is None: campaign = CampaignTrackingInfo() modified_url = parsed_url._replace(query=campaign.to_query_string(parsed_url.query)) - return modified_url.geturl() # pylint: disable=no-member + return modified_url.geturl() def ensure_url_is_absolute(site, relative_path): diff --git a/openedx/core/djangoapps/ace_common/tests/test_templatetags.py b/openedx/core/djangoapps/ace_common/tests/test_templatetags.py index cbbef0266f..f0457f8a81 100644 --- a/openedx/core/djangoapps/ace_common/tests/test_templatetags.py +++ b/openedx/core/djangoapps/ace_common/tests/test_templatetags.py @@ -1,4 +1,4 @@ -# pylint: disable=missing-docstring,no-member +# pylint: disable=missing-docstring import uuid from django.http import HttpRequest diff --git a/openedx/core/djangoapps/ace_common/tests/test_tracking.py b/openedx/core/djangoapps/ace_common/tests/test_tracking.py index 4de7e17fe7..73251f7205 100644 --- a/openedx/core/djangoapps/ace_common/tests/test_tracking.py +++ b/openedx/core/djangoapps/ace_common/tests/test_tracking.py @@ -1,4 +1,4 @@ -# pylint: disable=missing-docstring,no-member +# pylint: disable=missing-docstring from unittest import TestCase from django.test import override_settings diff --git a/openedx/core/djangoapps/api_admin/tests/test_models.py b/openedx/core/djangoapps/api_admin/tests/test_models.py index 8c39620f00..808c3bc877 100644 --- a/openedx/core/djangoapps/api_admin/tests/test_models.py +++ b/openedx/core/djangoapps/api_admin/tests/test_models.py @@ -28,11 +28,11 @@ class ApiAccessRequestTests(TestCase): self.assertFalse(ApiAccessRequest.has_api_access(self.user)) def test_approve(self): - self.request.approve() # pylint: disable=no-member + self.request.approve() self.assertEqual(self.request.status, ApiAccessRequest.APPROVED) def test_deny(self): - self.request.deny() # pylint: disable=no-member + self.request.deny() self.assertEqual(self.request.status, ApiAccessRequest.DENIED) def test_nonexistent_request(self): @@ -48,7 +48,7 @@ class ApiAccessRequestTests(TestCase): @ddt.unpack def test_has_access(self, status, should_have_access): self.request.status = status - self.request.save() # pylint: disable=no-member + self.request.save() self.assertEqual(ApiAccessRequest.has_api_access(self.user), should_have_access) def test_unique_per_user(self): @@ -56,12 +56,12 @@ class ApiAccessRequestTests(TestCase): ApiAccessRequestFactory(user=self.user) def test_no_access(self): - self.request.delete() # pylint: disable=no-member + self.request.delete() self.assertIsNone(ApiAccessRequest.api_access_status(self.user)) def test_unicode(self): request_unicode = unicode(self.request) - self.assertIn(self.request.website, request_unicode) # pylint: disable=no-member + self.assertIn(self.request.website, request_unicode) self.assertIn(self.request.status, request_unicode) def test_retire_user_success(self): diff --git a/openedx/core/djangoapps/api_admin/tests/test_views.py b/openedx/core/djangoapps/api_admin/tests/test_views.py index 2b818238a9..4fd28433ae 100644 --- a/openedx/core/djangoapps/api_admin/tests/test_views.py +++ b/openedx/core/djangoapps/api_admin/tests/test_views.py @@ -149,9 +149,9 @@ class ApiRequestStatusViewTest(ApiAdminTest): response = self.client.get(self.url) self.assertEqual(response.status_code, 200) unicode_content = response.content.decode('utf-8') - self.assertIn(application.client_secret, unicode_content) # pylint: disable=no-member - self.assertIn(application.client_id, unicode_content) # pylint: disable=no-member - self.assertIn(application.redirect_uris, unicode_content) # pylint: disable=no-member + self.assertIn(application.client_secret, unicode_content) + self.assertIn(application.client_id, unicode_content) + self.assertIn(application.redirect_uris, unicode_content) def test_get_anonymous(self): """Verify that users must be logged in to see the page.""" diff --git a/openedx/core/djangoapps/auth_exchange/tests/mixins.py b/openedx/core/djangoapps/auth_exchange/tests/mixins.py index 66d4a46dfe..70ce191b8d 100644 --- a/openedx/core/djangoapps/auth_exchange/tests/mixins.py +++ b/openedx/core/djangoapps/auth_exchange/tests/mixins.py @@ -3,8 +3,6 @@ Mixins to facilitate testing OAuth connections to Django-OAuth-Toolkit or Django-OAuth2-Provider. """ -# pylint: disable=protected-access - from unittest import skip, expectedFailure from django.test.client import RequestFactory diff --git a/openedx/core/djangoapps/auth_exchange/tests/utils.py b/openedx/core/djangoapps/auth_exchange/tests/utils.py index bdf36e707f..49f8d16437 100644 --- a/openedx/core/djangoapps/auth_exchange/tests/utils.py +++ b/openedx/core/djangoapps/auth_exchange/tests/utils.py @@ -19,7 +19,7 @@ class AccessTokenExchangeTestMixin(ThirdPartyOAuthTestMixin): * _assert_error(data, expected_error, expected_error_description) * _assert_success(data, expected_scopes) """ - def setUp(self): # pylint: disable=arguments-differ + def setUp(self): super(AccessTokenExchangeTestMixin, self).setUp() # Initialize to minimal data @@ -82,7 +82,7 @@ class AccessTokenExchangeTestMixin(ThirdPartyOAuthTestMixin): def test_inactive_user(self): self.user.is_active = False - self.user.save() # pylint: disable=no-member + self.user.save() self._setup_provider_response(success=True) self._assert_success(self.data, expected_scopes=[]) @@ -107,5 +107,5 @@ class AccessTokenExchangeTestMixin(ThirdPartyOAuthTestMixin): Partial.objects.all().delete() self._setup_provider_response(success=True, email=self.user.email) self.user.is_active = False - self.user.save() # pylint: disable=no-member + self.user.save() self._assert_error(self.data, "invalid_grant", "access_token is not valid") diff --git a/openedx/core/djangoapps/auth_exchange/views.py b/openedx/core/djangoapps/auth_exchange/views.py index 38bf6292fb..b2b3fcb1be 100644 --- a/openedx/core/djangoapps/auth_exchange/views.py +++ b/openedx/core/djangoapps/auth_exchange/views.py @@ -43,19 +43,19 @@ class AccessTokenExchangeBase(APIView): def dispatch(self, *args, **kwargs): return super(AccessTokenExchangeBase, self).dispatch(*args, **kwargs) - def get(self, request, _backend): # pylint: disable=arguments-differ + def get(self, request, _backend): """ Pass through GET requests without the _backend """ return super(AccessTokenExchangeBase, self).get(request) - def post(self, request, _backend): # pylint: disable=arguments-differ + def post(self, request, _backend): """ Handle POST requests to get a first-party access token. """ - form = AccessTokenExchangeForm(request=request, oauth2_adapter=self.oauth2_adapter, data=request.POST) # pylint: disable=no-member + form = AccessTokenExchangeForm(request=request, oauth2_adapter=self.oauth2_adapter, data=request.POST) if not form.is_valid(): - return self.error_response(form.errors) # pylint: disable=no-member + return self.error_response(form.errors) user = form.cleaned_data["user"] scope = form.cleaned_data["scope"] @@ -69,10 +69,10 @@ class AccessTokenExchangeBase(APIView): serialized access token response. """ if constants.SINGLE_ACCESS_TOKEN: - edx_access_token = self.get_access_token(request, user, scope, client) # pylint: disable=no-member + edx_access_token = self.get_access_token(request, user, scope, client) else: edx_access_token = self.create_access_token(request, user, scope, client) - return self.access_token_response(edx_access_token) # pylint: disable=no-member + return self.access_token_response(edx_access_token) class DOPAccessTokenExchangeView(AccessTokenExchangeBase, DOPAccessTokenView): diff --git a/openedx/core/djangoapps/bookmarks/models.py b/openedx/core/djangoapps/bookmarks/models.py index f46f8f6bf6..c60aa8ad3b 100644 --- a/openedx/core/djangoapps/bookmarks/models.py +++ b/openedx/core/djangoapps/bookmarks/models.py @@ -100,7 +100,7 @@ class Bookmark(TimeStampedModel): """ Return the resource id: {username,usage_id}. """ - return u"{0},{1}".format(self.user.username, self.usage_key) # pylint: disable=no-member + return u"{0},{1}".format(self.user.username, self.usage_key) @property def display_name(self): @@ -174,7 +174,7 @@ class Bookmark(TimeStampedModel): path_data = [] for ancestor_usage_key in path: - if ancestor_usage_key != usage_key and ancestor_usage_key.block_type != 'course': # pylint: disable=no-member + if ancestor_usage_key != usage_key and ancestor_usage_key.block_type != 'course': try: block = modulestore().get_item(ancestor_usage_key) except ItemNotFoundError: diff --git a/openedx/core/djangoapps/bookmarks/signals.py b/openedx/core/djangoapps/bookmarks/signals.py index 0f04939d78..6cc7f28468 100644 --- a/openedx/core/djangoapps/bookmarks/signals.py +++ b/openedx/core/djangoapps/bookmarks/signals.py @@ -9,7 +9,7 @@ from xmodule.modulestore.django import SignalHandler @receiver(SignalHandler.course_published) -def trigger_update_xblocks_cache_task(sender, course_key, **kwargs): # pylint: disable=invalid-name,unused-argument +def trigger_update_xblocks_cache_task(sender, course_key, **kwargs): # pylint: disable=unused-argument """ Trigger update_xblocks_cache() when course_published signal is fired. """ diff --git a/openedx/core/djangoapps/bookmarks/tasks.py b/openedx/core/djangoapps/bookmarks/tasks.py index 4c7caf4cd9..172a5c07c1 100644 --- a/openedx/core/djangoapps/bookmarks/tasks.py +++ b/openedx/core/djangoapps/bookmarks/tasks.py @@ -3,7 +3,7 @@ Tasks for bookmarks. """ import logging -from celery.task import task # pylint: disable=import-error,no-name-in-module +from celery.task import task from django.db import transaction from opaque_keys.edx.keys import CourseKey diff --git a/openedx/core/djangoapps/bookmarks/tests/test_api.py b/openedx/core/djangoapps/bookmarks/tests/test_api.py index f3570ff712..ce2c6bdfd8 100644 --- a/openedx/core/djangoapps/bookmarks/tests/test_api.py +++ b/openedx/core/djangoapps/bookmarks/tests/test_api.py @@ -32,7 +32,7 @@ class BookmarkApiEventTestMixin(object): """ Assert no events were emitted. """ - self.assertFalse(mock_tracker.called) # pylint: disable=maybe-no-member + self.assertFalse(mock_tracker.called) @ddt.ddt @@ -110,7 +110,7 @@ class BookmarksAPITests(BookmarkApiEventTestMixin, BookmarksTestsBase): with self.assertNumQueries(1): bookmarks = api.get_bookmarks(user=self.user, course_key=course.id, serialized=False) self.assertEqual(len(bookmarks), count) - self.assertIs(bookmarks.model, Bookmark) # pylint: disable=no-member + self.assertIs(bookmarks.model, Bookmark) @patch('openedx.core.djangoapps.bookmarks.api.tracker.emit') def test_create_bookmark(self, mock_tracker): diff --git a/openedx/core/djangoapps/bookmarks/tests/test_models.py b/openedx/core/djangoapps/bookmarks/tests/test_models.py index 132a6f60f5..e22bb85f79 100644 --- a/openedx/core/djangoapps/bookmarks/tests/test_models.py +++ b/openedx/core/djangoapps/bookmarks/tests/test_models.py @@ -131,7 +131,7 @@ class BookmarksTestsBase(ModuleStoreTestCase): # self.other_vertical_1 has two parents self.other_sequential_2.children.append(self.other_vertical_1.location) - modulestore().update_item(self.other_sequential_2, self.admin.id) # pylint: disable=no-member + modulestore().update_item(self.other_sequential_2, self.admin.id) self.other_bookmark_1 = BookmarkFactory.create( user=self.user, @@ -393,7 +393,7 @@ class BookmarkModelTests(BookmarksTestsBase): # Block is an orphan self.other_sequential_1.children = [] - modulestore().update_item(self.other_sequential_1, self.admin.id) # pylint: disable=no-member + modulestore().update_item(self.other_sequential_1, self.admin.id) bookmark_data = self.get_bookmark_data(self.other_vertical_2, user=user) bookmark, __ = Bookmark.create(bookmark_data) diff --git a/openedx/core/djangoapps/bookmarks/tests/test_tasks.py b/openedx/core/djangoapps/bookmarks/tests/test_tasks.py index c2559bc088..f0cb41cb1e 100644 --- a/openedx/core/djangoapps/bookmarks/tests/test_tasks.py +++ b/openedx/core/djangoapps/bookmarks/tests/test_tasks.py @@ -62,7 +62,7 @@ class XBlockCacheTaskTests(BookmarksTestsBase): ], } - self.other_course_expected_cache_data = { # pylint: disable=invalid-name + self.other_course_expected_cache_data = { self.other_course.location: [ [], ], self.other_chapter_1.location: [ diff --git a/openedx/core/djangoapps/bookmarks/tests/test_views.py b/openedx/core/djangoapps/bookmarks/tests/test_views.py index 978211af8e..06d2dafed3 100644 --- a/openedx/core/djangoapps/bookmarks/tests/test_views.py +++ b/openedx/core/djangoapps/bookmarks/tests/test_views.py @@ -174,7 +174,7 @@ class BookmarksListViewTests(BookmarksViewsTestsBase): bookmarks_data = response.data['results'] self.assertEqual(len(bookmarks_data), 0) - self.assertFalse(mock_tracker.emit.called) # pylint: disable=maybe-no-member + self.assertFalse(mock_tracker.emit.called) @patch('eventtracking.tracker.emit') def test_get_all_bookmarks_when_course_id_not_given(self, mock_tracker): diff --git a/openedx/core/djangoapps/bookmarks/views.py b/openedx/core/djangoapps/bookmarks/views.py index a2794b40ed..d60250c9fd 100644 --- a/openedx/core/djangoapps/bookmarks/views.py +++ b/openedx/core/djangoapps/bookmarks/views.py @@ -87,7 +87,7 @@ class BookmarksViewMixin(object): return Response( { "developer_message": developer_message, - "user_message": _(user_message) # pylint: disable=translation-of-non-string + "user_message": _(user_message) }, status=error_status ) @@ -318,7 +318,7 @@ class BookmarksDetailView(APIView, BookmarksViewMixin): log.error(error_message) return self.error_response(error_message, error_status=status.HTTP_404_NOT_FOUND) - def get(self, request, username=None, usage_id=None): # pylint: disable=unused-argument + def get(self, request, username=None, usage_id=None): """ GET /api/bookmarks/v1/bookmarks/{username},{usage_id}?fields=display_name,path """ diff --git a/openedx/core/djangoapps/cache_toolbox/core.py b/openedx/core/djangoapps/cache_toolbox/core.py index 0aa0a66cec..f87132134e 100644 --- a/openedx/core/djangoapps/cache_toolbox/core.py +++ b/openedx/core/djangoapps/cache_toolbox/core.py @@ -63,7 +63,7 @@ def get_instance(model, instance_or_pk, timeout=None, using=None): instance = model._default_manager.using(using).get(pk=primary_key) # pylint: disable=protected-access data = {} - for field in instance._meta.fields: # pylint: disable=protected-access + for field in instance._meta.fields: # Harmless to save, but saves space in the dictionary - we already know # the primary key when we lookup if field.primary_key: @@ -96,7 +96,6 @@ def instance_key(model, instance_or_pk): """ Returns the cache key for this (model, instance) pair. """ - # pylint: disable=protected-access return '%s.%s:%d' % ( model._meta.app_label, model._meta.model_name, diff --git a/openedx/core/djangoapps/cache_toolbox/middleware.py b/openedx/core/djangoapps/cache_toolbox/middleware.py index c684d6419d..1bdec1b45c 100644 --- a/openedx/core/djangoapps/cache_toolbox/middleware.py +++ b/openedx/core/djangoapps/cache_toolbox/middleware.py @@ -104,7 +104,7 @@ class CacheBackedAuthenticationMiddleware(AuthenticationMiddleware): try: # Try and construct a User instance from data stored in the cache session_user_id = SafeSessionMiddleware.get_user_id_from_session(request) - request.user = User.get_cached(session_user_id) # pylint: disable=no-member + request.user = User.get_cached(session_user_id) if request.user.id != session_user_id: log.error( "CacheBackedAuthenticationMiddleware cached user '%s' does not match requested user '%s'.", diff --git a/openedx/core/djangoapps/ccxcon/tasks.py b/openedx/core/djangoapps/ccxcon/tasks.py index 3ff0391ce6..6dc52829db 100644 --- a/openedx/core/djangoapps/ccxcon/tasks.py +++ b/openedx/core/djangoapps/ccxcon/tasks.py @@ -2,8 +2,8 @@ This file contains celery tasks for ccxcon """ -from celery.task import task # pylint: disable=no-name-in-module, import-error -from celery.utils.log import get_task_logger # pylint: disable=no-name-in-module, import-error +from celery.task import task +from celery.utils.log import get_task_logger from opaque_keys.edx.keys import CourseKey from requests.exceptions import ConnectionError, HTTPError, RequestException, TooManyRedirects diff --git a/openedx/core/djangoapps/content/block_structure/models.py b/openedx/core/djangoapps/content/block_structure/models.py index bef9154ab3..69a7750f69 100644 --- a/openedx/core/djangoapps/content/block_structure/models.py +++ b/openedx/core/djangoapps/content/block_structure/models.py @@ -42,7 +42,7 @@ def _directory_name(data_usage_key): ) -def _path_name(bs_model, filename): # pylint:disable=unused-argument +def _path_name(bs_model, _filename): """ Returns path name to use for the given BlockStructureModel instance. diff --git a/openedx/core/djangoapps/content/block_structure/tasks.py b/openedx/core/djangoapps/content/block_structure/tasks.py index 8b5ba1342c..c97d0bf700 100644 --- a/openedx/core/djangoapps/content/block_structure/tasks.py +++ b/openedx/core/djangoapps/content/block_structure/tasks.py @@ -111,7 +111,7 @@ def _call_and_retry_if_needed(self, api_method, **kwargs): except RETRY_TASKS as exc: log.exception("%s encountered expected error, retrying.", self.__name__) raise self.retry(kwargs=kwargs, exc=exc) - except Exception as exc: # pylint: disable=broad-except + except Exception as exc: log.exception( "BlockStructure: %s encountered unknown error in course %s, task_id %s. Retry #%d", self.__name__, diff --git a/openedx/core/djangoapps/content/course_overviews/apps.py b/openedx/core/djangoapps/content/course_overviews/apps.py index f972abab03..8640e17ddc 100644 --- a/openedx/core/djangoapps/content/course_overviews/apps.py +++ b/openedx/core/djangoapps/content/course_overviews/apps.py @@ -14,4 +14,4 @@ class CourseOverviewsConfig(AppConfig): def ready(self): # Import signals to activate signal handler which invalidates # the CourseOverview cache every time a course is published. - from . import signals # pylint: disable=unused-import + from . import signals # pylint: disable=unused-variable diff --git a/openedx/core/djangoapps/content/course_overviews/models.py b/openedx/core/djangoapps/content/course_overviews/models.py index 0c6285ed97..e852cce1b0 100644 --- a/openedx/core/djangoapps/content/course_overviews/models.py +++ b/openedx/core/djangoapps/content/course_overviews/models.py @@ -247,7 +247,7 @@ class CourseOverview(TimeStampedModel): # to save a duplicate. # (see: https://openedx.atlassian.net/browse/TNL-2854). pass - except Exception: # pylint: disable=broad-except + except Exception: log.exception( "CourseOverview for course %s failed!", course_id, diff --git a/openedx/core/djangoapps/contentserver/test/test_contentserver.py b/openedx/core/djangoapps/contentserver/test/test_contentserver.py index 56c8a269fb..afe5cdcb85 100644 --- a/openedx/core/djangoapps/contentserver/test/test_contentserver.py +++ b/openedx/core/djangoapps/contentserver/test/test_contentserver.py @@ -145,7 +145,7 @@ class ContentStoreToyCourseTest(SharedModuleStoreTestCase): self.client.logout() resp = self.client.get(url_unlocked_versioned_old) self.assertEqual(resp.status_code, 301) - self.assertTrue(resp.url.endswith(self.url_unlocked_versioned)) # pylint: disable=no-member + self.assertTrue(resp.url.endswith(self.url_unlocked_versioned)) def test_locked_versioned_asset(self): """ diff --git a/openedx/core/djangoapps/course_groups/partition_scheme.py b/openedx/core/djangoapps/course_groups/partition_scheme.py index 7fdfa92e7b..76f0976755 100644 --- a/openedx/core/djangoapps/course_groups/partition_scheme.py +++ b/openedx/core/djangoapps/course_groups/partition_scheme.py @@ -3,7 +3,7 @@ Provides a UserPartition driver for cohorts. """ import logging -from courseware.masquerade import ( # pylint: disable=import-error +from courseware.masquerade import ( get_course_masquerade, get_masquerading_user_group, is_masquerading_as_specific_student @@ -23,7 +23,6 @@ class CohortPartitionScheme(object): Groups. """ - # pylint: disable=unused-argument @classmethod def get_group_for_user(cls, course_key, user, user_partition, use_cached=True): """ diff --git a/openedx/core/djangoapps/course_groups/tests/helpers.py b/openedx/core/djangoapps/course_groups/tests/helpers.py index 2f38a2eed5..4ffda5336d 100644 --- a/openedx/core/djangoapps/course_groups/tests/helpers.py +++ b/openedx/core/djangoapps/course_groups/tests/helpers.py @@ -59,7 +59,6 @@ class CourseCohortSettingsFactory(DjangoModelFactory): is_cohorted = False course_id = CourseLocator("dummy", "dummy", "dummy") cohorted_discussions = json.dumps([]) - # pylint: disable=invalid-name always_cohort_inline_discussions = False diff --git a/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py b/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py index 403c77cd77..b536be35a3 100644 --- a/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py +++ b/openedx/core/djangoapps/course_groups/tests/test_partition_scheme.py @@ -346,7 +346,7 @@ class TestMasqueradedGroup(StaffMasqueradeTestCase): """ Verify that the masquerade works for the specified group id. """ - self.ensure_masquerade_as_group_member( # pylint: disable=no-member + self.ensure_masquerade_as_group_member( self.user_partition.id, group.id if group is not None else None ) @@ -383,7 +383,7 @@ class TestMasqueradedGroup(StaffMasqueradeTestCase): group. """ self.course.cohort_config = {'cohorted': True} - modulestore().update_item(self.course, self.test_user.id) # pylint: disable=no-member + modulestore().update_item(self.course, self.test_user.id) cohort = CohortFactory.create(course_id=self.course.id, users=[self.test_user]) CourseUserGroupPartitionGroup( course_user_group=cohort, diff --git a/openedx/core/djangoapps/coursegraph/apps.py b/openedx/core/djangoapps/coursegraph/apps.py index 3af16c005b..ff9ac4a7d3 100644 --- a/openedx/core/djangoapps/coursegraph/apps.py +++ b/openedx/core/djangoapps/coursegraph/apps.py @@ -13,4 +13,4 @@ class CoursegraphConfig(AppConfig): """ name = 'openedx.core.djangoapps.coursegraph' - from . import tasks # pylint: disable=unused-variable + from . import tasks diff --git a/openedx/core/djangoapps/coursegraph/management/commands/dump_to_neo4j.py b/openedx/core/djangoapps/coursegraph/management/commands/dump_to_neo4j.py index 1af006432e..bc3649f34b 100644 --- a/openedx/core/djangoapps/coursegraph/management/commands/dump_to_neo4j.py +++ b/openedx/core/djangoapps/coursegraph/management/commands/dump_to_neo4j.py @@ -50,7 +50,7 @@ class Command(BaseCommand): help='dump all--or all specified--courses, ignoring cache', ) - def handle(self, *args, **options): # pylint: disable=unused-argument + def handle(self, *args, **options): """ Iterates through each course, serializes them into graphs, and saves those graphs to neo4j. diff --git a/openedx/core/djangoapps/credit/api/eligibility.py b/openedx/core/djangoapps/credit/api/eligibility.py index d497387203..3d4c5ce57c 100644 --- a/openedx/core/djangoapps/credit/api/eligibility.py +++ b/openedx/core/djangoapps/credit/api/eligibility.py @@ -277,7 +277,6 @@ def set_credit_requirement_status(user, course_key, req_namespace, req_name, sta log.exception("Error sending email") -# pylint: disable=invalid-name def remove_credit_requirement_status(username, course_key, req_namespace, req_name): """ Remove the user's requirement status. diff --git a/openedx/core/djangoapps/credit/models.py b/openedx/core/djangoapps/credit/models.py index 4b5de26201..962efcf6aa 100644 --- a/openedx/core/djangoapps/credit/models.py +++ b/openedx/core/djangoapps/credit/models.py @@ -526,7 +526,7 @@ class CreditRequirementStatus(TimeStampedModel): return requirement_statuses > 0 -def default_deadline_for_credit_eligibility(): # pylint: disable=invalid-name +def default_deadline_for_credit_eligibility(): """ The default deadline to use when creating a new CreditEligibility model. """ return datetime.datetime.now(pytz.UTC) + datetime.timedelta( days=getattr(settings, "CREDIT_ELIGIBILITY_EXPIRATION_DAYS", 365) diff --git a/openedx/core/djangoapps/credit/tasks.py b/openedx/core/djangoapps/credit/tasks.py index f501309e74..b4a050213f 100644 --- a/openedx/core/djangoapps/credit/tasks.py +++ b/openedx/core/djangoapps/credit/tasks.py @@ -17,9 +17,8 @@ from xmodule.modulestore.exceptions import ItemNotFoundError LOGGER = get_task_logger(__name__) -# pylint: disable=not-callable @task(default_retry_delay=settings.CREDIT_TASK_DEFAULT_RETRY_DELAY, max_retries=settings.CREDIT_TASK_MAX_RETRIES) -def update_credit_course_requirements(course_id): # pylint: disable=invalid-name +def update_credit_course_requirements(course_id): """ Updates course requirements table for a course. diff --git a/openedx/core/djangoapps/credit/tests/factories.py b/openedx/core/djangoapps/credit/tests/factories.py index a802ddea40..44c29dbefa 100644 --- a/openedx/core/djangoapps/credit/tests/factories.py +++ b/openedx/core/djangoapps/credit/tests/factories.py @@ -1,7 +1,7 @@ -# pylint:disable=missing-docstring,no-member +# pylint:disable=missing-docstring import datetime import json -import uuid # pylint:disable=unused-import +import uuid from django.contrib.auth.models import User import factory @@ -76,7 +76,6 @@ class CreditRequestFactory(factory.DjangoModelFactory): user = User.objects.get(username=obj.username) user_profile = user.profile - # pylint:disable=access-member-before-definition obj.parameters = json.dumps({ "request_uuid": obj.uuid, "timestamp": to_timestamp(datetime.datetime.now(pytz.UTC)), diff --git a/openedx/core/djangoapps/credit/tests/test_serializers.py b/openedx/core/djangoapps/credit/tests/test_serializers.py index e3a59f84e2..0b3c30eec6 100644 --- a/openedx/core/djangoapps/credit/tests/test_serializers.py +++ b/openedx/core/djangoapps/credit/tests/test_serializers.py @@ -1,6 +1,5 @@ """ Tests for Credit API serializers. """ -# pylint: disable=no-member from __future__ import unicode_literals from django.test import TestCase diff --git a/openedx/core/djangoapps/credit/tests/test_views.py b/openedx/core/djangoapps/credit/tests/test_views.py index 7dba5197b1..f529168528 100644 --- a/openedx/core/djangoapps/credit/tests/test_views.py +++ b/openedx/core/djangoapps/credit/tests/test_views.py @@ -2,8 +2,6 @@ Tests for credit app views. """ -# pylint: disable=no-member - from __future__ import unicode_literals import datetime @@ -141,7 +139,7 @@ class CreditCourseViewSetTests(AuthMixin, UserMixin, TestCase): # Staff users should have access to the API user.is_staff = True - user.save() # pylint: disable=no-member + user.save() response = self.client.get(self.path) self.assertEqual(response.status_code, 200) @@ -163,7 +161,7 @@ class CreditCourseViewSetTests(AuthMixin, UserMixin, TestCase): # Retrieve a CSRF token response = client.get('/') - csrf_token = response.cookies[settings.CSRF_COOKIE_NAME].value # pylint: disable=no-member + csrf_token = response.cookies[settings.CSRF_COOKIE_NAME].value self.assertGreater(len(csrf_token), 0) # Ensure POSTs made with the token succeed. @@ -185,7 +183,7 @@ class CreditCourseViewSetTests(AuthMixin, UserMixin, TestCase): # Staff users should have access to the API user.is_staff = True - user.save() # pylint: disable=no-member + user.save() response = self.client.get(self.path, **headers) self.assertEqual(response.status_code, 200) diff --git a/openedx/core/djangoapps/embargo/models.py b/openedx/core/djangoapps/embargo/models.py index ab0b5ac904..0188e73e26 100644 --- a/openedx/core/djangoapps/embargo/models.py +++ b/openedx/core/djangoapps/embargo/models.py @@ -66,7 +66,6 @@ class EmbargoedCourse(models.Model): not_em = "Not " if self.embargoed: not_em = "" - # pylint: disable=no-member return u"Course '{}' is {}Embargoed".format(text_type(self.course_id), not_em) diff --git a/openedx/core/djangoapps/external_auth/tests/test_openid_provider.py b/openedx/core/djangoapps/external_auth/tests/test_openid_provider.py index 734ba52559..673fbed12e 100644 --- a/openedx/core/djangoapps/external_auth/tests/test_openid_provider.py +++ b/openedx/core/djangoapps/external_auth/tests/test_openid_provider.py @@ -321,7 +321,7 @@ class OpenIdProviderTest(TestCase): self.assertEquals(parsed_qs['openid.ax.type.ext1'][0], 'http://axschema.org/contact/email') self.assertEquals(parsed_qs['openid.ax.type.ext0'][0], 'http://axschema.org/namePerson') self.assertEquals(parsed_qs['openid.ax.value.ext0.1'][0], - user.profile.name.encode('utf-8')) # pylint: disable=no-member + user.profile.name.encode('utf-8')) self.assertEquals(parsed_qs['openid.ax.value.ext1.1'][0], user.email.encode('utf-8')) # pylint: disable=no-member @@ -363,7 +363,7 @@ class OpenIdProviderTest(TestCase): # We trigger situation where user is not active at final phase of # OpenId login. user.is_active = False - user.save() # pylint: disable=no-member + user.save() post_args = { 'email': user.email, 'password': 'test' diff --git a/openedx/core/djangoapps/external_auth/tests/test_shib.py b/openedx/core/djangoapps/external_auth/tests/test_shib.py index ad5339c33b..debcf79b6b 100644 --- a/openedx/core/djangoapps/external_auth/tests/test_shib.py +++ b/openedx/core/djangoapps/external_auth/tests/test_shib.py @@ -1,5 +1,4 @@ # -*- coding: utf-8 -*- -#pylint: disable=no-member """ Tests for Shibboleth Authentication @jbau diff --git a/openedx/core/djangoapps/geoinfo/tests/test_middleware.py b/openedx/core/djangoapps/geoinfo/tests/test_middleware.py index f77e9a01d9..a7f28a9601 100644 --- a/openedx/core/djangoapps/geoinfo/tests/test_middleware.py +++ b/openedx/core/djangoapps/geoinfo/tests/test_middleware.py @@ -1,4 +1,3 @@ -# pylint: disable=no-member """ Tests for CountryMiddleware. """ diff --git a/openedx/core/djangoapps/heartbeat/views.py b/openedx/core/djangoapps/heartbeat/views.py index 3a41d7fc98..09bc7605a6 100644 --- a/openedx/core/djangoapps/heartbeat/views.py +++ b/openedx/core/djangoapps/heartbeat/views.py @@ -8,7 +8,7 @@ from .runchecks import runchecks @dog_stats_api.timed('edxapp.heartbeat') -def heartbeat(request): # pylint: disable=unused-argument +def heartbeat(request): """ Simple view that a loadbalancer can check to verify that the app is up. Returns a json doc of service id: status or message. If the status for any service is anything other than True, diff --git a/openedx/core/djangoapps/lang_pref/api.py b/openedx/core/djangoapps/lang_pref/api.py index 8d06d8c961..c3012fe313 100644 --- a/openedx/core/djangoapps/lang_pref/api.py +++ b/openedx/core/djangoapps/lang_pref/api.py @@ -71,7 +71,7 @@ def all_languages(): alphabetically. """ - languages = [(lang[0], _(lang[1])) for lang in settings.ALL_LANGUAGES] # pylint: disable=translation-of-non-string + languages = [(lang[0], _(lang[1])) for lang in settings.ALL_LANGUAGES] return sorted(languages, key=lambda lang: lang[1]) diff --git a/openedx/core/djangoapps/lang_pref/tests/test_middleware.py b/openedx/core/djangoapps/lang_pref/tests/test_middleware.py index 08ef38be59..c2f71b5bcf 100644 --- a/openedx/core/djangoapps/lang_pref/tests/test_middleware.py +++ b/openedx/core/djangoapps/lang_pref/tests/test_middleware.py @@ -36,7 +36,7 @@ class TestUserPreferenceMiddleware(TestCase): self.anonymous_user = AnonymousUserFactory() self.request = RequestFactory().get('/somewhere') self.request.user = self.user - self.request.META['HTTP_ACCEPT_LANGUAGE'] = 'ar;q=1.0' # pylint: disable=no-member + self.request.META['HTTP_ACCEPT_LANGUAGE'] = 'ar;q=1.0' self.session_middleware.process_request(self.request) def test_logout_shouldnt_remove_cookie(self): diff --git a/openedx/core/djangoapps/lang_pref/tests/test_views.py b/openedx/core/djangoapps/lang_pref/tests/test_views.py index ac365ee4b9..aecad2f4d3 100644 --- a/openedx/core/djangoapps/lang_pref/tests/test_views.py +++ b/openedx/core/djangoapps/lang_pref/tests/test_views.py @@ -26,7 +26,7 @@ class TestLangPrefView(TestCase): def test_language_session_update(self): # test language session updating correctly. - self.request.session[LANGUAGE_SESSION_KEY] = 'ar' # pylint: disable=no-member + self.request.session[LANGUAGE_SESSION_KEY] = 'ar' response = self.client.patch(reverse("session_language"), json.dumps({'pref-lang': 'eo'})) self.assertEqual(response.status_code, 200) self.client.get('/') diff --git a/openedx/core/djangoapps/oauth_dispatch/views.py b/openedx/core/djangoapps/oauth_dispatch/views.py index 0918528f31..cfbdd4a600 100644 --- a/openedx/core/djangoapps/oauth_dispatch/views.py +++ b/openedx/core/djangoapps/oauth_dispatch/views.py @@ -33,7 +33,6 @@ class _DispatchingView(View): behavior routes based on client_id, but this can be overridden by redefining `select_backend()` if particular views need different behavior. """ - # pylint: disable=no-member dot_adapter = adapters.DOTAdapter() dop_adapter = adapters.DOPAdapter() diff --git a/scripts/thresholds.sh b/scripts/thresholds.sh index 5d53e5f5be..d880910dde 100755 --- a/scripts/thresholds.sh +++ b/scripts/thresholds.sh @@ -2,6 +2,6 @@ set -e export LOWER_PYLINT_THRESHOLD=1000 -export UPPER_PYLINT_THRESHOLD=2900 +export UPPER_PYLINT_THRESHOLD=2840 export ESLINT_THRESHOLD=5590 export STYLELINT_THRESHOLD=973