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): update all non-major dependencies #15

Merged
merged 1 commit into from
Aug 19, 2022

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 14, 2022

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@vitejs/plugin-vue 3.0.1 -> 3.0.3 age adoption passing confidence
esbuild 0.14.53 -> 0.15.5 age adoption passing confidence
eslint (source) 8.21.0 -> 8.22.0 age adoption passing confidence
pnpm (source) 7.9.0 -> 7.9.3 age adoption passing confidence
unbuild 0.7.6 -> 0.8.9 age adoption passing confidence
vite 3.0.4 -> 3.0.8 age adoption passing confidence
vitest 0.21.0 -> 0.22.1 age adoption passing confidence
vue-tsc 0.39.5 -> 0.40.1 age adoption passing confidence

Release Notes

vitejs/vite (@​vitejs/plugin-vue)

v3.0.3

Compare Source

v3.0.2

Compare Source

evanw/esbuild

v0.15.5

Compare Source

  • Fix issues with Yarn PnP and Yarn's workspaces feature (#​2476)

    This release makes sure esbuild works with a Yarn feature called workspaces. Previously esbuild wasn't tested in this scenario, but this scenario now has test coverage. Getting this to work involved further tweaks to esbuild's custom code for what happens after Yarn PnP's path resolution algorithm runs, which is not currently covered by Yarn's PnP specification. These tweaks also fix exports map resolution with Yarn PnP for non-empty subpaths, which wasn't previously working.

v0.15.4

Compare Source

  • Consider TypeScript import assignments to be side-effect free (#​2468)

    TypeScript has a legacy import syntax for working with TypeScript namespaces that looks like this:

    import { someNamespace } from './some-file'
    import bar = someNamespace.foo;
    
    // some-file.ts
    export namespace someNamespace {
      export let foo = 123
    }

    Since esbuild converts TypeScript into JavaScript one file at a time, it doesn't know if bar is supposed to be a value or a type (or both, which TypeScript actually allows in this case). This is problematic because values are supposed to be kept during the conversion but types are supposed to be removed during the conversion. Currently esbuild keeps bar in the output, which is done because someNamespace.foo is a property access and property accesses run code that could potentially have a side effect (although there is no side effect in this case).

    With this release, esbuild will now consider someNamespace.foo to have no side effects. This means bar will now be removed when bundling and when tree shaking is enabled. Note that it will still not be removed when tree shaking is disabled. This is because in this mode, esbuild supports adding additional code to the end of the generated output that's in the same scope as the module. That code could potentially make use of bar, so it would be incorrect to remove it. If you want bar to be removed, you'll have to enable tree shaking (which tells esbuild that nothing else depends on the unexported top-level symbols in the generated output).

  • Change the order of the banner and the "use strict" directive (#​2467)

    Previously the top of the file contained the following things in order:

    1. The hashbang comment (see below) from the source code, if present
    2. The "use strict" directive from the source code, if present
    3. The content of esbuild's banner API option, if specified

    This was problematic for people that used the banner API option to insert the hashbang comment instead of using esbuild's hashbang comment preservation feature. So with this release, the order has now been changed to:

    1. The hashbang comment (see below) from the source code, if present
    2. The content of esbuild's banner API option, if specified
    3. The "use strict" directive from the source code, if present

    I'm considering this change to be a bug fix instead of a breaking change because esbuild's documentation states that the banner API option can be used to "insert an arbitrary string at the beginning of generated JavaScript files". While this isn't technically true because esbuild may still insert the original hashbang comment before the banner, it's at least more correct now because the banner will now come before the "use strict" directive.

    For context: JavaScript files recently allowed using a hashbang comment, which starts with #! and which must start at the very first character of the file. It allows Unix systems to execute the file directly as a script without needing to prefix it by the node command. This comment typically has the value #!/usr/bin/env node. Hashbang comments will be a part of ES2023 when it's released next year.

  • Fix exports maps with Yarn PnP path resolution (#​2473)

    The Yarn PnP specification says that to resolve a package path, you first resolve it to the absolute path of a directory, and then you run node's module resolution algorithm on it. Previously esbuild followed this part of the specification. However, doing this means that exports in package.json is not respected because node's module resolution algorithm doesn't interpret exports for absolute paths. So with this release, esbuild will now use a modified algorithm that deviates from both specifications but that should hopefully behave more similar to what Yarn actually does: node's module resolution algorithm is run with the original import path but starting from the directory returned by Yarn PnP.

v0.15.3

Compare Source

  • Change the Yarn PnP manifest to a singleton (#​2463)

    Previously esbuild searched for the Yarn PnP manifest in the parent directories of each file. But with Yarn's enableGlobalCache setting it's possible to configure Yarn PnP's implementation to reach outside of the directory subtree containing the Yarn PnP manifest. This was causing esbuild to fail to bundle projects with the enableGlobalCache setting enabled.

    To handle this case, esbuild will now only search for the Yarn PnP manifest in the current working directory of the esbuild process. If you're using esbuild's CLI, this means you will now have to cd into the appropriate directory first. If you're using esbuild's API, you can override esbuild's value for the current working directory with the absWorkingDir API option.

  • Fix Yarn PnP resolution failures due to backslashes in paths on Windows (#​2462)

    Previously dependencies of a Yarn PnP virtual dependency failed to resolve on Windows. This was because Windows uses \ instead of / as a path separator, and the path manipulation algorithms used for Yarn PnP expected /. This release converts \ into / in Windows paths, which fixes this issue.

  • Fix sideEffects patterns containing slashes on Windows (#​2465)

    The sideEffects field in package.json lets you specify an array of patterns to mark which files have side effects (which causes all other files to be considered to not have side effects by exclusion). That looks like this:

    "sideEffects": [
      "**/index.js",
      "**/index.prod.js"
    ]

    However, the presence of the / character in the pattern meant that the pattern failed to match Windows-style paths, which broke sideEffects on Windows in this case. This release fixes this problem by adding additional code to handle Windows-style paths.

v0.15.2

Compare Source

  • Fix Yarn PnP issue with packages containing index.js (#​2455, #​2461)

    Yarn PnP's tests require the resolved paths to end in /. That's not how the rest of esbuild's internals work, however, and doing this messed up esbuild's node module path resolution regarding automatically-detected index.js files. Previously packages that relied on implicit index.js resolution rules didn't work with esbuild under Yarn PnP. Removing this slash has fixed esbuild's path resolution behavior regarding index.js, which should now the same both with and without Yarn PnP.

  • Fix Yarn PnP support for extends in tsconfig.json (#​2456)

    Previously using extends in tsconfig.json with a path in a Yarn PnP package didn't work. This is because the process of setting up package path resolution rules requires parsing tsconfig.json files (due to the baseUrl and paths features) and resolving extends to a package path requires package path resolution rules to already be set up, which is a circular dependency. This cycle is broken by using special rules for extends in tsconfig.json that bypasses esbuild's normal package path resolution process. This is why using extends with a Yarn PnP package didn't automatically work. With this release, these special rules have been modified to check for a Yarn PnP manifest so this case should work now.

  • Fix Yarn PnP support in esbuild-wasm (#​2458)

    When running esbuild via WebAssembly, Yarn PnP support previously failed because Go's file system internals return EINVAL when trying to read a .zip file as a directory when run with WebAssembly. This was unexpected because Go's file system internals return ENOTDIR for this case on native. This release updates esbuild to treat EINVAL like ENOTDIR in this case, which fixes using esbuild-wasm to bundle a Yarn PnP project.

    Note that to be able to use esbuild-wasm for Yarn PnP successfully, you currently have to run it using node instead of yarn node. This is because the file system shim that Yarn overwrites node's native file system API with currently generates invalid file descriptors with negative values when inside a .zip file. This prevents esbuild from working correctly because Go's file system internals don't expect syscalls that succeed without an error to return an invalid file descriptor. Yarn is working on fixing their use of invalid file descriptors.

v0.15.1

Compare Source

  • Update esbuild's Yarn Plug'n'Play implementation to match the latest specification changes (#​2452, #​2453)

    This release updates esbuild's implementation of Yarn Plug'n'Play to match some changes to Yarn's specification that just landed. The changes are as follows:

    • Check for platform-specific absolute paths instead of always for the / prefix

      The specification previously said that Yarn Plug'n'Play path resolution rules should not apply for paths that start with /. The intent was to avoid accidentally processing absolute paths. However, absolute paths on Windows such as C:\project start with drive letters instead of with /. So the specification was changed to instead explicitly avoid processing absolute paths.

    • Make $$virtual an alias for __virtual__

      Supporting Yarn-style path resolution requires implementing a custom Yarn-specific path traversal scheme where certain path segments are considered no-ops. Specifically any path containing segments of the form __virtual__/<whatever>/<n> where <n> is an integer must be treated as if they were n times the .. operator instead (the <whatever> path segment is ignored). So /path/to/project/__virtual__/xyz/2/foo.js maps to the underlying file /path/to/project/../../foo.js. This scheme makes it possible for Yarn to get node (and esbuild) to load the same file multiple times (which is sometimes required for correctness) without actually duplicating the file on the file system.

      However, old versions of Yarn used to use $$virtual instead of __virtual__. This was changed because $$virtual was error-prone due to the use of the $ character, which can cause bugs when it's not correctly escaped within regular expressions. Now that esbuild makes $$virtual an alias for __virtual__, esbuild should now work with manifests from these old Yarn versions.

    • Ignore PnP manifests in virtual directories

      The specification describes the algorithm for how to find the Plug'n'Play manifest when starting from a certain point in the file system: search through all parent directories in reverse order until the manifest is found. However, this interacts poorly with virtual paths since it can end up finding a virtual copy of the manifest instead of the original. To avoid this, esbuild now ignores manifests in virtual directories so that the search for the manifest will continue and find the original manifest in another parent directory later on.

    These fixes mean that esbuild's implementation of Plug'n'Play now matches Yarn's implementation more closely, and esbuild can now correctly build more projects that use Plug'n'Play.

v0.15.0

Compare Source

This release contains backwards-incompatible changes. Since esbuild is before version 1.0.0, these changes have been released as a new minor version to reflect this (as recommended by npm). You should either be pinning the exact version of esbuild in your package.json file or be using a version range syntax that only accepts patch upgrades such as ~0.14.0. See the documentation about semver for more information.

  • Implement the Yarn Plug'n'Play module resolution algorithm (#​154, #​237, #​1263, #​2451)

    Node comes with a package manager called npm, which installs packages into a node_modules folder. Node and esbuild both come with built-in rules for resolving import paths to packages within node_modules, so packages installed via npm work automatically without any configuration. However, many people use an alternative package manager called Yarn. While Yarn can install packages using node_modules, it also offers a different package installation strategy called Plug'n'Play, which is often shortened to "PnP" (not to be confused with pnpm, which is an entirely different unrelated package manager).

    Plug'n'Play installs packages as .zip files on your file system. The packages are never actually unzipped. Since Node doesn't know anything about Yarn's package installation strategy, this means you can no longer run your code with Node as it won't be able to find your packages. Instead, you need to run your code with Yarn, which applies patches to Node's file system APIs before running your code. These patches attempt to make zip files seem like normal directories. When running under Yarn, using Node's file system API to read ./some.zip/lib/file.js actually automatically extracts lib/file.js from ./some.zip at run-time as if it was a normal file. Other file system APIs behave similarly. However, these patches don't work with esbuild because esbuild is not written in JavaScript; it's a native binary executable that interacts with the file system directly through the operating system.

    Previously the workaround for using esbuild with Plug'n'Play was to use the @yarnpkg/esbuild-plugin-pnp plugin with esbuild's JavaScript API. However, this wasn't great because the plugin needed to potentially intercept every single import path and file load to check whether it was a Plug'n'Play package, which has an unusually high performance cost. It also meant that certain subtleties of path resolution rules within a .zip file could differ slightly from the way esbuild normally works since path resolution inside .zip files was implemented by Yarn, not by esbuild (which is due to a limitation of esbuild's plugin API).

    With this release, esbuild now contains an independent implementation of Yarn's Plug'n'Play algorithm (which is used when esbuild finds a .pnp.js, .pnp.cjs, or .pnp.data.json file in the directory tree). Creating additional implementations of this algorithm recently became possible because Yarn's package manifest format was recently documented: https://yarnpkg.com/advanced/pnp-spec/. This should mean that you can now use esbuild to bundle Plug'n'Play projects without any additional configuration (so you shouldn't need @yarnpkg/esbuild-plugin-pnp anymore). Bundling these projects should now happen much faster as Yarn no longer even needs to be run at all. Bundling the Yarn codebase itself with esbuild before and after this change seems to demonstrate over a 10x speedup (3.4s to 0.24s). And path resolution rules within Yarn packages should now be consistent with how esbuild handles regular Node packages. For example, fields such as module and browser in package.json files within .zip files should now be respected.

    Keep in mind that this is brand new code and there may be some initial issues to work through before esbuild's implementation is solid. Yarn's Plug'n'Play specification is also brand new and may need some follow-up edits to guide new implementations to match Yarn's exact behavior. If you try this out, make sure to test it before committing to using it, and let me know if anything isn't working as expected. Should you need to debug esbuild's path resolution, you may find --log-level=verbose helpful.

v0.14.54

Compare Source

  • Fix optimizations for calls containing spread arguments (#​2445)

    This release fixes the handling of spread arguments in the optimization of /* @&#8203;__PURE__ */ comments, empty functions, and identity functions:

    // Original code
    function empty() {}
    function identity(x) { return x }
    /* @&#8203;__PURE__ */ a(...x)
    /* @&#8203;__PURE__ */ new b(...x)
    empty(...x)
    identity(...x)
    
    // Old output (with --minify --tree-shaking=true)
    ...x;...x;...x;...x;
    
    // New output (with --minify --tree-shaking=true)
    function identity(n){return n}[...x];[...x];[...x];identity(...x);

    Previously esbuild assumed arguments with side effects could be directly inlined. This is almost always true except for spread arguments, which are not syntactically valid on their own and which have the side effect of causing iteration, which might have further side effects. Now esbuild will wrap these elements in an unused array so that they are syntactically valid and so that the iteration side effects are preserved.

eslint/eslint

v8.22.0

Compare Source

Features

  • 2b97607 feat: Implement caching for FlatESLint (#​16190) (Nicholas C. Zakas)
  • fd5d3d3 feat: add methodsIgnorePattern option to object-shorthand rule (#​16185) (Milos Djermanovic)

Documentation

Chores

  • 10a6e0e chore: remove deploy workflow for playground (#​16186) (Milos Djermanovic)
pnpm/pnpm

v7.9.3

Compare Source

Patch Changes

  • Remove legacy signal handlers #​5224

Our Gold Sponsors

#### Our Silver Sponsors
#### What's Changed * fix: remove legacy signal handlers by @​d3lm in https://github.com/pnpm/pnpm/pull/5224

Full Changelog: pnpm/pnpm@v7.9.2...v7.9.3

v7.9.2

Compare Source

Patch Changes

  • When the same package is both in "peerDependencies" and in "dependencies", treat this dependency as a peer dependency if it may be resolved from the dependencies of parent packages #​5210.
  • Update node-gyp to v9.
  • Update the compatibility database.

Our Gold Sponsors

#### Our Silver Sponsors

v7.9.1

Compare Source

Patch Changes

  • pnpm setup: don't use setx to set env variables on Windows.

Our Gold Sponsors

#### Our Silver Sponsors
unjs/unbuild

v0.8.9

Compare Source

v0.8.8

Compare Source

v0.8.7

Compare Source

v0.8.6

Compare Source

v0.8.5

Compare Source

v0.8.4

Compare Source

v0.8.3

Compare Source

v0.8.2

Compare Source

v0.8.1

Compare Source

v0.8.0

Compare Source

⚠ BREAKING CHANGES
  • always enable esmResolve for jiti (stub and config)
  • exit with code (1) on build warnings (#​98)
Features
  • always enable esmResolve for jiti (stub and config) (b87c8df)
  • exit with code (1) on build warnings (#​98) (ffc0d7c)
  • rollup: generated named exports in esm stub (c9fce24)
0.7.6 (2022-07-20)
Bug Fixes
  • pkg: use default export condition to avoid breaking change (858d35d), closes #​89
0.7.5 (2022-07-20)
Features
Bug Fixes
0.7.4 (2022-04-13)
Bug Fixes
0.7.3 (2022-04-12)
Bug Fixes
  • resolve asbolute path to jiti for pnpm support (#​58) (81d6da7)
  • stub: use file:// protocol for windows compatibility (12a99c1)
  • work around issue building with pnpm (#​57) (eb7da84)
0.7.2 (2022-03-25)
Bug Fixes
  • revert builtins from default externals (0b808c6)
0.7.1 (2022-03-25)
Bug Fixes
  • add builtins and node: prefixes to externals (2af233d)
vitejs/vite (vite)

v3.0.8

Compare Source

v3.0.7

Compare Source

v3.0.6

Compare Source

v3.0.5

Compare Source

vitest-dev/vitest

v0.22.1

Compare Source

   🚀 Features
   🐞 Bug Fixes
    View changes on GitHub

v0.22.0

Compare Source

   🚨 Breaking Changes
  • c8 coverage support now require peer dependency @vitest/coverage-c8 to be installed. Alternatively, you can install @vitest/coverage-istanbul to use istanbul for coverage instead of c8.
   🚀 Features
   🐞 Bug Fixes
    View changes on GitHub

v0.21.1

Compare Source

   🚀 Features
   🐞 Bug Fixes
    View changes on GitHub
johnsoncodehk/volar

v0.40.1

Compare Source

  • fix: component context types missing in template if no script block (#​1688)
  • fix: organize imports added invalid code (#​1692)
  • fix: v-else template interpolation missing in virtual code (#​1694)
  • fix: template interpolation formatting broken (#​1697)
  • fix: inline css intellisense not working
Our Sponsors

v0.40.0

Compare Source

  • feat: support document highlights cross <script>, <template> (#​462)
  • feat: support reference types from script setup in template (#​891)
  • feat: support auto import in template (#​823)
  • feat: support plugin api (#​185) (#​1687)
  • fix: template scope variables completion missing (#​1284)
  • fix: prefer defineComponent instead of Vue.extend to wrap component options by default (#​1584)
  • fix: bracket pair colorization in VSCode v1.70 (#​1677)

Configuration

📅 Schedule: Branch creation - "after 6pm on sunday" in timezone Asia/Shanghai, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/all-minor-patch branch 7 times, most recently from 2479c69 to f81040a Compare August 18, 2022 09:36
@renovate renovate bot force-pushed the renovate/all-minor-patch branch from f81040a to 231170a Compare August 19, 2022 00:28
@tangdaoyuan tangdaoyuan merged commit 4e0711d into main Aug 19, 2022
@renovate renovate bot deleted the renovate/all-minor-patch branch August 19, 2022 03:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant