-
Notifications
You must be signed in to change notification settings - Fork 12
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
feat: Modify the user API of skore
to respect "what you put is what you get" principle
#1052
Conversation
afd8291
to
666f094
Compare
06ff76f
to
0277edb
Compare
c1b9341
to
f4552e9
Compare
I think that this PR will also close: @thomass-dev I let you amend your summary if it is the case. |
Co-authored-by: Auguste Baum <[email protected]> commit 86281ca Author: Auguste Baum <[email protected]> Date: Wed Jan 8 12:00:46 2025 +0100 mob next [ci-skip] [ci skip] [skip ci] lastFile:skore/tests/integration/ui/test_ui.py commit 9f6f193 Author: Thomas S <[email protected]> Date: Wed Jan 8 11:52:12 2025 +0100 mob next [ci-skip] [ci skip] [skip ci] lastFile:skore/tests/integration/ui/test_ui.py commit cd385f6 Author: Auguste Baum <[email protected]> Date: Wed Jan 8 11:41:10 2025 +0100 mob next [ci-skip] [ci skip] [skip ci] lastFile:skore/src/skore/persistence/item/sklearn_base_estimator_item.py commit 41c5355 Author: Thomas S <[email protected]> Date: Wed Jan 8 11:27:16 2025 +0100 mob next [ci-skip] [ci skip] [skip ci] lastFile:skore/tests/integration/sklearn/test_cross_validate.py commit a7d956e Author: Auguste Baum <[email protected]> Date: Wed Jan 8 11:14:59 2025 +0100 mob next [ci-skip] [ci skip] [skip ci] lastFile:skore/tests/unit/view/test_view_repository.py commit 38446cf Author: Thomas S <[email protected]> Date: Wed Jan 8 11:01:43 2025 +0100 mob next [ci-skip] [ci skip] [skip ci] lastFile:skore/src/skore/persistence/item/pickle_item.py commit a6e2a79 Author: Thomas S <[email protected]> Date: Wed Jan 8 10:51:07 2025 +0100 mob start [ci-skip] [ci skip] [skip ci] Co-authored-by: Auguste Baum <[email protected]>
83747f7
to
aff2a5f
Compare
# Conflicts: # skore/src/skore/project/create.py # skore/tests/unit/project/test_project.py
a02785f
to
862dc49
Compare
e3d0aa8
to
80df8db
Compare
Coverage Report for backend
|
c0ad30c
to
c8f3ecf
Compare
510bfa1
to
6255ada
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm really happy with what I tested so far :D.
I have to go, I'll do further tests on monday, but so far so good!!
I have 2 questions, not blocking:
- did you think of a way to fetch a version "in the middle"? The
lastest
parameter inget
is a bit weak imo, maybeversion
, like inset_note
, could be better. - why did you choose to ask for capital strings in
display_as
? it feels a bit weird to me, i'd prefer lower case.
7ff8318
to
1022e7a
Compare
6116205
to
9fe0601
Compare
Fixed 087fcaf . |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome work!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Project
docstring needs to be updated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved upon the point that we discussed earlier.
Fixed in e465440. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
youhou!
Following #1052 , change the API to be compliant with `set_note` and @MarieS-WiMLDS comments.
Closes #1045
Closes #734
Refactor the user API to hide all notions of
Item
,View
, and to respect "what you put is what you get" from a user's point of view.Among others:
@cached_property
in items have been removed, because items are not used anymore directly by usersMediaItem
MediaItem
in new item classesPickleItem
class which can persist any object when it cannot be otherwisedisplay_as
parameter toproject.put
to control how a string is displayed in the frontendproject.put_item
in such way user need only to useproject.put
project.get
function always returns what the user has putproject.get
andproject.get_item_versions
have been mergedCrossValidationItem
has been replaced by aCrossValidationReporterItem
based on pickleput_item
get_item
get_item_versions
to be item agnosticProject
to hide repositories -> postponed feat: Refine the constructor of Project to be user-friendly #1160display_as
primitive-> already 🆗pandas dataframe-> already 🆗polars dataframe-> already 🆗pandas series-> already 🆗polars series-> already 🆗numpy array-> already 🆗scikit-learn estimator-> already 🆗put
to allow the new parameterdisplay_as
repr_html
to reporters -> feat: Move (or remove) the repr feature ofItem
class #1161