diff --git a/.pylintrc b/.pylintrc index 49c5412..7dc3e88 100644 --- a/.pylintrc +++ b/.pylintrc @@ -19,7 +19,6 @@ disable= R0915, R1705, W0511, - W0703, W1201, W1202, W5102, diff --git a/db/api/serializers.py b/db/api/serializers.py index 88f501e..e6c4c5b 100644 --- a/db/api/serializers.py +++ b/db/api/serializers.py @@ -49,14 +49,14 @@ class TransmitterSerializer(serializers.ModelSerializer): """Returns mode ID""" try: return obj.mode.id - except Exception: + except Exception: # pylint: disable=broad-except return None def get_mode(self, obj): """Returns mode name""" try: return obj.mode.name - except Exception: + except Exception: # pylint: disable=broad-except return None def get_norad_cat_id(self, obj): @@ -87,7 +87,7 @@ class TelemetrySerializer(serializers.ModelSerializer): """Returns Transmitter UUID""" try: return obj.transmitter.uuid - except Exception: + except Exception: # pylint: disable=broad-except return '' # TODO: this is a relic of the old data decoding method, needs revisiting @@ -95,7 +95,7 @@ class TelemetrySerializer(serializers.ModelSerializer): """Returns Transmitter telemetry schema""" try: return obj.payload_telemetry.schema - except Exception: + except Exception: # pylint: disable=broad-except return '' # TODO: this is a relic of the old data decoding method, needs revisiting diff --git a/db/base/helpers.py b/db/base/helpers.py index d605f5e..04b275a 100644 --- a/db/base/helpers.py +++ b/db/base/helpers.py @@ -2,6 +2,7 @@ from __future__ import absolute_import, division, print_function, \ unicode_literals +from django.core.exceptions import ObjectDoesNotExist from rest_framework.authtoken.models import Token UPPER = 'ABCDEFGHIJKLMNOPQRSTUVWX' @@ -52,6 +53,6 @@ def get_apikey(user): """ try: token = Token.objects.get(user=user) - except Exception: + except ObjectDoesNotExist: token = Token.objects.create(user=user) return token diff --git a/db/base/management/commands/delete_satellite.py b/db/base/management/commands/delete_satellite.py index ab9c7c2..574afcf 100644 --- a/db/base/management/commands/delete_satellite.py +++ b/db/base/management/commands/delete_satellite.py @@ -2,6 +2,7 @@ from __future__ import absolute_import, division, print_function, \ unicode_literals +from django.core.exceptions import ObjectDoesNotExist from django.core.management.base import BaseCommand from db.base.models import Satellite @@ -21,5 +22,5 @@ class Command(BaseCommand): Satellite.objects.get(norad_cat_id=norad_id).delete() self.stdout.write('Deleted satellite {}.'.format(norad_id)) continue - except Exception: + except ObjectDoesNotExist: self.stderr.write('Satellite with Identifier {} does not exist'.format(norad_id)) diff --git a/db/base/models.py b/db/base/models.py index 3b0f070..b0a106a 100644 --- a/db/base/models.py +++ b/db/base/models.py @@ -49,7 +49,7 @@ def _gen_observer(sender, instance, created, **kwargs): # pylint: disable=W0613 post_save.disconnect(_gen_observer, sender=DemodData) try: qth = gridsquare(instance.lat, instance.lng) - except Exception: + except Exception: # pylint: disable=broad-except instance.observer = 'Unknown' else: instance.observer = '{0}-{1}'.format(instance.station, qth) diff --git a/db/base/tasks.py b/db/base/tasks.py index a65eb77..bea64c5 100644 --- a/db/base/tasks.py +++ b/db/base/tasks.py @@ -170,5 +170,7 @@ def decode_recent_data(): for obj in satellites: try: decode_data(obj.norad_cat_id, period=1) - except Exception: + except Exception: # pylint: disable=broad-except + # an object could have failed decoding for a number of reasons, + # keep going continue diff --git a/db/base/utils.py b/db/base/utils.py index 4b197ae..e3fc9aa 100644 --- a/db/base/utils.py +++ b/db/base/utils.py @@ -227,14 +227,14 @@ def decode_data(norad, period=None): obj.is_decoded = True obj.save() break - except Exception: + except Exception: # pylint: disable=broad-except obj.is_decoded = False obj.save() continue else: # store in the local db instead of influx try: frame = decoder_class.from_bytes(bindata) - except Exception: + except Exception: # pylint: disable=broad-except obj.payload_decoded = '' obj.is_decoded = False obj.save() diff --git a/db/base/views.py b/db/base/views.py index b6aa457..151f3a7 100644 --- a/db/base/views.py +++ b/db/base/views.py @@ -10,6 +10,7 @@ from django.contrib.auth.decorators import login_required from django.contrib.auth.models import User from django.contrib.sites.shortcuts import get_current_site from django.core.cache import cache +from django.core.exceptions import ObjectDoesNotExist from django.db import OperationalError from django.http import HttpResponse, HttpResponseNotFound, \ HttpResponseServerError, JsonResponse @@ -105,7 +106,7 @@ def satellite(request, norad): try: latest_frame = DemodData.objects.filter(satellite=satellite_obj).order_by('-id')[0] - except Exception: + except ObjectDoesNotExist: latest_frame = '' return render( @@ -179,7 +180,7 @@ def transmitter_suggestion(request): for user in admins: try: user.email_user(subject, message, from_email=settings.DEFAULT_FROM_EMAIL) - except Exception: + except Exception: # pylint: disable=broad-except LOGGER.error('Could not send email to user', exc_info=True) messages.success(