microsoft / microsoft/typespec

Ability to augment late bound properties

Open
#7,402 1 comment 0 reactions 0 assignees View on GitHub
compiler:core design:needed feature triaged:core
Dominant language
Java
Stars
5.9k
Forks
394
Avg merge
1d 23h
Merged PRs (30d)
104

Description

### Describe the bug

This:

```
model A {
prop: string;
other: string;
}

model B is OmitProperties;

@@doc(B.prop, "documentation");
```

Fails with `Model doesn't have member prop`.

I'm assuming it's something to do with the fact that `OmitProperties` creates an anonymous type and that that breaks the augmenting decorator but I may be wrong. Using a spread instead doesn't work.

### Reproduction

https://typespec.io/playground/?c=bW9kZWwgQSB7DQogIHByb3A6IHN0cmluZzvEEW90aGVyyxJ9DQoNCsYzQiBpcyBPbWl0UHJvcGVydGllczxBLCAixTMiPjvEKkBAZG9jKEIuxFgsICJkb2N1bWVudGF0aW9uIik7&e=%40typespec%2Fopenapi3&options=%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.