Skip to content

Commit 52702e2

Browse files
authored
Merge pull request #367 from cadenmyers13/dep-msg-helper
feat: Deprecation message helper
2 parents a4c07ef + 8e65b06 commit 52702e2

File tree

2 files changed

+48
-0
lines changed

2 files changed

+48
-0
lines changed

news/dep-msg-helper.rst

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
**Added:**
2+
3+
* Add ``deprecation_message`` helper for printing consistent deprecation messages.
4+
5+
**Changed:**
6+
7+
* <news item>
8+
9+
**Deprecated:**
10+
11+
* <news item>
12+
13+
**Removed:**
14+
15+
* <news item>
16+
17+
**Fixed:**
18+
19+
* <news item>
20+
21+
**Security:**
22+
23+
* <news item>

src/diffpy/utils/_deprecator.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,3 +81,28 @@ def wrapper(*args, **kwargs):
8181
)
8282

8383
return decorator
84+
85+
86+
def deprecation_message(base, old_name, new_name, removal_version):
87+
"""Generate a deprecation message.
88+
89+
Parameters
90+
----------
91+
base : str
92+
The base module or class where the deprecated item resides.
93+
old_name : str
94+
The name of the deprecated item.
95+
new_name : str
96+
The name of the new item to use.
97+
removal_version : str
98+
The version when the deprecated item will be removed.
99+
100+
Returns
101+
-------
102+
str
103+
A formatted deprecation message.
104+
"""
105+
return (
106+
f"'{base}.{old_name}' is deprecated and will be removed in "
107+
f"version {removal_version}. Please use '{base}.{new_name}' instead."
108+
)

0 commit comments

Comments
 (0)