microsoft / microsoft/typespec

[Bug]: Can't apply @minValue decorator on an named union member

Open
#9,816 2 comments 0 reactions 1 assignee Claimed by @witemple-msft View on GitHub
bug compiler:core triaged:core
Dominant language
Java
Stars
5.9k
Forks
394
Avg merge
1d 23h
Merged PRs (30d)
104

Description

### Describe the bug

I can do this:

```typespec
model A {
@minValue(0)
index: int32 | "auto";
}
```

but can't apply @minValue(0) decorator to the same union defined in a form of a named union.

### Reproduction

```typespec
union U {
@minValue(0)
number: int32;
"auto";
}

model B {
index: U
}
```

Decorator throws an error:
```
Cannot apply @minValue decorator to int32 since it is not assignable to numeric | utcDateTime | offsetDateTime | plainDate | plainTime | duration | ModelProperty
```

https://typespec.io/playground/?e=%40typespec%2Fopenapi3&c=bW9kZWwgQSB7CiAgQG1pblZhbHVlKDApCiAgaW5kZXg6IGludDMyIHwgImF1dG8iOwp9CgoKdW5pb24gVdQ2bnVtYmVyxzc7CiDMOMZtQsU3x15VCn0%3D&options=%7B%7D&vs=%7B%7D

### Checklist

- [x] Follow our [Code of Conduct](https://github.com/microsoft/typespec/blob/main/CODE_OF_CONDUCT.md)
- [x] Check that there isn't already an issue that request the same bug to avoid creating a duplicate.
- [x] Check that this is a concrete bug. For Q&A open a [GitHub Discussion](https://github.com/Microsoft/typespec/discussions).
- [x] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.

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.