Skip to content

Commit fdae800

Browse files
author
Travis Hammond
committed
feat: more helpful error messages for plugin panics
1 parent bfe2fec commit fdae800

6 files changed

Lines changed: 15 additions & 15 deletions

File tree

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "polars-list-utils"
3-
version = "0.10.0"
3+
version = "0.10.1"
44
edition = "2024"
55

66
[lib]

src/agg.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,21 +31,21 @@ fn expr_aggregate_list_col_elementwise(
3131
let ca = inputs[0].list()?;
3232

3333
if ca.dtype() != &DataType::List(Box::new(DataType::Float64)) {
34-
let msg = format!("Expected `List(Float64)`, got: {}", ca.dtype());
34+
let msg = format!("(aggregate_list_col_elementwise): Expected `List(Float64)`, got: {}", ca.dtype());
3535
return Err(PolarsError::ComputeError(msg.into()));
3636
}
3737

3838
if kwargs.list_size == 0 {
3939
return Err(PolarsError::ComputeError(
40-
"list_size must be greater than 0".into(),
40+
"(aggregate_list_col_elementwise): list_size must be greater than 0".into(),
4141
));
4242
}
4343

4444
let valid_aggregations = ["mean", "sum", "count"];
4545
if !valid_aggregations.contains(&kwargs.aggregation.as_str()) {
4646
return Err(PolarsError::ComputeError(
4747
format!(
48-
"Invalid aggregation method provided: {}. Must be one of [{}]",
48+
"(aggregate_list_col_elementwise): Invalid aggregation method provided: {}. Must be one of [{}]",
4949
kwargs.aggregation,
5050
valid_aggregations.join(", "),
5151
)
@@ -117,7 +117,7 @@ fn expr_aggregate_list_col_elementwise(
117117

118118
if list_too_short {
119119
Err(PolarsError::ComputeError(
120-
"One of the lists is shorter than the given list_size!".into(),
120+
"(aggregate_list_col_elementwise): One of the lists is shorter than the given list_size!".into(),
121121
))
122122
} else {
123123
Ok(Series::new(PlSmallStr::EMPTY, out))

src/dsp.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ fn expr_fft(
5555
let ca = inputs[0].list()?;
5656

5757
if ca.dtype() != &DataType::List(Box::new(DataType::Float64)) {
58-
let msg = format!("Expected `List(Float64)`, got: {}", ca.dtype());
58+
let msg = format!("(apply_fft): Expected `List(Float64)`, got: {}", ca.dtype());
5959
return Err(PolarsError::ComputeError(msg.into()));
6060
}
6161

@@ -152,15 +152,15 @@ fn expr_fft(
152152

153153
if invalid_value_encountered {
154154
Err(PolarsError::ComputeError(
155-
"Invalid value in the samples".into(),
155+
"(apply_fft): Invalid value in the samples".into(),
156156
))
157157
} else if not_a_power_of_two {
158158
Err(PolarsError::ComputeError(
159-
"Length of the samples is not a power of two".into(),
159+
"(apply_fft): Length of the samples is not a power of two".into(),
160160
))
161161
} else if bandpass_error.is_some() {
162162
Err(PolarsError::ComputeError(
163-
format!("{}", bandpass_error.unwrap()).into(),
163+
format!("(apply_fft): {}", bandpass_error.unwrap()).into(),
164164
))
165165
} else {
166166
Ok(out.into_series())

src/feat.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,12 @@ fn expr_mean_of_range(
3939
let x = &inputs[1].list()?;
4040

4141
if y.dtype() != &DataType::List(Box::new(DataType::Float64)) {
42-
let msg = format!("Expected `List(Float64)`, got: {}", y.dtype());
42+
let msg = format!("(mean_of_range): Expected `List(Float64)`, got: {}", y.dtype());
4343
return Err(PolarsError::ComputeError(msg.into()));
4444
}
4545

4646
if x.dtype() != &DataType::List(Box::new(DataType::Float64)) {
47-
let msg = format!("Expected `List(Float64)`, got: {}", x.dtype());
47+
let msg = format!("(mean_of_range): Expected `List(Float64)`, got: {}", x.dtype());
4848
return Err(PolarsError::ComputeError(msg.into()));
4949
}
5050

src/op.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,19 @@ fn expr_operate_scalar_on_list(
3434
let scalar = inputs[1].f64()?;
3535

3636
if list.dtype() != &DataType::List(Box::new(DataType::Float64)) {
37-
let msg = format!("Expected `List(Float64)`, got: {}", list.dtype());
37+
let msg = format!("(operate_scalar_on_list): Expected `List(Float64)`, got: {}", list.dtype());
3838
return Err(PolarsError::ComputeError(msg.into()));
3939
}
4040
if scalar.dtype() != &DataType::Float64 {
41-
let msg = format!("Expected `Float64`, got: {}", scalar.dtype());
41+
let msg = format!("(operate_scalar_on_list): Expected `Float64`, got: {}", scalar.dtype());
4242
return Err(PolarsError::ComputeError(msg.into()));
4343
}
4444

4545
let valid_operations = ["div", "mul", "add", "sub"];
4646
if !valid_operations.contains(&kwargs.operation.as_str()) {
4747
return Err(PolarsError::ComputeError(
4848
format!(
49-
"Invalid operation method provided: {}. Must be one of [{}]",
49+
"(operate_scalar_on_list): Invalid operation method provided: {}. Must be one of [{}]",
5050
kwargs.operation,
5151
valid_operations.join(", "),
5252
)

0 commit comments

Comments
 (0)