Skip to content

SciMLLogging Integration #1157

Merged
ChrisRackauckas merged 12 commits intoSciML:masterfrom
jClugstor:scimllogging
Feb 10, 2026
Merged

SciMLLogging Integration #1157
ChrisRackauckas merged 12 commits intoSciML:masterfrom
jClugstor:scimllogging

Conversation

@jClugstor
Copy link
Member

Checklist

  • Appropriate tests were added
  • Any code changes were done in a way that does not break public API
  • All documentation related to code changes were updated
  • The new code follows the
    contributor guidelines, in particular the SciML Style Guide and
    COLPRAC.
  • Any new documentation only uses public API

Additional context

Add any other context about the problem here.

@SebastianM-C
Copy link
Member

Would progress information also go through this?

@jClugstor
Copy link
Member Author

It definitely could, yeah.

@jClugstor jClugstor force-pushed the scimllogging branch 2 times, most recently from cf4d2c1 to 45e93b0 Compare January 28, 2026 19:36
@jClugstor jClugstor marked this pull request as ready for review January 29, 2026 18:41
@jClugstor
Copy link
Member Author

@SebastianM-C can you make sure this looks okay? Also, let me know if there are any other log messages you would like to add that I haven't yet. Thanks!

@SebastianM-C
Copy link
Member

The looks good overall. Can you take a look at OptimzationIpopt? It looks like that was not update. That has an integer verbosity that Ipopt interprets, but I'm not sure how do we translate that, since that's specific to Ipopt. I saw that you translate the verbose for MadNLP and I was wondering how do we encode the custom log levels of external packages in general.

@jClugstor
Copy link
Member Author

Thanks, I'll take a look at OptimizationIpopt.

For packages with integer / bool interfaces for verbosity, in general I've been adding a verbosity toggle for those in to to the verbosity specifier, and then using a utility function to translate them in to a Bool / Int. So for example, in LinearSolve.jl, it can use HYPRE, which uses integers to specify the verbosity levels. So I added a verbosity toggle "HYPRE_verbosity", that is then translated in to an Int that HYPRE uses: https://github.com/SciML/LinearSolve.jl/blob/b88069a4f245cf2bc421c174b6fbc8948f4a4b6f/ext/LinearSolveHYPREExt.jl#L193 . The SciMLLogging docs have the mapping between the message levels and integers, and if you use a CustomLevel, the utility function automatically uses the integer inside of the CustomLevel.

@jClugstor
Copy link
Member Author

@SebastianM-C I added a setting for Ipopt verbosity, let me know if that looks good.

@ChrisRackauckas
Copy link
Member

OptimizationBase needs a major on this as it's breaking?

@jClugstor
Copy link
Member Author

Yes I believe so, since this adds a field to OptimizationCache

@ChrisRackauckas
Copy link
Member

Okay so make the bump and bump the lower bounds and we'll release

@ChrisRackauckas ChrisRackauckas merged commit 8245416 into SciML:master Feb 10, 2026
34 of 64 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants