Skip to content

Commit 3085323

Browse files
committed
fix up verbosity presets
1 parent 932725e commit 3085323

File tree

1 file changed

+49
-29
lines changed

1 file changed

+49
-29
lines changed

src/verbosity.jl

Lines changed: 49 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -81,27 +81,14 @@ function LinearVerbosity(;
8181
LinearVerbosity(values(final_args)...)
8282
end
8383

84+
# Constructor for verbosity presets following the hierarchical levels:
85+
# None < Minimal < Standard < Detailed < All
86+
# Each level includes all messages from levels below it plus additional ones
8487
function LinearVerbosity(verbose::AbstractVerbosityPreset)
85-
if verbose isa All
88+
if verbose isa Minimal
89+
# Minimal: Only fatal errors and critical warnings (BLAS errors/invalid args)
8690
LinearVerbosity(
87-
default_lu_fallback = InfoLevel(),
88-
no_right_preconditioning = InfoLevel(),
89-
using_iterative_solvers = InfoLevel(),
90-
using_IterativeSolvers = InfoLevel(),
91-
IterativeSolvers_iterations = InfoLevel(),
92-
KrylovKit_verbosity = InfoLevel(),
93-
KrylovJL_verbosity = InfoLevel(),
94-
HYPRE_verbosity = InfoLevel(),
95-
pardiso_verbosity = InfoLevel(),
96-
blas_errors = InfoLevel(),
97-
blas_invalid_args = InfoLevel(),
98-
blas_info = InfoLevel(),
99-
blas_success = InfoLevel(),
100-
condition_number = InfoLevel()
101-
)
102-
elseif verbose isa Minimal
103-
LinearVerbosity(
104-
default_lu_fallback = ErrorLevel(),
91+
default_lu_fallback = Silent(),
10592
no_right_preconditioning = Silent(),
10693
using_iterative_solvers = Silent(),
10794
using_IterativeSolvers = Silent(),
@@ -110,33 +97,66 @@ function LinearVerbosity(verbose::AbstractVerbosityPreset)
11097
KrylovJL_verbosity = Silent(),
11198
HYPRE_verbosity = Silent(),
11299
pardiso_verbosity = Silent(),
113-
blas_errors = ErrorLevel(),
114-
blas_invalid_args = ErrorLevel(),
100+
blas_errors = ErrorLevel(),
101+
blas_invalid_args = ErrorLevel(),
115102
blas_info = Silent(),
116103
blas_success = Silent(),
117104
condition_number = Silent()
118105
)
119106
elseif verbose isa Standard
120-
LinearVerbosity() # Use default settings
107+
# Standard: Everything from Minimal + non-fatal warnings
108+
LinearVerbosity(
109+
default_lu_fallback = WarnLevel(),
110+
no_right_preconditioning = WarnLevel(),
111+
using_iterative_solvers = WarnLevel(),
112+
using_IterativeSolvers = WarnLevel(),
113+
IterativeSolvers_iterations = WarnLevel(),
114+
KrylovKit_verbosity = WarnLevel(),
115+
KrylovJL_verbosity = Silent(),
116+
HYPRE_verbosity = InfoLevel(),
117+
pardiso_verbosity = Silent(),
118+
blas_errors = ErrorLevel(),
119+
blas_invalid_args = ErrorLevel(),
120+
blas_info = Silent(),
121+
blas_success = Silent(),
122+
condition_number = Silent()
123+
)
121124
elseif verbose isa Detailed
125+
# Detailed: Everything from Standard + debugging/solver behavior
126+
LinearVerbosity(
127+
default_lu_fallback = InfoLevel(),
128+
no_right_preconditioning = InfoLevel(),
129+
using_iterative_solvers = InfoLevel(),
130+
using_IterativeSolvers = InfoLevel(),
131+
IterativeSolvers_iterations = InfoLevel(),
132+
KrylovKit_verbosity = InfoLevel(),
133+
KrylovJL_verbosity = WarnLevel(),
134+
HYPRE_verbosity = InfoLevel(),
135+
pardiso_verbosity = WarnLevel(),
136+
blas_errors = ErrorLevel(),
137+
blas_invalid_args = ErrorLevel(),
138+
blas_info = InfoLevel(),
139+
blas_success = InfoLevel(),
140+
condition_number = InfoLevel()
141+
)
142+
elseif verbose isa All
143+
# All: Maximum verbosity - every possible logging message at InfoLevel
122144
LinearVerbosity(
123145
default_lu_fallback = InfoLevel(),
124146
no_right_preconditioning = InfoLevel(),
125147
using_iterative_solvers = InfoLevel(),
126148
using_IterativeSolvers = InfoLevel(),
127149
IterativeSolvers_iterations = InfoLevel(),
128-
KrylovKit_verbosity = WarnLevel(),
129-
KrylovJL_verbosity = WarnLevel(),
150+
KrylovKit_verbosity = InfoLevel(),
151+
KrylovJL_verbosity = InfoLevel(),
130152
HYPRE_verbosity = InfoLevel(),
131-
pardiso_verbosity = WarnLevel(),
132-
blas_errors = WarnLevel(),
133-
blas_invalid_args = WarnLevel(),
153+
pardiso_verbosity = InfoLevel(),
154+
blas_errors = ErrorLevel(),
155+
blas_invalid_args = ErrorLevel(),
134156
blas_info = InfoLevel(),
135157
blas_success = InfoLevel(),
136158
condition_number = InfoLevel()
137159
)
138-
else
139-
LinearVerbosity() # Default fallback
140160
end
141161
end
142162

0 commit comments

Comments
 (0)