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

Refactor backend classes to facilitate adding more #347

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

DavidMStraub
Copy link

Hi,

I wanted to add one or two additional backends - specifically numpy.savez and possibly SQLite (or generic SQLAlchemy). However when I looked at the code, the existing Backend and HDFBackend did not inherit from a common base class and it was not very transparent in my view which methods were shared/generic and which were implementation dependent. So in this PR, I just reshuffled the code - without changing anything about the API - such that implementation-independent methods are relegated to an abstract base class. Furthermore, an abstract class for file-based backends is added. In this way, it would be straightforward for me to add a numpy.savez backend as a next step.

Sorry I did not discuss this on the emcee-useres mailing list before opening the PR - I made the mistake to read the contributing guidelines only when it was done - but I hope you find it useful nevertheless.

@dfm
Copy link
Owner

dfm commented Jun 26, 2020

This is awesome - thanks! I'll try to do a proper review ASAP.

@DavidMStraub
Copy link
Author

Should I rebase this?

@dfm
Copy link
Owner

dfm commented Jun 27, 2021

@DavidMStraub: Sorry about dropping the ball on this!! Yes - that would be amazing if you're up for it. Thanks for your patience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants