A tool that detects Breaking changes between 2 versions of a Typescript project
The rules at rules.md given are based on the defined BCs in https://github.com/Maimunar/typescript-breaking-changes
- Build the project -
pnpm build - Link it -
npm linkwhile in the directory - Run
bc-detector <INPUT>where INPUT is a directory that holds folders v1 and v2 resembling the 2 repository versions you want to test.
-i- Ignore specific directories-d- Run in debug mode - mostly useful for tool development and troubleshooting
The src folder holds the whole structure:
modeltakes care of the modeled AST of TS based onparserruleshandles all language requirements, based on the BCs repository linked above and done per API element. A summary of the rules can be found inrules
detectionEvaluation handles an academic accuracy evaluation.