Skip to content

378 remove datastore - #409

Merged
rozyczko merged 4 commits into
developfrom
378-remove-datastore
Sep 14, 2026
Merged

rozyczko merged 4 commits into
developfrom
378-remove-datastore

Conversation

@rozyczko

Copy link
Copy Markdown
Member

This pull request removes the unused DataStore and ProjectData classes from the easyreflectometry.data module and improves the serialization behavior of the Project class. It also ensures that experiment metadata is correctly recorded and loaded, even when x-uncertainties are missing.

Removal of unused data container classes:

  • Deleted the DataStore and ProjectData classes from src/easyreflectometry/data/data_store.py, as they were unused, broken, and not referenced in the library, GUI, or documentation.

Serialization and experiment handling improvements:

  • Modified Project.as_dict to always record an experiment's name and model, even if the experiment's xe (x-uncertainty) is None, preventing issues when loading projects with such experiments.
  • Updated _from_dict_extract_experiments in project.py to correctly handle experiments that lack xe.

@rozyczko rozyczko added chore Chore changes to the code [scope] maintenance Code/tooling cleanup, no feature or bugfix (major.minor.PATCH) [priority] high Should be prioritized soon labels Sep 11, 2026
@codecov

codecov Bot commented Sep 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.52%. Comparing base (10f01c7) to head (83766a0).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #409      +/-   ##
===========================================
+ Coverage    94.42%   94.52%   +0.09%     
===========================================
  Files           54       54              
  Lines         5562     5516      -46     
===========================================
- Hits          5252     5214      -38     
+ Misses         310      302       -8     
Flag Coverage Δ
integration 38.32% <0.00%> (-0.07%) ⬇️
unittests 94.52% <100.00%> (+0.09%) ⬆️

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

Files with missing lines Coverage Δ
src/easyreflectometry/data/__init__.py 100.00% <ø> (ø)
src/easyreflectometry/data/data_store.py 100.00% <ø> (+8.16%) ⬆️
src/easyreflectometry/project.py 94.26% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@rozyczko
rozyczko merged commit dd3cb93 into develop Sep 14, 2026
55 checks passed
@rozyczko
rozyczko deleted the 378-remove-datastore branch September 14, 2026 08:46
rozyczko added a commit that referenced this pull request Sep 18, 2026
* Polarized channels (#393)

* initial version

* added magnetic SLD profile

* added magnetic parameters

* code review comments addressed

* code review fixes for Phase 2, added notebook

* PR code review comments

* fixed polarized file load issue

* enable magnetic layers

* new LayerMagnetism component

* ruff

* ruff on notebooks

* bind calculator to model for performance

* attempt at fixing package testing

* package tests only on master

* don't run ruff twice

* code review fixes

* added polarized fitting example/notebook

* fixed default sample generation

* improved wording in the magnetic fitting notebook

* move the most expensive test to integration

* dont show 0.0 for parameter errors where no fitting was done (#397)

* removed vestiges of BA (#394)

* Improved constraints + doc migration (#400)

* initial version

* added magnetic SLD profile

* added magnetic parameters

* ruff

* code review comments addressed

* code review fixes for Phase 2, added notebook

* ruff

* PR code review comments

* fixed polarized file load issue

* enable magnetic layers

* new LayerMagnetism component

* ruff

* ruff on notebooks

* bind calculator to model for performance

* attempt at fixing package testing

* package tests only on master

* don't run ruff twice

* code review fixes

* added polarized fitting example/notebook

* fixed default sample generation

* improved wording in the magnetic fitting notebook

* move the most expensive test to integration

* Improved constraints (#395)

* improved handling of constraints

* ruff

* wording

* additional cell in a notebook to showcase the new way of doing
constraints

* fixed notebook

* initial checkin

* .bounds -> min, max

* updates so the code is self-contained and doesn't depend on changes to
core

* Code review comments addressed

* Updated docs (#398)

* move everything to MKDocs

* ruff fix for notebook

* Fix broken conflict resolutions from develop merge

* code review issues addressed

* removed explicit EasyCore constraints factory reliance

* Orso improvements (#402)

* initial commit

* code review fixes

* more unit tests for orso functionality

* Enable SLD dependence on material data (#403)

* enable SLD dependence on material data

* extending methods for use in ERA

* code review issues addressed

* make molecular weight a descriptor

* Improvements to the state tracking #401 (#405)

* Improvements to the state tracking #401

* PR issues addressed

* minor ruff NOQA

* reparent to develop of core and fixed the functionality

* minor material editor fix (#408)

* fix default elements (#410)

* 378 remove datastore (#409)

* Removed DataStore

* Added exception when file exists and overwrite=false (#411)

* fix the multi-column load #376 (#413)

* fix the multi-column load #376

* preparations for the release

* updated EasyScience dep

* pre-release doc fixes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Chore changes to the code [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