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

Experimental SPI annotation #13302

Merged
merged 2 commits into from
Aug 3, 2022
Merged

Experimental SPI annotation #13302

merged 2 commits into from
Aug 3, 2022

Conversation

dain
Copy link
Member

@dain dain commented Jul 22, 2022

Description

Add Experimental annotation to SPI
The Experimental annotation designates part of the SPI that is still
under development and is considered experimental. Experimental SPIs may
be changed at any time and maybe removed. The date in the annotation
signifies when the community believes the SPI will be finalized, but
this date may be extended.

Documentation

I'm not sure about documentation. Maybe we should add this to the developer section?

( ) No documentation is needed.
( ) Sufficient documentation is included in this PR.
( ) Documentation PR is available with #prnumber.
( ) Documentation issue #issuenumber is filed, and can be handled later.

Release notes

( ) No release notes entries required.
(X) Release notes entries required with the following suggested text:

# SPI
* Add `@Experimental` annotation to designate SPIs that are still under active development and may change without notice.

@cla-bot cla-bot bot added the cla-signed label Jul 22, 2022
@dain
Copy link
Member Author

dain commented Jul 22, 2022

BTW, I'm not sure if we want to mart PFTs as experimental, but I added that commit as a demonstration of how this can work.

/**
* When the community believes the SPI will be finalized, but this date may be extended.
*/
String until();
Copy link
Member

Choose a reason for hiding this comment

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

I'm not sure this is a good idea. Who's going to be responsible to keep track of it? It will be quite confusing having a bunch of spis where this is in the past.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'd like to have a slack bot that annoys us when Experimental is expiring.

Copy link
Member

Choose a reason for hiding this comment

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

How about creating a GitHub issue for this and adding a specific label to them?

@@ -21,6 +22,7 @@

import static java.util.Objects.requireNonNull;

@Experimental(until = "2022-10-31")
Copy link
Member

Choose a reason for hiding this comment

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

Any reason why this particular date? or is this just an example?

also, would it be good to have a link to a ticket describing the work stream that given experimental API belongs to?

Copy link
Member Author

Choose a reason for hiding this comment

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

This is just and example... I figured 3 months was plenty of time to finish up any work on the initial SPI.

As for issue, can you propose something specific?

/**
* When the community believes the SPI will be finalized, but this date may be extended.
*/
String until();
Copy link
Member

Choose a reason for hiding this comment

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

If the annotation is stll present but we're past the until date, it's still experimental.
A thing is experimental until the annotation is removed.

Can we name this parameter to indicate that?

Copy link
Member Author

Choose a reason for hiding this comment

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

Can you propose a better name?

The Experimental annotation designates part of the SPI that is still
under development and is considered experimental. Experimental SPIs may
be changed at any time and maybe removed. The date in the annotation
signifies when the community believes the SPI will be finalized, but
this date may be extended.
@dain dain merged commit aed2d5b into trinodb:master Aug 3, 2022
@github-actions github-actions bot added this to the 393 milestone Aug 3, 2022
@dain dain deleted the experimental-spi branch August 3, 2022 21:50
@colebow
Copy link
Member

colebow commented Aug 5, 2022

I think it'd be good to mention this in docs, filed #13520 and I'll make sure it gets taken care of.

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

Successfully merging this pull request may close these issues.

5 participants