- add dep to `uglify-js` in dev-tool
- rush update
- replace "uglifyjs" with "dev-tool run vendored yglifyjs"
- remove dependency to "uglifyjs" in sdk packages
***NO_CI***
- apply lint:fix results
- revert fixes that are not related to consistent-type-imports and cases error
- regenerate .api.md files
- format
- update core-comparison diff
also remove dependency on `@microsoft/api-extractor` as we already move to
`dev-tool run extract-api` which calls api-extractor Api instead.
***NO_CI***
### Packages impacted by this PR
@azure/attestation
### Issues associated with this PR
#31338
### Describe the problem that is addressed by this PR
Migrates `@azure/attestation` to ESM and tshy.
Co-authored-by: Deyaaeldeen Almahallawi <dealmaha@microsoft.com>
***NO_CI***
Currently the rule only handles the case of
```ts
clientMethod(options: MethodOptions) {}
```
but not when the options bag parameter has a default value
```ts
clientMethod(options: MethodOptions = {}) {}
```
This change adds code to handle the latter.
- Add two unit tests
- Update the affected packages to suppress this rule as a warning
- react to the fix
***NO_CI***
- replace version to "~5.6.2"
- rush update
- add `"skipLibCheck": true` for several packages that are affected by https://github.com/vitest-dev/vitest/issues/4688
- [formrecognizer] help TypeScript to understand with more explicit type
- [schema-registry-{avro,json}] skip lib check due to lru-cache issue with the Iterator TReturn change
https://github.com/isaacs/node-lru-cache/issues/348
- [eslint-plugin] github-source-headers rule should use "MIT License".
This change updates our linter rule and the whole repository to have consistent
license header.
***NO_CI***
- remove "All rights reserved." from header
- "MIT license" => "MIT License"
These would appear once we moved to eslint flat config. They are not
detected
currently likely due to incorrect configurations.
- Remove TextEncoder/TextDecoder declarations as they are in global
scope on our
supported platforms
- Remove URL imports as they are in global scope on our supported
platforms.
- remove --ext from linting NPM scripts
- Fix issues linting README.md files
- Suppress error about crypto. The feature of adding it to global scope
is still experimental
- Fix build error in attestation. Neither browsers nor NodeJS has a
constructor parameter for TextEncoder
-
https://developer.mozilla.org/en-US/docs/Web/API/TextEncoder/TextEncoder
-
https://nodejs.org/docs/latest-v18.x/api/util.html#class-utiltextencoder
This doesn't cover the many files still using secret sub configs with
custom principals, those will be migrated separately. This changes the
defaults to use file-based sub configs and service connections
everywhere else. It is intended to be merged after/alongside federated
auth mode becoming the default.
Relies on https://github.com/Azure/azure-sdk-tools/pull/8680
Previously dev-tool has been fixed to generate correct include path in samples
tsconfig.json but samples were not updated.
This PR fixes the samples tsconfig.json in one run; otherwise with the recent
branch protection policy changes, when individual packages re-publish samples,
js-core team would have to approve the tsconfig.json changes.
***NO_CI***
which only extends from tsconfig.json. There might be more customization for
packages in the early days but not any more.
This PR removes it and updates packages to extends tsconfig.json directly
***NO_CI***
This change migrates every package to the latest major version of
identity in order to ensure we can catch any regressions earlier in the
development process.
I chose to upgrade the samples' package.json as well - but happy to
revert that if there are objections.
***NO_CI***
Our tests use the type `Mocha.Context` when they need to pass the test context
to test recorder. However, without a dev dependency on `@types/mocha`
compilation may fail when recorder constructor is changed from taking a
`Mocha.Test` to taking an interface that is compatible.
This change ensures the dev depedency on `@types/mocha` too if there's a dev
dependency on `mocha`.
***NO_CI***
### Issues associated with this PR
#28308
### Describe the problem that is addressed by this PR
GA'd code should be generated from swagger/typespec from the main branch
of the azure-rest-api-specs repo, not from other branches or random
commits/local files, for maintainability and reproducible builds
***NO_CI***
Latest versions of prettier now correctly formats `tsconfig.json`, which results
in differences with previous version of 3.1.1 in pnpm-lock.yaml. This is failing
the automated rush update pipeline because `check-format` fails with version
3.2.4.
This includes changes of
- bumping prettier version to ^3.2.4
- running `rush format`
***NO_CI***
- remove dev dependency `prettier` from non-tool packages when possible and
update them to run vendored prettier for `check-format` and `format` scripts
- upgrade rest of packages to prettier v3
- run `rush format` for all rush packages
This is a follow-up to https://github.com/Azure/azure-sdk-for-js/pull/28127 to
move the rest of repo to prettier v3.
***NO_CI***
The combination of `nyc` + `esm` is broken in latest versions of
NodeJS (https://github.com/istanbuljs/nyc/issues/1530#issuecomment-1773403365).
Since `esm` package is no longer actively maintained and its repo is archived,
it's less likely that the issue will be fixed soon.
This change switches to use another code coverage tool `c8` which is not
affected. `c8` respects `.nycrc` config files so those are not renamed.
***NO_CI***
- update engine.node to >=16.0.0 in package.json
- update @types/node version to ^16.0.0
- update dev-tool sample's MIN_SUPPORTED_NODE_VERSION to 16
- update eslint-plugin's rules and tests related to engine.node version
- remove TextEncoder and TextDecoder stubs as they are now on global object
- fix tests compiler error due to better typings in v16
- update some README files to not reference version like 14.x.x