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

api: "unstable" features #1367

Open
MarcoGorelli opened this issue Nov 13, 2024 · 3 comments
Open

api: "unstable" features #1367

MarcoGorelli opened this issue Nov 13, 2024 · 3 comments

Comments

@MarcoGorelli
Copy link
Member

I'm slightly hesitant about how to merge #1298 and #1290 - rolling_mean is marked as unstable in Polars. ewm_mean isn't, but follows the api kind of API style

I do think we should merge them, I just think we need a way to signal that we won't make the same kinds of promises for them as we do for the rest of the API in stable.v1

So, I'm tempted to say:

I'm sorry for the delay here in merging these PRs

@FBruzzesi
Copy link
Member

I'm sorry for the delay here in merging these PRs

No need to be sorry, I think #1290 was not even discussed fully (e.g. in which way we want to implement rolling for pyarrow backend).

Regarding how to mark features as unstable, which options do we have? Adding a warning/disclaimer in the docstrings and docs is the bare minimum, aside that:

  • Raising a warning might be too much and too strong for a user.
  • Raising a warning only in the stable API i.e. if used in narwhals.stable.v1, but let it go silently if called from narwhals?

I would say this second option could be a compromise?

@MarcoGorelli
Copy link
Member Author

thanks! the second one could work - we could define a NarwhalsUnstableWarning class, and advise users to silence warnings of that class if they're OK with using an experimental feature

@DeaMariaLeon
Copy link
Member

Is this decided then?: "define a NarwhalsUnstableWarning class, and advise users to silence warnings of that class if they're OK with using an experimental feature"

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

No branches or pull requests

3 participants