Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps-dev): Bump the build-deps group with 3 updates #306

Merged
merged 1 commit into from
Nov 21, 2023

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Nov 21, 2023

Bumps the build-deps group with 3 updates: @types/node, esbuild and typescript.

Updates @types/node from 20.8.10 to 20.9.3

Commits

Updates esbuild from 0.19.5 to 0.19.7

Release notes

Sourced from esbuild's releases.

v0.19.7

  • Add support for bundling code that uses import attributes (#3384)

    JavaScript is gaining new syntax for associating a map of string key-value pairs with individual ESM imports. The proposal is still a work in progress and is still undergoing significant changes before being finalized. However, the first iteration has already been shipping in Chromium-based browsers for a while, and the second iteration has landed in V8 and is now shipping in node, so it makes sense for esbuild to support it. Here are the two major iterations of this proposal (so far):

    1. Import assertions (deprecated, will not be standardized)

      • Uses the assert keyword
      • Does not affect module resolution
      • Causes an error if the assertion fails
      • Shipping in Chrome 91+ (and in esbuild 0.11.22+)
    2. Import attributes (currently set to become standardized)

      • Uses the with keyword
      • Affects module resolution
      • Unknown attributes cause an error
      • Shipping in node 21+

    You can already use esbuild to bundle code that uses import assertions (the first iteration). However, this feature is mostly useless for bundlers because import assertions are not allowed to affect module resolution. It's basically only useful as an annotation on external imports, which esbuild will then preserve in the output for use in a browser (which would otherwise refuse to load certain imports).

    With this release, esbuild now supports bundling code that uses import attributes (the second iteration). This is much more useful for bundlers because they are allowed to affect module resolution, which means the key-value pairs can be provided to plugins. Here's an example, which uses esbuild's built-in support for the upcoming JSON module standard:

    // On static imports
    import foo from './package.json' with { type: 'json' }
    console.log(foo)
    // On dynamic imports
    const bar = await import('./package.json', { with: { type: 'json' } })
    console.log(bar)

    One important consequence of the change in semantics between import assertions and import attributes is that two imports with identical paths but different import attributes are now considered to be different modules. This is because the import attributes are provided to the loader, which might then use those attributes during loading. For example, you could imagine an image loader that produces an image of a different size depending on the import attributes.

    Import attributes are now reported in the metafile and are now provided to on-load plugins as a map in the with property. For example, here's an esbuild plugin that turns all imports with a type import attribute equal to 'cheese' into a module that exports the cheese emoji:

    const cheesePlugin = {
      name: 'cheese',
      setup(build) {
        build.onLoad({ filter: /.*/ }, args => {
          if (args.with.type === 'cheese') return {
            contents: `export default "🧀"`,
          }
        })
      }
    }
    require('esbuild').build({
    bundle: true,
    write: false,

... (truncated)

Changelog

Sourced from esbuild's changelog.

0.19.7

  • Add support for bundling code that uses import attributes (#3384)

    JavaScript is gaining new syntax for associating a map of string key-value pairs with individual ESM imports. The proposal is still a work in progress and is still undergoing significant changes before being finalized. However, the first iteration has already been shipping in Chromium-based browsers for a while, and the second iteration has landed in V8 and is now shipping in node, so it makes sense for esbuild to support it. Here are the two major iterations of this proposal (so far):

    1. Import assertions (deprecated, will not be standardized)

      • Uses the assert keyword
      • Does not affect module resolution
      • Causes an error if the assertion fails
      • Shipping in Chrome 91+ (and in esbuild 0.11.22+)
    2. Import attributes (currently set to become standardized)

      • Uses the with keyword
      • Affects module resolution
      • Unknown attributes cause an error
      • Shipping in node 21+

    You can already use esbuild to bundle code that uses import assertions (the first iteration). However, this feature is mostly useless for bundlers because import assertions are not allowed to affect module resolution. It's basically only useful as an annotation on external imports, which esbuild will then preserve in the output for use in a browser (which would otherwise refuse to load certain imports).

    With this release, esbuild now supports bundling code that uses import attributes (the second iteration). This is much more useful for bundlers because they are allowed to affect module resolution, which means the key-value pairs can be provided to plugins. Here's an example, which uses esbuild's built-in support for the upcoming JSON module standard:

    // On static imports
    import foo from './package.json' with { type: 'json' }
    console.log(foo)
    // On dynamic imports
    const bar = await import('./package.json', { with: { type: 'json' } })
    console.log(bar)

    One important consequence of the change in semantics between import assertions and import attributes is that two imports with identical paths but different import attributes are now considered to be different modules. This is because the import attributes are provided to the loader, which might then use those attributes during loading. For example, you could imagine an image loader that produces an image of a different size depending on the import attributes.

    Import attributes are now reported in the metafile and are now provided to on-load plugins as a map in the with property. For example, here's an esbuild plugin that turns all imports with a type import attribute equal to 'cheese' into a module that exports the cheese emoji:

    const cheesePlugin = {
      name: 'cheese',
      setup(build) {
        build.onLoad({ filter: /.*/ }, args => {
          if (args.with.type === 'cheese') return {
            contents: `export default "🧀"`,
          }
        })
      }
    }
    require('esbuild').build({
    bundle: true,

... (truncated)

Commits
  • a7773b3 publish 0.19.7 to npm
  • 2886b5d more adjustments to import assertions/attributes
  • 2dad830 add basic support for import assertions
  • 6b9737a fix test262 crash in v8 due to renamed test
  • 0d9f765 fix #3230, fix #3326, fix #3394: update decorators
  • 9fc1ed3 ast helpers: use a context object
  • 00fa010 tree shaking: handle destructuring of an array
  • f361c7f fix #3477: forbid --keep-names if not supported
  • 4c64c19 compat-table: sort kangax feature map
  • cd7b93f dev server: add a fallback favicon.ico handler
  • Additional commits viewable in compare view

Updates typescript from 5.2.2 to 5.3.2

Release notes

Sourced from typescript's releases.

TypeScript 5.3

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

TypeScript 5.3 RC

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

TypeScript 5.3 Beta

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on npm.

Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the build-deps group with 3 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [esbuild](https://github.com/evanw/esbuild) and [typescript](https://github.com/Microsoft/TypeScript).


Updates `@types/node` from 20.8.10 to 20.9.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `esbuild` from 0.19.5 to 0.19.7
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](evanw/esbuild@v0.19.5...v0.19.7)

Updates `typescript` from 5.2.2 to 5.3.2
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v5.2.2...v5.3.2)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: build-deps
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: build-deps
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: build-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Nov 21, 2023
Copy link
Contributor

Coverage Report for Mock Reports (./test/mockReports)

Status Category Percentage Covered / Total
🔵 Lines 41.37% 60 / 145
🔵 Statements 41.33% 62 / 150
🔵 Functions 62.06% 18 / 29
🔵 Branches 39.65% 23 / 58
File CoverageNo changed files found.
Generated in workflow #595

Copy link
Contributor

Coverage Report for Root

Status Category Percentage Covered / Total
🔵 Lines 57.33% 387 / 675
🔵 Statements 57.33% 387 / 675
🔵 Functions 73.68% 14 / 19
🔵 Branches 90% 63 / 70
File Coverage
File Stmts % Branch % Funcs % Lines Uncovered Lines
Unchanged Files
src/FileCoverageMode.ts 100% 100% 100% 100%
src/generateFileCoverageHtml.ts 100% 100% 100% 100%
src/generateFileUrl.ts 94.44% 50% 100% 94.44% 6
src/generateHeadline.ts 100% 100% 100% 100%
src/generateSummaryTableHtml.ts 100% 100% 100% 100%
src/getPullChanges.ts 0% 0% 0% 0% 1-58
src/getUncoveredLinesFromStatements.ts 100% 100% 100% 100%
src/getViteConfigPath.ts 98.03% 87.5% 100% 98.03% 39
src/icons.ts 100% 100% 100% 100%
src/index.ts 0% 0% 0% 0% 1-80
src/options.ts 0% 0% 0% 0% 1-35
src/parseCoverageThresholds.ts 100% 100% 100% 100%
src/parseJsonReports.ts 0% 0% 0% 0% 1-50
src/writeSummaryToPR.ts 0% 0% 0% 0% 1-63
Generated in workflow #595

@davelosert davelosert merged commit 11be471 into main Nov 21, 2023
1 check passed
@davelosert davelosert deleted the dependabot/npm_and_yarn/build-deps-ef9687dc81 branch November 21, 2023 07:23
Copy link
Contributor

🎉 This PR is included in version 2.2.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file released
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant