microsoft / microsoft/typespec

Versioning for 3p libraries

Open
#3,482 2 comments 0 reactions 0 assignees View on GitHub
design:needed lib:versioning triaged:core
Dominant language
Java
Stars
5.9k
Forks
394
Avg merge
1d 23h
Merged PRs (30d)
104

Description

### Clear and concise description of the problem

It would be nice to have the ability to indicate which versions were "preview" versions and which versions were "stable" versions in the api version enum in tsp. Today Azure uses a specific convention for versioning of date or date-preview so its easy to parse this and determine which versions fall into which category. Given how diverse versioning schemes can be across organizations it would be good to have the author of the spec indicate this directly into the spec. This would give any consumer the ability to filter out versions they may not want.

We also need a way for customers to be able to specify whether they want to include or exclude preview versions. TCGC today has a helper method, but the question is how / when do you decide to call it? It feels like customers need a compiler flag to indicate this so it can be passed down through the emitter then to tcgc to produce the desired outcome.

### Checklist

- [X] Follow our [Code of Conduct](https://github.com/microsoft/typespec/blob/main/CODE_OF_CONDUCT.md)
- [X] Read the [docs](https://typespec.io/docs/).
- [X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.