✨ Under construction ✨
A monorepo for formerly disparate DefinitelyTyped-related tools:
- header-parser: microsoft/definitelytyped-header-parser
- definitions-parser: the part of microsoft/types-publisher that reads DefinitelyTyped repository data
- publisher: the rest of microsoft/types-publisher
- utils: shared utilities, mostly extracted from microsoft/types-publisher
These tools are not intended for public consumption, so we may break the API whenever convenient for us.
This is a monorepo managed with lerna. After cloning, run npm install
. lerna bootstrap
will be run automatically to install dependencies in each of the individual packages.
Rather than using npm install
in individual packages, use lerna add
from the root. Examples:
# To add `glob` to definitions-parser:
lerna add glob packages/definitions-parser
# To add testdouble as a devDependency to publisher:
lerna add --dev testdouble packages/publisher
# To add typescript to all packages:
lerna add typescript
The exception to this rule is devDependencies that are shared between all packages: those can added to the root package.json with npm
directly.
All packages use jest, with a single configuration set up to be run from the monorepo root. npm test
is an alias for jest
, so you can run tests with any of jest’s CLI options. For example, to run tests for a single package:
npm test -- packages/utils
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.