Action required: Upgrade typespec and azure-tools relevant dependencies and regenerate integration cases after upgrading.
To upgrade TypeSpec dependencies, they only work on packages/typespec-ts/ and packages/typespec-test/ . packages/rlc-common and packages/autorest.typescript should not be edited.
- Identify dependencies within the @typespec or @Azure-Tools npm-scopes under "dependencies", "devDependencies" and "peerDependencies" in package.json
- You should resolve the version in "next" tag for dependencies on
@typespec/http-specs, @typespec/spector, @azure-tools/azure-http-specs, and @typespec/spec-api
- You should resolve the version in "latest" tag for the other dependencies
- Run "rush update" after editing the dependencies in package.json
- TypeSpec dependencies means any dependencies starting with
@typespec/ or @azure-tools/ as these are relevant to TypeSpec and Azure tools.
- Do not update dependency for @typespec/ts-http-runtime.
- For spector relevant dependencies, the latest version which is tagged with
next on npm including @typespec/http-specs, @typespec/spector, @azure-tools/azure-http-specs, and @typespec/spec-api.
- For other dependencies, check the latest versions which is tagged with
latest on npm and update them accordingly.
- After updating the versions, run
rush update to ensure all dependencies are correctly installed and the lock files are updated.
- Do run
rush build to build the entire monorepo to check if any building issues introduced by upgrading.
Then you need to run the integration and smoke testing and enure they could pass.
- Do run
npm run copy:typespec to copy the files which integration test may use.
- Do run
npm run generate-tsp-only:rlc to generate files before running integration cases and replace rlc with modular, azure-rlc, azure-modular to generate other types files and these generations could be ran parallelly. And be patient, the generation would take around 1 hour.
- Do run
npm run lint under packages/typespec-ts/ to run the linter.
- Do run
npm run smoke-test under packages/typespec-test/ to validate our test scenarios for typespec and if any issue try to fix it. It would take around 30 minutes.
- Do run
npm run unit-test under packages/typespec-ts/ to validate our Unit Test and follow the below instructions to fix any test failures.
- Smoke tests could run parallel with unit tests and integration tests, so you can run them at the same time.
- Modular and RLC integration tests are run in parallel, so you can run them at the same time.
- Azure RLC integration tests can only be run after the RLC integration tests are passed, and Azure Modular integration tests can only be run after the Modular Integration tests are passed.
- Do run following commands to trigger actual integrations
- Run commands to start RLC test server
npm run start-test-server:rlc and replace rlc to modular, azure-rlc, azure-modular could trigger other types
- Run commands to trigger the actual RLC testing
npm run integration-test:alone:rlc and replace rlc to modular, azure-rlc, azure-modular could trigger other types
- If you meet any issues, try to fix testing issues and re-trigger integrations. Fix all issues until the whole integrations could pass.
- Do wait all 4 integration tests to be done under
packages/typespec-ts/ even the integration would take around 1 hour or skip 4 integration testings under packages/typespec-ts/
- RLC integration testing finish is NOT enough and please pay patient to wait the Modular and Azure Modular integration completed.
- Do not write a summery if all 4 integration testings or smoke testing are still in progress and don't write final progress update if integration testing are still in progress and please monitor the job to be done not just running successfully
- Do wait around 1 - 2 hour that all tasks are completed not just start running
- Follow my instructions exactly and please don't skip modular or azure integrations and wait all 4 integrations
- Don't return or terminal AI during monitoring, please monitor the 4 integration status every 30 seconds until they finish
- Do run
rush format to format the codebase.
- Fix any issues that arise during the process, and ensure all tests pass before considering the upgrade complete
Action required: Upgrade typespec and azure-tools relevant dependencies and regenerate integration cases after upgrading.
To upgrade TypeSpec dependencies, they only work on
packages/typespec-ts/andpackages/typespec-test/.packages/rlc-commonandpackages/autorest.typescriptshould not be edited.@typespec/http-specs,@typespec/spector,@azure-tools/azure-http-specs, and@typespec/spec-api@typespec/or@azure-tools/as these are relevant to TypeSpec and Azure tools.nexton npm including@typespec/http-specs,@typespec/spector,@azure-tools/azure-http-specs, and@typespec/spec-api.lateston npm and update them accordingly.rush updateto ensure all dependencies are correctly installed and the lock files are updated.rush buildto build the entire monorepo to check if any building issues introduced by upgrading.Then you need to run the integration and smoke testing and enure they could pass.
npm run copy:typespecto copy the files which integration test may use.npm run generate-tsp-only:rlcto generate files before running integration cases and replace rlc with modular, azure-rlc, azure-modular to generate other types files and these generations could be ran parallelly. And be patient, the generation would take around 1 hour.npm run lintunderpackages/typespec-ts/to run the linter.npm run smoke-testunderpackages/typespec-test/to validate our test scenarios for typespec and if any issue try to fix it. It would take around 30 minutes.npm run unit-testunderpackages/typespec-ts/to validate our Unit Test and follow the below instructions to fix any test failures.npm run start-test-server:rlcand replace rlc to modular, azure-rlc, azure-modular could trigger other typesnpm run integration-test:alone:rlcand replace rlc to modular, azure-rlc, azure-modular could trigger other typespackages/typespec-ts/even the integration would take around 1 hour or skip 4 integration testings underpackages/typespec-ts/rush formatto format the codebase.