Skip to content

docs: add note about experimental features #520

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,21 @@ for server in servers:

We support python versions until [`end-of-life`](https://devguide.python.org/versions/#status-of-python-versions).

## Experimental features

Experimental features are published as part of our regular releases (e.g. a product
public beta). During an experimental phase, breaking changes on those features may occur
within minor releases.

While experimental features will be announced in the release notes, you can also find
whether a python class or function is experimental in its docstring:

```
Experimental:
$PRODUCT is experimental, breaking changes may occur within minor releases.
See https://docs.hetzner.cloud/changelog#$SLUG for more details.
```

## Development

First, create a virtual environment and activate it:
Expand Down Expand Up @@ -126,6 +141,21 @@ warnings.warn(
)
```

### Releasing experimental features

To publish experimental features as part of regular releases:

- an announcement, including a link to a changelog entry, must written in the release notes.
- an `Experimental` notice, including a link to a changelog entry, must be added to the python classes and functions that are experimental:

```py
"""
Experimental:
$PRODUCT is experimental, breaking changes may occur within minor releases.
See https://docs.hetzner.cloud/changelog#$SLUG for more details.
"""
```

## License

The MIT License (MIT). Please see [`License File`](https://github.com/hetznercloud/hcloud-python/blob/main/LICENSE) for more information.