Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tinybase: Rework storage interface #738

Merged
merged 14 commits into from
Sep 25, 2023
Merged

Tinybase: Rework storage interface #738

merged 14 commits into from
Sep 25, 2023

Conversation

pmrv
Copy link
Contributor

@pmrv pmrv commented Jun 23, 2023

Previously Storable implementions of AbstractTask and TinyJob simply
pickled everything at the highest level because some ASE objects
couldn't be written directly with the Storable interface. This change
adds some functionality to GenericStorage that will automatically detect
such objects and pickle only those transparently to the rest of
tinybase. As such the full object hierarchy is now represented in
storage and neither tasks nor jobs need to know whether some internal
objects of theirs have been pickled.

It also adds some amount of docstrings and specs to the storage related
classes.

Pending #734

@pmrv pmrv added enhancement New feature or request format_black Invoke a black formatting commit labels Jun 23, 2023
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@github-actions
Copy link
Contributor

Binder 👈 Launch a binder notebook on branch pyiron/pyiron_contrib/tinystorage

@pmrv pmrv marked this pull request as ready for review July 10, 2023 14:16
@pmrv pmrv added format_black Invoke a black formatting commit and removed format_black Invoke a black formatting commit labels Jul 10, 2023
pyiron-runner and others added 6 commits September 25, 2023 11:14
Previously Storable implementions of `AbstractTask` and `TinyJob` simply
pickled everything at the highest level because some ASE objects
couldn't be written directly with the Storable interface.  This change
adds some functionality to GenericStorage that will automatically detect
such objects and pickle only those transparently to the rest of
tinybase. As such the full object hierarchy is now represented in
storage and neither tasks nor jobs need to know whether some internal
objects of theirs have been pickled.

It also adds some amount of docstrings and specs to the storage related
classes.
FileHDFio raises also that
@coveralls
Copy link

Pull Request Test Coverage Report for Build 6297948464

  • 0 of 82 (0.0%) changed or added relevant lines in 5 files are covered.
  • 6 unchanged lines in 4 files lost coverage.
  • Overall coverage decreased (-0.07%) to 16.438%

Changes Missing Coverage Covered Lines Changed/Added Lines %
pyiron_contrib/tinybase/creator.py 0 1 0.0%
pyiron_contrib/tinybase/ase.py 0 3 0.0%
pyiron_contrib/tinybase/task.py 0 3 0.0%
pyiron_contrib/tinybase/job.py 0 6 0.0%
pyiron_contrib/tinybase/storage.py 0 69 0.0%
Files with Coverage Reduction New Missed Lines %
pyiron_contrib/tinybase/ase.py 1 0.0%
pyiron_contrib/tinybase/creator.py 1 0.0%
pyiron_contrib/tinybase/job.py 2 0.0%
pyiron_contrib/tinybase/storage.py 2 0.0%
Totals Coverage Status
Change from base Build 6271737688: -0.07%
Covered Lines: 2537
Relevant Lines: 15434

💛 - Coveralls

It is not available in the testing env
@pmrv pmrv added format_black Invoke a black formatting commit and removed format_black Invoke a black formatting commit labels Sep 25, 2023
@pmrv
Copy link
Contributor Author

pmrv commented Sep 25, 2023

@liamhuber This fixes now most of the CI problems with tinybase. The last error is related to some environment hacks. I had added a pyiron resource folder to the notebooks folder so that the notebook can demonstrate how to run custom executables. I'm guessing that because the notebook runner runs from a weird working directory that those are not correctly found in the CI, though it works locally. I'll merge this here anyway, but if we can't find a solution I can just remove the notebook or add it to the exclusion file.

@pmrv pmrv merged commit 2c39278 into main Sep 25, 2023
12 of 14 checks passed
@delete-merged-branch delete-merged-branch bot deleted the tinystorage branch September 25, 2023 10:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request format_black Invoke a black formatting commit
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants