From 60216aca05a452ecc46674e612acb22d3fdf4b09 Mon Sep 17 00:00:00 2001 From: Tim Jenness Date: Tue, 22 Sep 2026 09:14:48 -0700 Subject: [PATCH 1/3] Switch to monthly batches for dependabot --- .github/dependabot.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 5ace4600..f82a69c7 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,6 +1,14 @@ version: 2 updates: + # Each ecosystem batches all its version updates into a single pull request. + # Security updates are not grouped and still open immediately. - package-ecosystem: "github-actions" directory: "/" schedule: - interval: "weekly" + interval: "monthly" + cooldown: + default-days: 7 + groups: + monthly-batch: + patterns: + - "*" From b6415a22f0e1b64ff43942d3659b92f078ecc98d Mon Sep 17 00:00:00 2001 From: Tim Jenness Date: Tue, 22 Sep 2026 09:44:50 -0700 Subject: [PATCH 2/3] Minor typing fixes now that sphgeom is typed --- python/lsst/obs/base/defineVisits.py | 2 +- python/lsst/obs/base/ingest_tests.py | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/python/lsst/obs/base/defineVisits.py b/python/lsst/obs/base/defineVisits.py index dc580c85..00eb1a6a 100644 --- a/python/lsst/obs/base/defineVisits.py +++ b/python/lsst/obs/base/defineVisits.py @@ -1476,7 +1476,7 @@ def compute( else: detectorBounds = self.computeExposureBounds(visit.exposures[0], collections=collections) visitBounds = [] - detectorRegions = {} + detectorRegions: dict[int, Region] = {} for detectorId, bounds in detectorBounds.items(): detectorRegions[detectorId] = ConvexPolygon.convexHull(bounds) visitBounds.extend(bounds) diff --git a/python/lsst/obs/base/ingest_tests.py b/python/lsst/obs/base/ingest_tests.py index 602a6d59..b46c01aa 100644 --- a/python/lsst/obs/base/ingest_tests.py +++ b/python/lsst/obs/base/ingest_tests.py @@ -554,6 +554,8 @@ def testDefineVisits(self) -> None: self.assertEqual(len(detectorVisitDataIds), len(camera)) for dataId in detectorVisitDataIds: assert isinstance(foundVisit.region, lsst.sphgeom.Region) + # Use bare assert for mypy. + assert dataId.region is not None self.assertTrue(foundVisit.region.contains(dataId.region)) # Check obscore table again. From f1e080bbb49051c57712d9eaa4032d8da7a40a1e Mon Sep 17 00:00:00 2001 From: Tim Jenness Date: Tue, 22 Sep 2026 09:45:29 -0700 Subject: [PATCH 3/3] Ignore type warning from region.contains(region) The sphgeom base class does not have typing to say this works. --- python/lsst/obs/base/ingest_tests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/lsst/obs/base/ingest_tests.py b/python/lsst/obs/base/ingest_tests.py index b46c01aa..fd302197 100644 --- a/python/lsst/obs/base/ingest_tests.py +++ b/python/lsst/obs/base/ingest_tests.py @@ -556,7 +556,7 @@ def testDefineVisits(self) -> None: assert isinstance(foundVisit.region, lsst.sphgeom.Region) # Use bare assert for mypy. assert dataId.region is not None - self.assertTrue(foundVisit.region.contains(dataId.region)) + self.assertTrue(foundVisit.region.contains(dataId.region)) # type: ignore[call-overload] # Check obscore table again. self._check_obscore(butler.registry, has_visits=True)