Closed pulsipher closed 2 months ago
Attention: Patch coverage is 99.83766%
with 1 line
in your changes missing coverage. Please review.
Project coverage is 99.77%. Comparing base (
6e1102d
) to head (85c3ab5
).
Files | Patch % | Lines |
---|---|---|
src/TranscriptionOpt/transcribe.jl | 99.21% | 1 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
For now, I am going to turn off the checkdocs
since it appears to have a bug: https://github.com/JuliaDocs/Documenter.jl/issues/2545
This replaces the optimizer model abstraction which was limited to JuMP Models with a new abstraction based on what is called transformation backends. This introduces
AbstractTransformationBackend
to enable the use of arbitrary backends for solving InfiniteModels. For backends that use JuMP, this also addsJuMPBackend <: AbstractTransformationBackend
which provides a similar API to the old optimizer model interface except it is more polished and doesn't rely on hacky "optimizer model keys".TranscriptionOpt now only exports
TranscriptionBackend
which is based onJuMPBackend
. All the former TranscriptionOpt specific query functions have been dropped from main API in favor of the general purpose ones (e.g.,transformation_variable
).This also adds a few missing JuMP methods which include:
set_attribute
get_attribute
unsafe_backend
compute_conflict!
copy_conflict
set_string_names_on_creation
print_active_bridges
print_bridge_graph
It also cleans up the documentation and bit and uses the latest Documenter version.
Partly addresses #105 and #327. What remains for #105, is to decouple the transcription specific approaches from InfiniteOpt. This will require the following: