diff --git a/python/lsst/rubintv/analysis/service/commands/butler.py b/python/lsst/rubintv/analysis/service/commands/butler.py
index 709e8e1..9de7141 100644
--- a/python/lsst/rubintv/analysis/service/commands/butler.py
+++ b/python/lsst/rubintv/analysis/service/commands/butler.py
@@ -24,9 +24,8 @@
from dataclasses import dataclass
from typing import TYPE_CHECKING
-from lsst.obs.lsst import LsstCam, LsstComCam, Latiss
from lsst.afw.cameraGeom import FOCAL_PLANE, Camera, Detector
-
+from lsst.obs.lsst import Latiss, LsstCam, LsstComCam
from ..command import BaseCommand
diff --git a/python/lsst/rubintv/analysis/service/commands/db.py b/python/lsst/rubintv/analysis/service/commands/db.py
index 908ef8f..8486fea 100644
--- a/python/lsst/rubintv/analysis/service/commands/db.py
+++ b/python/lsst/rubintv/analysis/service/commands/db.py
@@ -21,16 +21,16 @@
from __future__ import annotations
-from dataclasses import dataclass
import logging
+from dataclasses import dataclass
from typing import TYPE_CHECKING
-from lsst.obs.lsst import LsstCam, LsstComCam, Latiss, LsstComCamSim
from lsst.afw.cameraGeom import FOCAL_PLANE
+from lsst.obs.lsst import Latiss, LsstCam, LsstComCam, LsstComCamSim
from ..command import BaseCommand
-from ..query import EqualityQuery, ParentQuery, Query
from ..database import exposure_tables, visit1_tables
+from ..query import EqualityQuery, ParentQuery, Query
if TYPE_CHECKING:
from ..data import DataCenter
diff --git a/python/lsst/rubintv/analysis/service/commands/image.py b/python/lsst/rubintv/analysis/service/commands/image.py
index d3008b5..2d5a6fe 100644
--- a/python/lsst/rubintv/analysis/service/commands/image.py
+++ b/python/lsst/rubintv/analysis/service/commands/image.py
@@ -21,8 +21,8 @@
from __future__ import annotations
-from dataclasses import dataclass
import logging
+from dataclasses import dataclass
from lsst.rubintv.analysis.service.data import DataCenter
diff --git a/python/lsst/rubintv/analysis/service/database.py b/python/lsst/rubintv/analysis/service/database.py
index 3e917d4..b7ffa1d 100644
--- a/python/lsst/rubintv/analysis/service/database.py
+++ b/python/lsst/rubintv/analysis/service/database.py
@@ -21,8 +21,8 @@
from __future__ import annotations
-from abc import ABC, abstractmethod
import logging
+from abc import ABC, abstractmethod
from typing import cast
import sqlalchemy
diff --git a/python/lsst/rubintv/analysis/service/utils.py b/python/lsst/rubintv/analysis/service/utils.py
index d3050fb..29f9b37 100644
--- a/python/lsst/rubintv/analysis/service/utils.py
+++ b/python/lsst/rubintv/analysis/service/utils.py
@@ -19,8 +19,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
-from enum import Enum
import logging
+from enum import Enum
__all__ = ["ServerFormatter"]
diff --git a/python/lsst/rubintv/analysis/service/viewer.py b/python/lsst/rubintv/analysis/service/viewer.py
index 5c2f3f5..928b129 100644
--- a/python/lsst/rubintv/analysis/service/viewer.py
+++ b/python/lsst/rubintv/analysis/service/viewer.py
@@ -20,18 +20,18 @@
# along with this program. If not, see .
from __future__ import annotations
-from dataclasses import dataclass
+
import datetime
+from dataclasses import dataclass
from typing import Any
import numpy as np
+import scipy.ndimage
+from lsst.geom import Box2I
from matplotlib import cm as cmap
from matplotlib.colors import Normalize
-import scipy.ndimage
from PIL import Image
-from lsst.geom import Box2I
-
# It may be desirabe in the future to allow users to choose
# what type of image they want to send to the client.
# For now the default is sent to png.
diff --git a/scripts/joins.yaml b/scripts/joins.yaml
index 16bc80f..c4f0793 100644
--- a/scripts/joins.yaml
+++ b/scripts/joins.yaml
@@ -126,4 +126,4 @@ joins:
ccdexposure:
- exposure_id
visit1_quicklook:
- - visit_id
\ No newline at end of file
+ - visit_id
diff --git a/scripts/mock_server.py b/scripts/mock_server.py
index 68731d6..108d62e 100644
--- a/scripts/mock_server.py
+++ b/scripts/mock_server.py
@@ -22,19 +22,17 @@
from __future__ import annotations
import argparse
+import logging
import uuid
from dataclasses import dataclass
from enum import Enum
-import logging
import tornado.httpserver
import tornado.ioloop
import tornado.web
import tornado.websocket
-
from lsst.rubintv.analysis.service.utils import ServerFormatter
-
logger = logging.getLogger("lsst.rubintv.analysis.service.server")
diff --git a/scripts/rubintv_worker.py b/scripts/rubintv_worker.py
index 716ad55..1d63bd7 100644
--- a/scripts/rubintv_worker.py
+++ b/scripts/rubintv_worker.py
@@ -27,14 +27,12 @@
import sqlalchemy
import yaml
from lsst.daf.butler import Butler
-
from lsst.rubintv.analysis.service.data import DataCenter, DataMatch
from lsst.rubintv.analysis.service.database import ConsDbSchema
from lsst.rubintv.analysis.service.efd import EfdClient
from lsst.rubintv.analysis.service.utils import ServerFormatter
from lsst.rubintv.analysis.service.worker import Worker
-
default_config = os.path.join(pathlib.Path(__file__).parent.absolute(), "config.yaml")
default_joins = os.path.join(pathlib.Path(__file__).parent.absolute(), "joins.yaml")
logger = logging.getLogger("lsst.rubintv.analysis.server.worker")
diff --git a/ups/rubintv_analysis_service.table b/ups/rubintv_analysis_service.table
index e1e210e..9b4e07b 100644
--- a/ups/rubintv_analysis_service.table
+++ b/ups/rubintv_analysis_service.table
@@ -3,6 +3,7 @@
# - Common third-party packages can be assumed to be recursively included by
# the "base" package.
setupRequired(lsst_distrib)
+setupRequired(obs_lsst)
# The following is boilerplate for all packages.
# See https://dmtn-001.lsst.io for details on LSST_LIBRARY_PATH.