From 6f7d8a0cf43f876d0439bc43c5664f3ce7d4e687 Mon Sep 17 00:00:00 2001 From: Joe LeVeque Date: Wed, 2 Dec 2020 10:37:22 -0800 Subject: [PATCH] Fix some LGTM alerts; Add LGTM badges to README.md (#146) LGTM tool is now active for the sonic-platform-common repo. - Add LGTM badges to README.md - Fix 26 LGTM alerts: - 17 for Unused import - 9 for Except block handles 'BaseException' --- README.md | 3 +++ sonic_platform_base/sonic_eeprom/eeprom_base.py | 9 +-------- sonic_platform_base/sonic_eeprom/eeprom_tlvinfo.py | 9 ++------- sonic_platform_base/sonic_sfp/bcmshell.py | 4 ++-- sonic_platform_base/sonic_sfp/sff8436.py | 1 - sonic_platform_base/sonic_sfp/sff8472.py | 3 +-- sonic_platform_base/sonic_sfp/sffbase.py | 4 ++-- sonic_platform_base/sonic_sfp/sfputilbase.py | 14 ++++++-------- sonic_platform_base/sonic_sfp/sfputilhelper.py | 4 +--- sonic_platform_base/thermal_base.py | 1 - 10 files changed, 18 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index c5adf58369..d66de0eea7 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ +[![Total alerts](https://img.shields.io/lgtm/alerts/g/Azure/sonic-platform-common.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Azure/sonic-platform-common/alerts/) +[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/Azure/sonic-platform-common.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Azure/sonic-platform-common/context:python) + # SONiC: Software for Open Networking in the Cloud ## sonic-platform-common diff --git a/sonic_platform_base/sonic_eeprom/eeprom_base.py b/sonic_platform_base/sonic_eeprom/eeprom_base.py index 7904f1e2a1..05d74573c4 100644 --- a/sonic_platform_base/sonic_eeprom/eeprom_base.py +++ b/sonic_platform_base/sonic_eeprom/eeprom_base.py @@ -10,18 +10,11 @@ from __future__ import print_function -try: - import exceptions # Python 2 -except ImportError: - import builtins as exceptions # Python 3 try: import binascii - import optparse import os import io - import sys import struct - import subprocess import fcntl except ImportError as e: raise ImportError (str(e) + "- required module not found") @@ -224,7 +217,7 @@ def open_eeprom(self): if os.path.isfile(self.cache_name): eeprom_file = self.cache_name using_eeprom = False - except: + except Exception: pass self.cache_update_needed = using_eeprom return io.open(eeprom_file, "rb") diff --git a/sonic_platform_base/sonic_eeprom/eeprom_tlvinfo.py b/sonic_platform_base/sonic_eeprom/eeprom_tlvinfo.py index e5265a5346..39044c794f 100644 --- a/sonic_platform_base/sonic_eeprom/eeprom_tlvinfo.py +++ b/sonic_platform_base/sonic_eeprom/eeprom_tlvinfo.py @@ -11,15 +11,10 @@ from __future__ import print_function try: - import exceptions # Python 2 -except ImportError: - import builtins as exceptions # Python 3 -try: - import binascii - import optparse - import os import sys + import redis + from . import eeprom_base # Dot module supports both Python 2 and Python 3 using explicit relative import methods except ImportError as e: raise ImportError (str(e) + "- required module not found") diff --git a/sonic_platform_base/sonic_sfp/bcmshell.py b/sonic_platform_base/sonic_sfp/bcmshell.py index 821e48d11a..244dfa6721 100644 --- a/sonic_platform_base/sonic_sfp/bcmshell.py +++ b/sonic_platform_base/sonic_sfp/bcmshell.py @@ -116,7 +116,7 @@ def __del__(self): try: self.close() - except: + except Exception: pass #--------------- @@ -497,5 +497,5 @@ def __open__(self): raise IOError("Socket error: unable to flush %s on open: %s" % (self.socketname, errstr)) except IOError as e: raise IOError("unable to flush %s on open: %s" % (self.socketname, e.message)) - except: + except Exception: raise IOError("unable to flush %s on open" % self.socketname) diff --git a/sonic_platform_base/sonic_sfp/sff8436.py b/sonic_platform_base/sonic_sfp/sff8436.py index 79dfca182b..0146bfcea5 100644 --- a/sonic_platform_base/sonic_sfp/sff8436.py +++ b/sonic_platform_base/sonic_sfp/sff8436.py @@ -9,7 +9,6 @@ import struct import sys import time - import binascii import os import getopt import types diff --git a/sonic_platform_base/sonic_sfp/sff8472.py b/sonic_platform_base/sonic_sfp/sff8472.py index 1b84685f39..9ded3f4e71 100644 --- a/sonic_platform_base/sonic_sfp/sff8472.py +++ b/sonic_platform_base/sonic_sfp/sff8472.py @@ -11,7 +11,6 @@ import struct import sys import time - import binascii import os import getopt import types @@ -530,7 +529,7 @@ def _get_calibration_type(self, eeprom_data): return 2 # externally calibrated else: return 0 # Could not find calibration type - except: + except Exception: return 0 def __init__(self, eeprom_raw_data=None): diff --git a/sonic_platform_base/sonic_sfp/sffbase.py b/sonic_platform_base/sonic_sfp/sffbase.py index 7bbdebb280..a1311e9bb0 100644 --- a/sonic_platform_base/sonic_sfp/sffbase.py +++ b/sonic_platform_base/sonic_sfp/sffbase.py @@ -63,7 +63,7 @@ def test_bit(self, n, bitpos): return 0 else: return 1 - except: + except Exception: return -1 def twos_comp(self, num, bits): @@ -71,7 +71,7 @@ def twos_comp(self, num, bits): if ((num & (1 << (bits - 1))) != 0): num = num - (1 << bits) return num - except: + except Exception: return 0 def mw_to_dbm(self, mW): diff --git a/sonic_platform_base/sonic_sfp/sfputilbase.py b/sonic_platform_base/sonic_sfp/sfputilbase.py index d739d2b9cd..74c420bb00 100644 --- a/sonic_platform_base/sonic_sfp/sfputilbase.py +++ b/sonic_platform_base/sonic_sfp/sfputilbase.py @@ -7,7 +7,6 @@ try: import abc - import binascii import os import re import sys @@ -18,7 +17,6 @@ from sonic_py_common import device_info from sonic_py_common.interface import backplane_prefix - from . import bcmshell # Dot module supports both Python 2 and Python 3 using explicit relative import methods from sonic_eeprom import eeprom_dts from .sff8472 import sff8472InterfaceId # Dot module supports both Python 2 and Python 3 using explicit relative import methods from .sff8472 import sff8472Dom # Dot module supports both Python 2 and Python 3 using explicit relative import methods @@ -283,7 +281,7 @@ def _sfp_eeprom_present(self, sysfs_sfp_i2c_client_eeprompath, offset): sysfsfile.read(1) except IOError: return False - except: + except Exception: return False else: return True @@ -342,7 +340,7 @@ def _read_eeprom_specific_bytes(self, sysfsfile_eeprom, offset, num_bytes): try: for n in range(0, num_bytes): eeprom_raw[n] = hex(ord(raw[n]))[2:].zfill(2) - except: + except Exception: return None return eeprom_raw @@ -364,7 +362,7 @@ def _read_eeprom_devid(self, port_num, devid, offset, num_bytes = 256): try: sysfsfile_eeprom.close() - except: + except Exception: return None return eeprom_raw @@ -395,7 +393,7 @@ def _write_eeprom_devid(self, port_num, devid, offset, num_bytes, write_buffer): try: sysfsfile_eeprom.close() - except: + except Exception: return False return True @@ -468,7 +466,7 @@ def read_porttab_mappings(self, porttabfile, asic_inst=0): try: f = open(porttabfile) - except: + except Exception: raise # Read the porttab file and generate dicts @@ -571,7 +569,7 @@ def read_phytab_mappings(self, phytabfile): try: f = open(phytabfile) - except: + except Exception: raise # Read the phytab file and generate dicts diff --git a/sonic_platform_base/sonic_sfp/sfputilhelper.py b/sonic_platform_base/sonic_sfp/sfputilhelper.py index e29e175c90..a18305b669 100644 --- a/sonic_platform_base/sonic_sfp/sfputilhelper.py +++ b/sonic_platform_base/sonic_sfp/sfputilhelper.py @@ -6,8 +6,6 @@ from __future__ import print_function try: - import abc - import binascii import os import re import sys @@ -105,7 +103,7 @@ def read_porttab_mappings(self, porttabfile, asic_inst=0): try: f = open(porttabfile) - except: + except Exception: raise # Read the porttab file and generate dicts diff --git a/sonic_platform_base/thermal_base.py b/sonic_platform_base/thermal_base.py index 82d4b7ef24..75cbea1940 100644 --- a/sonic_platform_base/thermal_base.py +++ b/sonic_platform_base/thermal_base.py @@ -5,7 +5,6 @@ # to interact with a thermal module in SONiC # -import sys from . import device_base