Remove the opinionated (wrongly so most of the time) middleman that
brings more config pain than value.
Things to check:
- [x] Parallel build performance vs rush
- [ ] Publishing with submodule
- [x] Changesets
Add a new library template with:
- `@alernateName` decorator with some custom diagnostics and tests for
it.
- a linter rule and 2 rulesets(`recommended` and `all`)
## Add a new template for scaffolding an emitter
`emitter-ts` template setup the following:
- basic emitter files
- typescript
- test with node test runner with basic test and test host setup
- prettier
- linting with eslint
## Change to the init area
- Added a new `--template` cli option to allow selecting the template
without a prompt.
- Refactor to make it easier to test. **Note that none of the API is
exposed yet so its just for internal use.**
## Added e2e test for templates
Scafold the template and then run commands like `npm install`, `npm run
build`, `npm run test`, etc. to make sure everything is done correctly.
This is quite costly so might be worth separating in a different step
fix [#3017](https://github.com/Azure/typespec-azure/issues/3017)
Run the samples as test which allows all of them to run without crashing
on the first one, lets us run it in the test explorer.
This also make the sample regeneration much faster(typespec azure repo):
- Before `~90s`
- Now `~12s`
![image](https://github.com/microsoft/typespec/assets/1031227/a3356a90-7847-43cf-a473-4ecda0c53330)
## New `resolveCompilerOptions` utils
This also include the addition of a new util `resolveCompilerOptions`
that resolve the compiler options programtically in the same way that
the cli would have for a given entrypoint.
I can move this into a dedicated PR if people prefer.
---------
Co-authored-by: Mark Cowlishaw <markcowl@microsoft.com>
* initial template checkin
* Updating Azure DP cadl template
* Adding '/' to work for both local path and url path
* remove unused properties.
* CR Comments
* Adding 'azure' command line template url shortcut
* Updating template with sample cadl and examples
* Adding a flag to skip adding compiler package