Repository navigation
Release 3.0 - #352
Release 3.0#352
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## develop #352 +/- ##
===========================================
+ Coverage 83.24% 92.68% +9.43%
===========================================
Files 63 47 -16
Lines 5324 3375 -1949
===========================================
- Hits 4432 3128 -1304
+ Misses 892 247 -645
Flags with carried forward coverage won't be shown. Click here to find out more.
|
|
This needs to go through develop first. |
Does it, though? This is breaking change so wouldn't it make more sense to go directly to |
For the sake of our CI it needs to go through develop . . . But I imagine we do an immediate PR to master from develop after merging this into develop. |
Summary
EasyScience 3.0 is a major, breaking release. It removes the legacy object model and its compatibility layers, and replaces them with a smaller, more consistent set of base classes.
Breaking changes
Base classes and object model
ObjBase,BasedBase,CollectionBase, the oldDescriptorhierarchy and the Legacy directory are removed.DescriptorBaseis now aModelBaseclass, andNewBaseis renamedEasyBase.CollectionBaseis replaced byEasyList(Replace CollectionBase in MultiFitter with EasyList #304). EasyList now accepts a list of parameters (Fix EasyList to accept a list of parameters #307) and is used by MultiFitter (Replaced CollectionBase with EasyList #304 #305).Descriptor_any_typeor move it to legacy #318).unique_name.Mapis replaced byObjectRegistry.Serialization
type_dict/TypedDictis removed (Remove type_dict and related logic #207, Remove typedict #338)._REDIRECT is removed (Remove _REDIRECT; serializer relies on _arg_spec only #319). The serializer relies only on _arg_spec.
serializer_base moves from io/ to base_classes/.
Fitting and minimizers
The interface factory is removed.
get_free_parameters is removed (Move
get_free_parametersto minimizers and removeget_fit_parametersfromModelBase#334, removed get_free_parameters #334 #346).Minimizers no longer take an optional parameter list.
AvailableMinimizers is replaced by the Minimizers enum, and string-based minimizer indexing is gone (Removal of string-based minimizers #347, removed strings in minimizer indexing mechanism #347 #348).
Fixed two LMFit wrapper issues (No error coming back from minimizers is masked by 0.0 #301, LMFit powell/cobyla crash with ftol when a tolerance is set #302).
Sampler
The sampler is restructured and is now fully Fitter-agnostic (#280, #287, #310).
Removed features
Other behaviour changes