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

Structuring APIs #1

Merged
merged 14 commits into from
Feb 16, 2020
Merged

Structuring APIs #1

merged 14 commits into from
Feb 16, 2020

Conversation

hhsecond
Copy link
Member

@hhsecond hhsecond commented Dec 4, 2019

A massive PR includes the API structuring, test cases, CI setup

What it does not contain

  • An exhaustive test suite
  • mypy check

The APIs might need more changes (one I could think off is the have dictionary style access). The primary motive I had while designing the APIs is making user relying on git checkout as much as possible. But I could see why a git + stockroom workflow should be an option but should not be the only workflow possible especially since stockroom allows model storage without user spending time figuring out how to store models. The next release will be a more organized with more API planning analyzing user stories trying out with this release

@hhsecond hhsecond added the WIP Work in progress, don't merge label Dec 4, 2019
Copy link
Member

@rlizzo rlizzo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think alot of the comments below aren't so much requests for changes, or large issues, but just general considerations about design and intentions.

There's a lot that's left unclear here. The API really needs to be documented somwhere. If it's not in documentation, then atleast in tests. It's hard to follow the intended code flow without some sort of reference as to where data comes in and out from, and what is exposed directly to the user and what is managed by stockroom internally.

As a proof of concept, its good enough for now, but these are just a few things which need consideration before taking this to a "ready for alpha" stage.

stockroom/__init__.py Outdated Show resolved Hide resolved
stockroom/__init__.py Outdated Show resolved Hide resolved
stockroom/parser.py Show resolved Hide resolved
stockroom/parser.py Outdated Show resolved Hide resolved
stockroom/parser.py Outdated Show resolved Hide resolved
stockroom/storages/modelstore.py Outdated Show resolved Hide resolved
stockroom/storages/modelstore.py Outdated Show resolved Hide resolved
stockroom/storages/modelstore.py Outdated Show resolved Hide resolved
stockroom/storages/paramstore.py Outdated Show resolved Hide resolved
stockroom/storages/modelstore.py Outdated Show resolved Hide resolved
@hhsecond hhsecond requested a review from rlizzo December 29, 2019 19:57
@hhsecond hhsecond removed the WIP Work in progress, don't merge label Dec 29, 2019
@rlizzo
Copy link
Member

rlizzo commented Dec 29, 2019

@hhsecond why did you decide not to go with the src/stockroom layout?

Copy link
Member

@rlizzo rlizzo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Quite a large PR! This is much more polished, and shows quite a bit of promise for stockroom in the future - in general, nice work!

There are a few issues i've identified which need to be fixed, some which you can use your discression on, and some that are just more for my own understanding.

I haven't tested the code myself yet, so more may follow in the next day or two.

Thanks for the hard work Sherin! looking forward to @lantiga's review!

LICENSE Outdated Show resolved Hide resolved
pytest.ini Outdated Show resolved Hide resolved
setup.cfg Outdated Show resolved Hide resolved
setup.cfg Outdated Show resolved Hide resolved
setup.cfg Outdated Show resolved Hide resolved
stockroom/storages/model.py Outdated Show resolved Hide resolved
stockroom/storages/model.py Outdated Show resolved Hide resolved
stockroom/utils.py Show resolved Hide resolved
stockroom/utils.py Show resolved Hide resolved
tox.ini Show resolved Hide resolved
@codecov-io
Copy link

codecov-io commented Jan 28, 2020

Codecov Report

❗ No coverage uploaded for pull request base (master@391e143). Click here to learn what that means.
The diff coverage is 92.68%.

Impacted file tree graph

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   90.94%           
=========================================
  Files             ?       15           
  Lines             ?      574           
  Branches          ?       42           
=========================================
  Hits              ?      522           
  Misses            ?       41           
  Partials          ?       11
Impacted Files Coverage Δ
stockroom/cli.py 0% <0%> (ø)
tests/conftest.py 100% <100%> (ø)
stockroom/parser.py 100% <100%> (ø)
tests/test_data.py 100% <100%> (ø)
tests/test_tag.py 100% <100%> (ø)
tests/test_model.py 100% <100%> (ø)
stockroom/storages/__init__.py 100% <100%> (ø)
stockroom/storages/data.py 100% <100%> (ø)
tests/test_repository.py 100% <100%> (ø)
stockroom/storages/tag.py 85.18% <85.18%> (ø)
... and 5 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 391e143...4c3e15e. Read the comment docs.

@hhsecond hhsecond force-pushed the master branch 2 times, most recently from 5e37be7 to cae51ad Compare January 28, 2020 12:39
@lgtm-com
Copy link

lgtm-com bot commented Jan 30, 2020

This pull request introduces 1 alert when merging a07b749 into 391e143 - view on LGTM.com

new alerts:

  • 1 for Unused import

@lgtm-com
Copy link

lgtm-com bot commented Feb 6, 2020

This pull request fixes 4 alerts when merging 4406681 into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@lgtm-com
Copy link

lgtm-com bot commented Feb 6, 2020

This pull request fixes 4 alerts when merging 50b5e7c into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@lgtm-com
Copy link

lgtm-com bot commented Feb 6, 2020

This pull request fixes 4 alerts when merging 24b6808 into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@lgtm-com
Copy link

lgtm-com bot commented Feb 6, 2020

This pull request fixes 4 alerts when merging 2d93209 into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@lgtm-com
Copy link

lgtm-com bot commented Feb 10, 2020

This pull request fixes 4 alerts when merging 6a95aa2 into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@lgtm-com
Copy link

lgtm-com bot commented Feb 10, 2020

This pull request fixes 4 alerts when merging 87f994b into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@lgtm-com
Copy link

lgtm-com bot commented Feb 11, 2020

This pull request fixes 4 alerts when merging 4c3e15e into 391e143 - view on LGTM.com

fixed alerts:

  • 4 for Module imports itself

@hhsecond hhsecond mentioned this pull request Feb 14, 2020
@hhsecond hhsecond merged commit 76174ec into tensorwerk:master Feb 16, 2020
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.

3 participants