matrix-org / matrix-org/matrix-hookshot
Replace decorators with a different solution
- Dominant language
- TypeScript
- Stars
- 450
- Forks
- 95
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 23
Description
Both the botCommand and config code use [TS39](https://github.com/tc39/proposal-decorators) decorators which are now no longer being worked on, and while still supported in Typescript have proven to be buggy. We should migrate off these. We might be able to make use of [modern decorators](https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#decorators) albeit these don't support parameters so some parts will need to be entirely swapped.
This is a big task, and will require a lot of refactoring work.
Contributor guide
Research direction
Start by locating the botCommand and config code that uses TS39 decorators, then review the linked TypeScript decorator proposals. Inventory the decorator uses, including parameterized cases, and identify replacement approaches; done means the affected code has been migrated away from TS39 decorators.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- backend
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100