Tracking the no_implicit_imports ExplicitImports check for OUQBase, currently marked ei_broken = (:no_implicit_imports,) in lib/OUQBase/test/qa/qa.jl (run_qa v1.6).
OUQBase relies on ~40 implicit imports brought in by heavy using of ModelingToolkit, Symbolics, Optimization, JuMP, SymbolicUtils, OrderedCollections, SciMLBase, CanonicalMoments/DiscreteMeasures, and Reexport. ExplicitImports.print_explicit_imports(OUQBase) lists them:
using CanonicalMoments: CanonicalMoments, DiscreteMeasure, DiscreteMeasureTransform1, DiscreteMeasures, ProductDiscreteMeasure, expectation, support, weights
using JuMP: JuMP, @constraint, @objective, @variable, set_lower_bound, set_name, set_upper_bound
using ModelingToolkit: ModelingToolkit, @named, OptimizationSystem, get_variables, getbounds, parameters, structural_simplify, unknowns
using Optimization: Optimization, AbstractADType
using OrderedCollections: OrderedCollections, OrderedDict
using Reexport: Reexport, @reexport
using SciMLBase: SciMLBase, OptimizationFunction, OptimizationProblem
using SymbolicUtils: SymbolicUtils, @rule, Rewriters, arguments, substitute
using Symbolics: Symbolics, Equation, Inequality
Making these explicit is a non-trivial refactor (name clashes such as supremum/infimum from Symbolics vs ModelingToolkit, order from CanonicalMoments vs DiscreteMeasures, @variables from JuMP vs Symbolics, simplify from SymbolicUtils vs JuMP must all be resolved by qualification), so it is deferred. When done, drop :no_implicit_imports from ei_broken in lib/OUQBase/test/qa/qa.jl.
ignore until reviewed by @ChrisRackauckas
Tracking the
no_implicit_importsExplicitImports check forOUQBase, currently markedei_broken = (:no_implicit_imports,)inlib/OUQBase/test/qa/qa.jl(run_qa v1.6).OUQBaserelies on ~40 implicit imports brought in by heavyusingofModelingToolkit,Symbolics,Optimization,JuMP,SymbolicUtils,OrderedCollections,SciMLBase,CanonicalMoments/DiscreteMeasures, andReexport.ExplicitImports.print_explicit_imports(OUQBase)lists them:Making these explicit is a non-trivial refactor (name clashes such as
supremum/infimumfrom Symbolics vs ModelingToolkit,orderfrom CanonicalMoments vs DiscreteMeasures,@variablesfrom JuMP vs Symbolics,simplifyfrom SymbolicUtils vs JuMP must all be resolved by qualification), so it is deferred. When done, drop:no_implicit_importsfromei_brokeninlib/OUQBase/test/qa/qa.jl.ignore until reviewed by @ChrisRackauckas