Skip to content

DescriptorBase now is a ModelBase class - #306

Open
rozyczko wants to merge 3 commits into
easylist-on-multifitterfrom
modelbase-on-descriptor
Open

DescriptorBase now is a ModelBase class#306
rozyczko wants to merge 3 commits into
easylist-on-multifitterfrom
modelbase-on-descriptor

Conversation

@rozyczko

@rozyczko rozyczko commented Sep 4, 2026

Copy link
Copy Markdown
Member

DescriptorBase now inherits from NewBase instead of SerializerComponent, and uses SerializerBase for serialization. The to_dict method is introduced as the standard serialization method, with as_dict provided as an alias for backward compatibility.

The serialization interface for descriptor and parameter classes (DescriptorNumber, DescriptorArray, DescriptorAnyType, Parameter) is unified to use to_dict, replacing previous as_dict implementations.

EasyList used in MultiFitter now only accepts ModelBase members, preventing bare parameters or foreign objects from being silently ignored during fitting.

@rozyczko rozyczko added [scope] maintenance Code/tooling cleanup, no feature or bugfix (major.minor.PATCH) [priority] high Should be prioritized soon [area] base classes Changes to or creation of new base classes labels Sep 4, 2026
@codecov

codecov Bot commented Sep 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.80%. Comparing base (fd8879b) to head (c02814f).

Additional details and impacted files

Impacted file tree graph

@@                     Coverage Diff                     @@
##           easylist-on-multifitter     #306      +/-   ##
===========================================================
- Coverage                    83.82%   83.80%   -0.03%     
===========================================================
  Files                           68       68              
  Lines                         5348     5334      -14     
===========================================================
- Hits                          4483     4470      -13     
+ Misses                         865      864       -1     
Flag Coverage Δ
unittests 83.80% <100.00%> (-0.03%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/easyscience/base_classes/easy_list.py 96.20% <ø> (ø)
src/easyscience/base_classes/new_base.py 100.00% <ø> (ø)
src/easyscience/fitting/multi_fitter.py 98.61% <100.00%> (+0.01%) ⬆️
src/easyscience/variable/descriptor_any_type.py 96.87% <100.00%> (ø)
src/easyscience/variable/descriptor_array.py 89.56% <100.00%> (ø)
src/easyscience/variable/descriptor_base.py 94.80% <100.00%> (+0.23%) ⬆️
src/easyscience/variable/descriptor_number.py 95.40% <100.00%> (ø)
src/easyscience/variable/parameter.py 95.31% <100.00%> (ø)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[area] base classes Changes to or creation of new base classes [priority] high Should be prioritized soon [scope] maintenance Code/tooling cleanup, no feature or bugfix (major.minor.PATCH)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant