Skip to content

Commit ec6f719

Browse files
authored
Remove patch version number from error link (#794)
1 parent f38bea6 commit ec6f719

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

src/errors/validation_exception.rs

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,18 @@ fn include_url_env(py: Python) -> bool {
111111

112112
static URL_PREFIX: GILOnceCell<String> = GILOnceCell::new();
113113

114+
fn get_formated_url(py: Python) -> &'static str {
115+
let pydantic_version = match get_pydantic_version(py) {
116+
// include major and minor version only
117+
Some(value) => value.split('.').collect::<Vec<&str>>()[..2].join("."),
118+
None => "latest".to_string(),
119+
};
120+
URL_PREFIX.get_or_init(py, || format!("https://errors.pydantic.dev/{pydantic_version}/v/"))
121+
}
122+
114123
fn get_url_prefix(py: Python, include_url: bool) -> Option<&str> {
115124
if include_url {
116-
Some(URL_PREFIX.get_or_init(py, || {
117-
format!(
118-
"https://errors.pydantic.dev/{}/v/",
119-
get_pydantic_version(py).unwrap_or("latest")
120-
)
121-
}))
125+
Some(get_formated_url(py))
122126
} else {
123127
None
124128
}

tests/conftest.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,8 @@ def pydantic_version():
128128
try:
129129
import pydantic
130130

131-
return pydantic.__version__
131+
# include major and minor version only
132+
return '.'.join(pydantic.__version__.split('.')[:2])
132133
except ImportError:
133134
return 'latest'
134135

0 commit comments

Comments
 (0)