Skip to content

Update SciMLLogging requirement from 1.7.0 to 1.7.0, 2.0 in the all-julia-packages group across 1 directory#327

Open
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/julia/all-julia-packages-1d89e77539
Open

Update SciMLLogging requirement from 1.7.0 to 1.7.0, 2.0 in the all-julia-packages group across 1 directory#327
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/julia/all-julia-packages-1d89e77539

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 1, 2026

Updates the requirements on SciMLLogging to permit the latest version.
Updates SciMLLogging to 2.0.0

Release notes

Sourced from SciMLLogging's releases.

v2.0.0

SciMLLogging v2.0.0

Diff since v1.9.1

Breaking Changes

MessageLevel is now a concrete struct, no longer an abstract type with per-level subtypes. Silent, DebugLevel, InfoLevel, WarnLevel, and ErrorLevel are now MessageLevel constants. Custom levels are constructed by calling MessageLevel(n) directly. The AbstractMessageLevel and CustomLevel names have been removed — code referring to them must be updated to use MessageLevel.

Silent(), InfoLevel(), etc. still work — calling a MessageLevel instance returns itself, so existing call-site syntax is unaffected. Code that dispatched on the old subtypes (e.g. f(::WarnLevel)) needs to be rewritten to compare values (level == WarnLevel). AbstractVerbositySpecifier is now parametric on {Enabled}. Concrete specifier types must subtype AbstractVerbositySpecifier{Enabled} for some Enabled parameter. The macro-generated specifiers do this automatically; hand-written specifiers must be updated:

Before

struct MyVerbosity <: AbstractVerbositySpecifier
    option_a
    option_b
end

After

struct MyVerbosity{Enabled} <: AbstractVerbositySpecifier{Enabled}
    option_a::MessageLevel
    option_b::MessageLevel
end

The Enabled parameter drives a compile-time short-circuit in @​SciMLMessage: instances constructed via None() produce MyVerbosity{false}, and get_message_level(::AbstractVerbositySpecifier{false}, ::Any) returns nothing, eliminating logging branches at compile time.

Added sub_specifiers = (...) block in @verbosity_specifier — declare fields that hold another verbosity specifier or preset. Each declared sub_specifier becomes its own free type parameter on the generated struct, so the field is concretely typed at the instance level. This preserves inference when the sub-specifier is forwarded to a downstream API, and lets a package hold a sub-specifier whose type it does not depend on at definition time (e.g. DiffEqBase holding a NonlinearVerbosity without depending on NonlinearSolve).

@verbosity_specifier DEVerbosity begin
    toggles        = (:dt_select, :step_rejected)
    sub_specifiers = (:nonlinear_verbosity, :linear_verbosity)
    presets = (
        Standard = (
            dt_select           = InfoLevel,
            step_rejected       = WarnLevel,
            nonlinear_verbosity = Standard(),       # preset OR
            linear_verbosity    = LinearVerbosity(), # sub-spec instance
        ),
        # ...
    )
    groups = ()
end

The macro generates roughly:

</tr></table> 

... (truncated)

Changelog

Sourced from SciMLLogging's changelog.

[2.0.0]

Breaking

  • MessageLevel is now a concrete struct, no longer an abstract type with per-level subtypes. Silent, DebugLevel, InfoLevel, WarnLevel, and ErrorLevel are now MessageLevel constants. Custom levels are constructed by calling MessageLevel(n) directly. The AbstractMessageLevel and CustomLevel names have been removed — code referring to them must be updated to use MessageLevel.

    • Silent(), InfoLevel(), etc. still work — calling a MessageLevel instance returns itself, so existing call-site syntax is unaffected.
    • Code that dispatched on the old subtypes (e.g. f(::WarnLevel)) needs to be rewritten to compare values (level == WarnLevel).
  • AbstractVerbositySpecifier is now parametric on {Enabled}. Concrete specifier types must subtype AbstractVerbositySpecifier{Enabled} for some Enabled parameter. The macro-generated specifiers do this automatically; hand-written specifiers must be updated:

    # Before
    struct MyVerbosity <: AbstractVerbositySpecifier
        option_a
        option_b
    end
    After
    struct MyVerbosity{Enabled} <: AbstractVerbositySpecifier{Enabled}
    option_a::MessageLevel
    option_b::MessageLevel
    end

    The Enabled parameter drives a compile-time short-circuit in @SciMLMessage: instances constructed via None() produce MyVerbosity{false}, and get_message_level(::AbstractVerbositySpecifier{false}, ::Any) returns nothing, eliminating logging branches at compile time.

Added

  • sub_specifiers = (...) block in @verbosity_specifier — declare fields that hold another verbosity specifier or preset. Each declared sub_specifier becomes its own free type parameter on the generated struct, so the field is concretely typed at the instance level. This preserves inference when the sub-specifier is forwarded to a downstream API, and lets a package hold a sub-specifier whose type it does not depend on at definition time (e.g. DiffEqBase holding a NonlinearVerbosity without depending on NonlinearSolve).
    @verbosity_specifier DEVerbosity begin
        toggles        = (:dt_select, :step_rejected)

... (truncated)

Commits
  • 0342920 Merge pull request #65 from jClugstor/type_changes
  • 7c2690c update docs compat bound
  • 6ab339d make other bakcends not depend on LogLevel
  • 87ccbf6 get rid of CustomLevel
  • 73b2235 use parens less form of Message Levels
  • 27cc6bf remove AbstractMessageLevel, update docs, docstrings
  • 431d9d3 add changelog, fix up docstrings
  • 86974e9 format
  • a8670db bump version
  • bb372de more docs and doc string fixes
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Updates the requirements on [SciMLLogging](https://github.com/SciML/SciMLLogging.jl) to permit the latest version.

Updates `SciMLLogging` to 2.0.0
- [Release notes](https://github.com/SciML/SciMLLogging.jl/releases)
- [Changelog](https://github.com/SciML/SciMLLogging.jl/blob/main/CHANGELOG.md)
- [Commits](SciML/SciMLLogging.jl@v1.7.0...v2.0.0)

---
updated-dependencies:
- dependency-name: SciMLLogging
  dependency-version: 2.0.0
  dependency-type: direct:production
  dependency-group: all-julia-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file julia Pull requests that update julia code labels May 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file julia Pull requests that update julia code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants