lsst-utils 25.2023.2800__py3-none-any.whl → 29.2025.4800__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- lsst/utils/__init__.py +0 -1
- lsst/utils/argparsing.py +79 -0
- lsst/utils/classes.py +26 -9
- lsst/utils/db_auth.py +339 -0
- lsst/utils/deprecated.py +4 -4
- lsst/utils/inheritDoc.py +30 -4
- lsst/utils/introspection.py +242 -23
- lsst/utils/iteration.py +188 -2
- lsst/utils/logging.py +78 -12
- lsst/utils/packages.py +211 -55
- lsst/utils/plotting/__init__.py +15 -0
- lsst/utils/plotting/figures.py +159 -0
- lsst/utils/plotting/limits.py +12 -1
- lsst/utils/plotting/publication_plots.py +184 -0
- lsst/utils/plotting/rubin.mplstyle +46 -0
- lsst/utils/tests.py +112 -57
- lsst/utils/threads.py +1 -1
- lsst/utils/timer.py +189 -45
- lsst/utils/usage.py +2 -2
- lsst/utils/version.py +1 -1
- lsst/utils/wrappers.py +65 -22
- {lsst_utils-25.2023.2800.dist-info → lsst_utils-29.2025.4800.dist-info}/METADATA +18 -12
- lsst_utils-29.2025.4800.dist-info/RECORD +32 -0
- {lsst_utils-25.2023.2800.dist-info → lsst_utils-29.2025.4800.dist-info}/WHEEL +1 -1
- lsst/utils/ellipsis.py +0 -66
- lsst/utils/get_caller_name.py +0 -47
- lsst_utils-25.2023.2800.dist-info/RECORD +0 -28
- {lsst_utils-25.2023.2800.dist-info → lsst_utils-29.2025.4800.dist-info/licenses}/COPYRIGHT +0 -0
- {lsst_utils-25.2023.2800.dist-info → lsst_utils-29.2025.4800.dist-info/licenses}/LICENSE +0 -0
- {lsst_utils-25.2023.2800.dist-info → lsst_utils-29.2025.4800.dist-info}/top_level.txt +0 -0
- {lsst_utils-25.2023.2800.dist-info → lsst_utils-29.2025.4800.dist-info}/zip-safe +0 -0
|
@@ -1,30 +1,36 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: lsst-utils
|
|
3
|
-
Version:
|
|
3
|
+
Version: 29.2025.4800
|
|
4
4
|
Summary: Utility functions from Rubin Observatory Data Management for the Legacy Survey of Space and Time (LSST).
|
|
5
5
|
Author-email: Rubin Observatory Data Management <dm-admin@lists.lsst.org>
|
|
6
|
-
License: BSD
|
|
6
|
+
License-Expression: BSD-3-Clause
|
|
7
7
|
Project-URL: Homepage, https://github.com/lsst/utils
|
|
8
8
|
Keywords: lsst
|
|
9
9
|
Classifier: Intended Audience :: Developers
|
|
10
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
11
10
|
Classifier: Operating System :: OS Independent
|
|
12
11
|
Classifier: Programming Language :: Python :: 3
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
14
12
|
Classifier: Programming Language :: Python :: 3.10
|
|
15
13
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
17
|
+
Requires-Python: >=3.10.0
|
|
16
18
|
Description-Content-Type: text/x-rst
|
|
17
19
|
License-File: COPYRIGHT
|
|
18
20
|
License-File: LICENSE
|
|
19
|
-
Requires-Dist: numpy
|
|
20
|
-
Requires-Dist: psutil
|
|
21
|
-
Requires-Dist: deprecated
|
|
22
|
-
Requires-Dist: pyyaml
|
|
23
|
-
Requires-Dist: astropy
|
|
21
|
+
Requires-Dist: numpy>=1.17
|
|
22
|
+
Requires-Dist: psutil>=5.7
|
|
23
|
+
Requires-Dist: deprecated>=1.2
|
|
24
|
+
Requires-Dist: pyyaml>=5.1
|
|
25
|
+
Requires-Dist: astropy>=5.0
|
|
26
|
+
Requires-Dist: structlog
|
|
24
27
|
Requires-Dist: threadpoolctl
|
|
25
28
|
Provides-Extra: test
|
|
26
|
-
Requires-Dist: pytest
|
|
27
|
-
|
|
29
|
+
Requires-Dist: pytest>=3.2; extra == "test"
|
|
30
|
+
Provides-Extra: plotting
|
|
31
|
+
Requires-Dist: matplotlib; extra == "plotting"
|
|
32
|
+
Requires-Dist: seaborn; extra == "plotting"
|
|
33
|
+
Dynamic: license-file
|
|
28
34
|
|
|
29
35
|
==========
|
|
30
36
|
lsst-utils
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
lsst/__init__.py,sha256=SC6Iu8isb6RY7Axl4OPdrqDt38MVVRn8vbw8qQ1ZUnk,499
|
|
2
|
+
lsst/utils/__init__.py,sha256=LXmENKqD7G9s8CTV9zxdpM35eaDSv5hLvm8ycXu9hHk,569
|
|
3
|
+
lsst/utils/_packaging.py,sha256=4laBi-lHsNYHxms9tjyjMVwfmnwAltt-I2HWP-RE3Ds,1422
|
|
4
|
+
lsst/utils/argparsing.py,sha256=ITLsiANA4FEXc_ZKakX_U1beVez6WHdNoMeS8pC2CeY,2963
|
|
5
|
+
lsst/utils/classes.py,sha256=uTs1Coin5TlpH2rwD5RYh3m_JgMBYVnkg2jklb9Djnc,5467
|
|
6
|
+
lsst/utils/db_auth.py,sha256=qREqUDI7jXr49lY3bKhe75mbZsuAPu2zHaAtel30EEY,12924
|
|
7
|
+
lsst/utils/deprecated.py,sha256=vGypsklkL_aAdtovvF0WS4785zZY1jZMZC1aKm6e2EM,3498
|
|
8
|
+
lsst/utils/doImport.py,sha256=JbD_AR1GQ1PVdK--OJy5tVz1U2Kabe1ETyQoyaq6rpQ,4241
|
|
9
|
+
lsst/utils/inheritDoc.py,sha256=doMsQKcDssZvsTAYJSmHxOWXM4D1wPrDSCTHiaRGUvw,2719
|
|
10
|
+
lsst/utils/introspection.py,sha256=Y1ImDWl5i1O9iRbOoSJhr8Rz57y-_WMgwDtbGJBVxJk,14735
|
|
11
|
+
lsst/utils/iteration.py,sha256=FHDGWcAbWzJdN1RVP-LdtatBfmCW9x_2MdQ5iwmT1sE,9278
|
|
12
|
+
lsst/utils/logging.py,sha256=TPtKK5ShYAEeIFlqhYkEGGSDeUwiMWWzOb1CQGHMBlU,16256
|
|
13
|
+
lsst/utils/packages.py,sha256=XGtZCGkxqUCiyHi6LZDakV7tgoxtvABww7Haen84Yj8,27530
|
|
14
|
+
lsst/utils/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
+
lsst/utils/tests.py,sha256=eEcgGuHfaLorLlPUqwUNbWeO4A_2_r8ON8vTdlhcrek,39185
|
|
16
|
+
lsst/utils/threads.py,sha256=WNl3uvbE7bx5UyxTX0fwN5AkU3Yty_m8y_pMKcMCdv8,2551
|
|
17
|
+
lsst/utils/timer.py,sha256=p_qOEQEIqfQubQJmaN4pK-3YUqZCocY08fBgpnSTXh0,21961
|
|
18
|
+
lsst/utils/usage.py,sha256=qunydx-KlcbNp-vFcBtvBayWwZAa0tHtSWvz5BycvLA,4598
|
|
19
|
+
lsst/utils/version.py,sha256=MHZJr_Yoevn1SeqerO6dmfTP3xtJLGxPmEi-9Jpl380,55
|
|
20
|
+
lsst/utils/wrappers.py,sha256=KCvsrGXziLQ5pC8ytiFEXeDH9mBSo8eCZ8g08f7s404,19209
|
|
21
|
+
lsst/utils/plotting/__init__.py,sha256=OEAZv2W12UAcUfDxH5H_k8v7cK4fVTOssuqNksZTuIs,507
|
|
22
|
+
lsst/utils/plotting/figures.py,sha256=pLkD7MpYk1Zs2hozA2-6r_uUd1129Uoi9EAEkMvtCjk,4356
|
|
23
|
+
lsst/utils/plotting/limits.py,sha256=6ilPmb4wg4aVtjlBgm75FPBrjDVSkW_ywZrj_QIQD2U,5839
|
|
24
|
+
lsst/utils/plotting/publication_plots.py,sha256=-uOL2ptI3N52KxfhtJNsUt7SqeGdT78GF-_QjHKKmV8,5016
|
|
25
|
+
lsst/utils/plotting/rubin.mplstyle,sha256=mjLPYzolUjeCXq8z4ltXLvEf8IuyT4TS0Nx8JJ05v6I,1063
|
|
26
|
+
lsst_utils-29.2025.4800.dist-info/licenses/COPYRIGHT,sha256=I6Bxnp_LkIqDjafZNIXM8jfjYWC4XIlpNpZ7jkdeZK0,361
|
|
27
|
+
lsst_utils-29.2025.4800.dist-info/licenses/LICENSE,sha256=7wrtgl8meQ0_RIuv2TjIKpAnNrl-ODH-QLwyHe9citI,1516
|
|
28
|
+
lsst_utils-29.2025.4800.dist-info/METADATA,sha256=vsgVZPk0hRxE9PQCEMowwthncqar_PjU1KwSk-6eVE8,1770
|
|
29
|
+
lsst_utils-29.2025.4800.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
30
|
+
lsst_utils-29.2025.4800.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
|
|
31
|
+
lsst_utils-29.2025.4800.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
32
|
+
lsst_utils-29.2025.4800.dist-info/RECORD,,
|
lsst/utils/ellipsis.py
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
# This file is part of utils.
|
|
2
|
-
#
|
|
3
|
-
# Developed for the LSST Data Management System.
|
|
4
|
-
# This product includes software developed by the LSST Project
|
|
5
|
-
# (https://www.lsst.org).
|
|
6
|
-
# See the COPYRIGHT file at the top-level directory of this distribution
|
|
7
|
-
# for details of code ownership.
|
|
8
|
-
#
|
|
9
|
-
# Use of this source code is governed by a 3-clause BSD-style
|
|
10
|
-
# license that can be found in the LICENSE file.
|
|
11
|
-
|
|
12
|
-
"""
|
|
13
|
-
A type-annotation workaround for ``...`` not having an exposed type in Python
|
|
14
|
-
prior to version 3.10.
|
|
15
|
-
|
|
16
|
-
This module provides ``Ellipsis`` and ``EllipsisType`` symbols that are
|
|
17
|
-
conditionally defined to point to the built-in "``...``" singleton and its type
|
|
18
|
-
(respectively) at runtime, and an enum class and instance if
|
|
19
|
-
`typing.TYPE_CHECKING` is `True` (an approach first suggested
|
|
20
|
-
`here <https://github.com/python/typing/issues/684#issuecomment-548203158>`_).
|
|
21
|
-
Type checkers should recognize enum literals as singletons, making this pair
|
|
22
|
-
behave as expected under ``is`` comparisons and type-narrowing expressions,
|
|
23
|
-
such as::
|
|
24
|
-
|
|
25
|
-
v: EllipsisType | int
|
|
26
|
-
if v is not Ellipsis:
|
|
27
|
-
v += 2 # type checker should now see v as a pure int
|
|
28
|
-
|
|
29
|
-
This works best when there is a clear boundary between code that needs to be
|
|
30
|
-
type-checked and can use ``Ellipsis`` instead of a literal "``...``", and
|
|
31
|
-
calling code that is either not type-checked or uses `typing.Any` to accept
|
|
32
|
-
literal "``...``" values.
|
|
33
|
-
"""
|
|
34
|
-
|
|
35
|
-
from __future__ import annotations
|
|
36
|
-
|
|
37
|
-
__all__ = ("Ellipsis", "EllipsisType")
|
|
38
|
-
|
|
39
|
-
import warnings
|
|
40
|
-
from typing import TYPE_CHECKING
|
|
41
|
-
|
|
42
|
-
if TYPE_CHECKING:
|
|
43
|
-
from enum import Enum
|
|
44
|
-
|
|
45
|
-
class EllipsisType(Enum):
|
|
46
|
-
"""The type associated with an `...`"""
|
|
47
|
-
|
|
48
|
-
Ellipsis = "..."
|
|
49
|
-
|
|
50
|
-
Ellipsis = EllipsisType.Ellipsis
|
|
51
|
-
|
|
52
|
-
else:
|
|
53
|
-
try:
|
|
54
|
-
# Present in Python >= 3.10
|
|
55
|
-
from types import EllipsisType
|
|
56
|
-
|
|
57
|
-
# If EllipsisType is defined then produce a deprecation warning.
|
|
58
|
-
warnings.warn(
|
|
59
|
-
f"Module {__name__} is deprecated for Python 3.10 or later, native type `types.EllipsisType` "
|
|
60
|
-
"should be used instead.",
|
|
61
|
-
DeprecationWarning,
|
|
62
|
-
stacklevel=2,
|
|
63
|
-
)
|
|
64
|
-
except ImportError:
|
|
65
|
-
EllipsisType = type(Ellipsis)
|
|
66
|
-
Ellipsis = Ellipsis
|
lsst/utils/get_caller_name.py
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
# This file is part of utils.
|
|
2
|
-
#
|
|
3
|
-
# Developed for the LSST Data Management System.
|
|
4
|
-
# This product includes software developed by the LSST Project
|
|
5
|
-
# (https://www.lsst.org).
|
|
6
|
-
# See the COPYRIGHT file at the top-level directory of this distribution
|
|
7
|
-
# for details of code ownership.
|
|
8
|
-
#
|
|
9
|
-
# Use of this source code is governed by a 3-clause BSD-style
|
|
10
|
-
# license that can be found in the LICENSE file.
|
|
11
|
-
|
|
12
|
-
from __future__ import annotations
|
|
13
|
-
|
|
14
|
-
__all__ = ["get_caller_name"]
|
|
15
|
-
|
|
16
|
-
from deprecated.sphinx import deprecated
|
|
17
|
-
|
|
18
|
-
from .introspection import get_caller_name as caller_name
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
@deprecated(
|
|
22
|
-
reason="get_caller_name has moved to `lsst.utils.introspection.get_caller_name`."
|
|
23
|
-
" Will be removed in v26.",
|
|
24
|
-
version="v24",
|
|
25
|
-
category=FutureWarning,
|
|
26
|
-
)
|
|
27
|
-
def get_caller_name(skip: int = 2) -> str:
|
|
28
|
-
"""Get the name of the caller method.
|
|
29
|
-
|
|
30
|
-
Any item that cannot be determined (or is not relevant, e.g. a free
|
|
31
|
-
function has no class) is silently omitted, along with an
|
|
32
|
-
associated separator.
|
|
33
|
-
|
|
34
|
-
Parameters
|
|
35
|
-
----------
|
|
36
|
-
skip : `int`
|
|
37
|
-
How many levels of stack to skip while getting caller name;
|
|
38
|
-
1 means "who calls me", 2 means "who calls my caller", etc.
|
|
39
|
-
|
|
40
|
-
Returns
|
|
41
|
-
-------
|
|
42
|
-
name : `str`
|
|
43
|
-
Name of the caller as a string in the form ``module.class.method``.
|
|
44
|
-
An empty string is returned if ``skip`` exceeds the stack height.
|
|
45
|
-
"""
|
|
46
|
-
# Offset the stack level to account for redirect and deprecated wrapper.
|
|
47
|
-
return caller_name(stacklevel=skip + 2)
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
lsst/__init__.py,sha256=SC6Iu8isb6RY7Axl4OPdrqDt38MVVRn8vbw8qQ1ZUnk,499
|
|
2
|
-
lsst/utils/__init__.py,sha256=pSj1MgW-aDWy11ssFsiJ4TZGk_LCMkOO_7JCqvV10j0,600
|
|
3
|
-
lsst/utils/_packaging.py,sha256=4laBi-lHsNYHxms9tjyjMVwfmnwAltt-I2HWP-RE3Ds,1422
|
|
4
|
-
lsst/utils/classes.py,sha256=kOjIeAdZE5fPud9CC74b9MAUlg4wSyxaYK845AziAas,4797
|
|
5
|
-
lsst/utils/deprecated.py,sha256=1DKpb1Bbtnm4gLFR94EZP2ihmPF4guUF-QsI3K9hYes,3494
|
|
6
|
-
lsst/utils/doImport.py,sha256=JbD_AR1GQ1PVdK--OJy5tVz1U2Kabe1ETyQoyaq6rpQ,4241
|
|
7
|
-
lsst/utils/ellipsis.py,sha256=0vxAe5cr6dGLTOg5TMSCOvM-A4dpjAo3lQjy0PyBpi8,2189
|
|
8
|
-
lsst/utils/get_caller_name.py,sha256=CN_TB9JQqrB4tsFNjpS8DnO4J4-jAYB9z3PNrmuwHGc,1490
|
|
9
|
-
lsst/utils/inheritDoc.py,sha256=HgaFJGyyrTLqhd9vG4mQabZGm449dGy7p3Oskv2cRv4,1653
|
|
10
|
-
lsst/utils/introspection.py,sha256=WV_zB3jT-XULs-KW1OzuT9vD5hULJcbO6CqwPgQ1ExM,7119
|
|
11
|
-
lsst/utils/iteration.py,sha256=-NdqooqC-rLa68khIvsDYtol15bh8gj-CHTrMzOf_Zg,3190
|
|
12
|
-
lsst/utils/logging.py,sha256=IyiZIzsAth2vZnhSa1F1smoAb2-fOyGuxuej9re7N4w,14107
|
|
13
|
-
lsst/utils/packages.py,sha256=2FeENvEsnqF45YddNrqu47qj0VJFgntKLYjMsi3v6Yg,21913
|
|
14
|
-
lsst/utils/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
-
lsst/utils/tests.py,sha256=bLXZWSayYgkG9Xs-oDIDOPyV0sMSyCIb4dnhEJhcyco,37429
|
|
16
|
-
lsst/utils/threads.py,sha256=WOmliViA3O-qCoJitcXCHhhx-uDlKczBAPh-FHHZ9q8,2551
|
|
17
|
-
lsst/utils/timer.py,sha256=9ziVn-rZ7bMxu_iJxWiN41chHtbUbc4AnRpnAouOhS0,16546
|
|
18
|
-
lsst/utils/usage.py,sha256=c7NPiXlu--5yNUu5qPgoZMq7HDSc7v7In_ibRjPyBA4,4598
|
|
19
|
-
lsst/utils/version.py,sha256=KtJuLbdujjmq9zod3IHNgyqVWtL-JXZiRE3tn0G86Xg,55
|
|
20
|
-
lsst/utils/wrappers.py,sha256=rDyqmZe6mNFG364b3q-0bY3HPKL_lt0eIIuaDv_BzsI,18064
|
|
21
|
-
lsst/utils/plotting/limits.py,sha256=cz9Zm6FHFZw1lKWxWbaW36Jud5BIWhjQ9EEmerAwysU,5207
|
|
22
|
-
lsst_utils-25.2023.2800.dist-info/COPYRIGHT,sha256=I6Bxnp_LkIqDjafZNIXM8jfjYWC4XIlpNpZ7jkdeZK0,361
|
|
23
|
-
lsst_utils-25.2023.2800.dist-info/LICENSE,sha256=7wrtgl8meQ0_RIuv2TjIKpAnNrl-ODH-QLwyHe9citI,1516
|
|
24
|
-
lsst_utils-25.2023.2800.dist-info/METADATA,sha256=_ArFTsOXsokQLnPIhMHbv7bciAapUe35Jr-KnY0Pb8w,1605
|
|
25
|
-
lsst_utils-25.2023.2800.dist-info/WHEEL,sha256=pkctZYzUS4AYVn6dJ-7367OJZivF2e8RA9b_ZBjif18,92
|
|
26
|
-
lsst_utils-25.2023.2800.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
|
|
27
|
-
lsst_utils-25.2023.2800.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
28
|
-
lsst_utils-25.2023.2800.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|