From ee803a339b43d264d39626ffa5b443707479b72d Mon Sep 17 00:00:00 2001 From: Alejandro Moreo Date: Fri, 17 Jul 2026 17:43:41 +0200 Subject: [PATCH] silence pystan's repeated pkg_resources deprecation warning stan.plugins.get_plugins() calls pkg_resources.iter_entry_points() from several call sites during model building, each re-emitting setuptools' deprecation notice since Python's default warning dedup is keyed per call site, not per message. Not actionable upstream noise, so filter it by message instead. --- quapy/method/_bayesian.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/quapy/method/_bayesian.py b/quapy/method/_bayesian.py index 325da08..d5d582f 100644 --- a/quapy/method/_bayesian.py +++ b/quapy/method/_bayesian.py @@ -7,6 +7,7 @@ import importlib.resources import logging import os import sys +import warnings from collections.abc import Iterable from numbers import Number, Real @@ -23,6 +24,15 @@ from quapy.method.aggregative import AggregativeSoftQuantifier from quapy.method.confidence import ConfidenceRegionABC, WithConfidenceABC from quapy.protocol import AbstractProtocol +# stan's plugin discovery (stan.plugins.get_plugins) calls pkg_resources.iter_entry_points() +# on every model build, each of which re-emits setuptools' pkg_resources deprecation notice; +# this is upstream pystan noise, not actionable in quapy, so it is silenced here. +warnings.filterwarnings( + "ignore", + message=r".*pkg_resources is deprecated.*", + category=UserWarning, +) + try: import jax import jax.numpy as jnp