Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: yarnpkg/berry
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: ea39bf05158c791ed51cc924284ac4603be4a5ba
Choose a base ref
...
head repository: yarnpkg/berry
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a71d42c2ffd6278a202cccb5fb92c3ac0caf9cae
Choose a head ref

Commits on Nov 14, 2023

  1. ci: stop updating master

    merceyz committed Nov 14, 2023
    Copy the full SHA
    eca356a View commit details
  2. Copy the full SHA
    d971876 View commit details
  3. Copy the full SHA
    99221da View commit details

Commits on Nov 21, 2023

  1. Soften CI coverage (#4286)

    * Update integration-workflow.yml
    
    * Update integration-workflow.yml
    
    (cherry picked from commit 323ea57)
    arcanis authored and merceyz committed Nov 21, 2023
    Copy the full SHA
    4968d00 View commit details
  2. chore: add lint rule for semver.validRange and semver.Range (#4407)

    (cherry picked from commit 0eb915f)
    merceyz committed Nov 21, 2023
    Copy the full SHA
    13a5dc4 View commit details
  3. feat(plugin-essentials): support multiple workspaces in yarn link com…

    …mand (#4573)
    
    (cherry picked from commit 2ba6e59)
    Noah authored and merceyz committed Nov 21, 2023
    Copy the full SHA
    42ab01d View commit details
  4. ci: test on node 18 instead of 17 (#4618)

    (cherry picked from commit 0de5adf)
    merceyz committed Nov 21, 2023
    Copy the full SHA
    4b31ce4 View commit details
  5. docs: use explicit version instead of next tag for typedoc (#4660)

    (cherry picked from commit ab84e44)
    merceyz committed Nov 21, 2023
    Copy the full SHA
    7777c5f View commit details
  6. test: jest improvements (#4650)

    * chore: upgrade to jest 27
    
    * chore: upgrade to jest 28
    
    * refactor: don't specify modern timers since they're the new default
    
    * test: fix tests on windows
    
    * chore: update babel
    
    * ci: use shards
    
    * ci: try different shard configuration
    
    * style: tweak configuration
    
    (cherry picked from commit b6273b3)
    paul-soporan authored and merceyz committed Nov 21, 2023
    Copy the full SHA
    4761fdf View commit details

Commits on Dec 25, 2023

  1. refactor: deprecate FormatType (#4725)

    (cherry picked from commit 6386630)
    paul-soporan authored and merceyz committed Dec 25, 2023
    Copy the full SHA
    ce6c7b6 View commit details
  2. docs: Cleans up a couple of errors (#4729)

    * Clean up a few extra errors
    
    * Versions
    
    * Update MessageName.ts
    
    (cherry picked from commit 3741be5)
    arcanis authored and merceyz committed Dec 25, 2023
    Copy the full SHA
    9e86493 View commit details
  3. refactor: tweak fs.promises patch (#4762)

    (cherry picked from commit c637e5b)
    paul-soporan authored and merceyz committed Dec 25, 2023
    Copy the full SHA
    0000c2c View commit details
  4. fix: use MessageName.NETWORK_DISABLED in gitUtils too (#4777)

    (cherry picked from commit 41db84d)
    paul-soporan authored and merceyz committed Dec 25, 2023
    Copy the full SHA
    1c93cf6 View commit details
  5. refactor: update node types (#4764)

    * refactor: update node types
    
    * chore: dedupe
    
    * refactor: remove unnecessary switch
    
    Co-authored-by: merceyz <merceyz@users.noreply.github.com>
    (cherry picked from commit 6302ecb)
    paul-soporan authored and merceyz committed Dec 25, 2023
    Copy the full SHA
    38189ee View commit details
  6. chore: replace @babel/register with esbuild-wasm (#5180)

    * chore: use esbuild for running sources
    
    * deps: update esbuild
    
    * chore: remove babel setup
    
    * refactor: only use builtin sourcemap support
    
    * refactor: remove weekly cache pruning
    
    A fresh cache is 2212kB for 263 files so unlikely to become a problem.
    
    * fix: disable dynamic imports
    
    * chore: workaround issue on windows
    
    * fix: support node nightly
    
    * chore: link to issues
    
    * perf: use brotli
    
    Runtime performance is roughly the same but the cache size shrinks:
    ```diff
    $ du -s node_modules/.cache/yarn/
    - 2212    node_modules/.cache/yarn/
    + 1464    node_modules/.cache/yarn/
    ```
    
    * Minor stylistic tweaks
    
    ---------
    
    Co-authored-by: MaΓ«l Nison <nison.mael@gmail.com>
    (cherry picked from commit 8e2028e)
    merceyz committed Dec 25, 2023
    Copy the full SHA
    dab3d8f View commit details

Commits on Jan 30, 2024

  1. fix(compat): update patch for typescript@5.4.0-beta (#6110)

    **What's the problem this PR addresses?**
    
    The PnP compatibility patch for TypeScript doesn't apply to
    `typescript@5.4.0-beta`.
    
    Ref microsoft/TypeScript#35206
    
    **How did you fix it?**
    
    Rebased it.
    
    **Checklist**
    - [x] I have read the [Contributing
    Guide](https://yarnpkg.com/advanced/contributing).
    - [x] I have set the packages that need to be released for my changes to
    be effective.
    - [x] I will check that all automated PR checks pass before the PR gets
    reviewed.
    
    (cherry picked from commit 16c1d99)
    merceyz committed Jan 30, 2024
    Copy the full SHA
    49ae6bd View commit details
  2. chore(extensions): update list (#6095)

    **What's the problem this PR addresses?**
    
    Updates the extensions list to include
    vuetifyjs/vuetify-loader@6634db3
    and lock some of the ranges
    
    **Checklist**
    - [x] I have read the [Contributing
    Guide](https://yarnpkg.com/advanced/contributing).
    - [x] I have set the packages that need to be released for my changes to
    be effective.
    - [x] I will check that all automated PR checks pass before the PR gets
    reviewed.
    
    (cherry picked from commit 65d2864)
    merceyz committed Jan 30, 2024
    Copy the full SHA
    4ea4cab View commit details
  3. Fixes the optional check depending on the order the tree is traversed (…

    …#5840)
    
    **What's the problem this PR addresses?**
    
    Depending on the order we traversed the dependency tree, it could happen
    that we'd see a package as optional before seeing the other cases where
    it was not optional. Because marking the package as "not optional"
    occurred after the "has this package been traversed before?" check, we
    were never updating its status from "optional" to "not optional".
    
    Fixes #5827
    
    **How did you fix it?**
    
    We now check for optionality regardless of whether the package has been
    seen or not before. I added an order-dependent dragon test to try to
    prevent regressions.
    
    **Checklist**
    <!--- Don't worry if you miss something, chores are automatically
    tested. -->
    <!--- This checklist exists to help you remember doing the chores when
    you submit a PR. -->
    <!--- Put an `x` in all the boxes that apply. -->
    - [x] I have read the [Contributing
    Guide](https://yarnpkg.com/advanced/contributing).
    
    <!-- See
    https://yarnpkg.com/advanced/contributing#preparing-your-pr-to-be-released
    for more details. -->
    <!-- Check with `yarn version check` and fix with `yarn version check
    -i` -->
    - [x] I have set the packages that need to be released for my changes to
    be effective.
    
    <!-- The "Testing chores" workflow validates that your PR follows our
    guidelines. -->
    <!-- If it doesn't pass, click on it to see details as to what your PR
    might be missing. -->
    - [x] I will check that all automated PR checks pass before the PR gets
    reviewed.
    
    (cherry picked from commit 7aa2359)
    arcanis authored and merceyz committed Jan 30, 2024
    Copy the full SHA
    07d90c4 View commit details
  4. fix(plugin-npm-cli): fix login with Verdaccio (#5983)

    **What's the problem this PR addresses?**
    
    This commit fixes `yarn npm login` when the remote registry is
    Verdaccio.
    
    - Closes #1044
    - Closes #1848
    - Closes verdaccio/verdaccio#1737
    
    ...
    
    **How did you fix it?**
    
    When a user already exists, the registry replies with `409 Conflict`.
    The official npm client then retrieves the latest user state and inserts
    a revision, using HTTP basic authentication. This step was missing, and
    this commits adds it.
    
    The change was tested to work with a private Verdaccio registry. It
    should now be as reliable as the official npm client.
    
    ...
    
    **Checklist**
    <!--- Don't worry if you miss something, chores are automatically
    tested. -->
    <!--- This checklist exists to help you remember doing the chores when
    you submit a PR. -->
    <!--- Put an `x` in all the boxes that apply. -->
    - [x] I have read the [Contributing
    Guide](https://yarnpkg.com/advanced/contributing).
    
    <!-- See
    https://yarnpkg.com/advanced/contributing#preparing-your-pr-to-be-released
    for more details. -->
    <!-- Check with `yarn version check` and fix with `yarn version check
    -i` -->
    - [x] I have set the packages that need to be released for my changes to
    be effective.
    
    <!-- The "Testing chores" workflow validates that your PR follows our
    guidelines. -->
    <!-- If it doesn't pass, click on it to see details as to what your PR
    might be missing. -->
    - [x] I will check that all automated PR checks pass before the PR gets
    reviewed.
    
    (cherry picked from commit db6210f)
    demurgos authored and merceyz committed Jan 30, 2024
    Copy the full SHA
    db3cd21 View commit details
  5. test: update Node.js range for extensionless files (#6035)

    **What's the problem this PR addresses?**
    
    Node.js v18.19 has been released and contains
    nodejs/node#49869 so we need to update tests.
    
    **How did you fix it?**
    
    Updated the version range.
    
    **Checklist**
    - [x] I have read the [Contributing
    Guide](https://yarnpkg.com/advanced/contributing).
    - [x] I have set the packages that need to be released for my changes to
    be effective.
    - [x] I will check that all automated PR checks pass before the PR gets
    reviewed.
    
    (cherry picked from commit 6ca73db)
    merceyz committed Jan 30, 2024
    Copy the full SHA
    a8857df View commit details

Commits on Feb 1, 2024

  1. Copy the full SHA
    e02b15f View commit details
  2. Releasing 12 new packages

    | Package name | Version |
    | --- | --- |
    | `@yarnpkg/cli` | `3.8.0` |
    | `@yarnpkg/core` | `3.7.0` |
    | `@yarnpkg/plugin-essentials` | `3.5.0` |
    | `@yarnpkg/fslib` | `2.10.4` |
    | `@yarnpkg/plugin-pnp` | `3.2.15` |
    | `@yarnpkg/pnp` | `3.3.7` |
    | `@yarnpkg/pnpify` | `3.1.8` |
    | `@yarnpkg/sdks` | `2.7.3` |
    | `@yarnpkg/plugin-git` | `2.6.8` |
    | `@yarnpkg/plugin-npm-cli` | `3.4.2` |
    | `@yarnpkg/extensions` | `1.1.3` |
    | `@yarnpkg/plugin-compat` | `3.1.17` |
    yarnbot committed Feb 1, 2024
    Copy the full SHA
    a71d42c View commit details
Showing 525 changed files with 8,664 additions and 6,387 deletions.
14 changes: 14 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -25,4 +25,18 @@ module.exports = {
},
},
],
rules: {
'no-restricted-properties': [2,
{
object: `semver`,
property: `validRange`,
message: `Use 'semverUtils.validRange' instead`,
},
{
object: `semver`,
property: `Range`,
message: `Use 'semverUtils.validRange' instead`,
},
],
},
};
36 changes: 24 additions & 12 deletions .github/workflows/integration-workflow.yml
Original file line number Diff line number Diff line change
@@ -6,6 +6,13 @@ on:
pull_request:
merge_group:

concurrency:
# group by workflow and ref; the last slightly strange component ensures that for pull
# requests, we limit to 1 concurrent job, but for the master branch we don't
group: ${{github.workflow}}-${{github.ref}}-${{github.ref != 'refs/heads/master' || github.run_number}}
# Cancel intermediate builds, but only if it is a pull request build.
cancel-in-progress: ${{startsWith(github.ref, 'refs/pull/')}}

name: 'Integration'
jobs:
chore:
@@ -190,17 +197,22 @@ jobs:
strategy:
fail-fast: false
matrix:
node:
- 12
- 14
- 16
- 17
platform:
- ubuntu-latest
- windows-latest
- macos-latest

name: '${{matrix.platform}} w/ Node.js ${{matrix.node}}.x'
# We run the ubuntu tests on multiple Node versions with 2 shards since they're the fastest.
node: [12, 14, 16, 18]
platform: [ubuntu-latest]
shard: ['1/2', '2/2']
# We run the rest of the tests on the minimum Node version we support with 3 shards.
include:
# Windows tests
- {node: 12, platform: windows-latest, shard: 1/3}
- {node: 12, platform: windows-latest, shard: 2/3}
- {node: 12, platform: windows-latest, shard: 3/3}
# macOS tests
- {node: 12, platform: macos-latest, shard: 1/3}
- {node: 12, platform: macos-latest, shard: 2/3}
- {node: 12, platform: macos-latest, shard: 3/3}

name: '${{matrix.platform}} w/ Node.js ${{matrix.node}}.x (${{matrix.shard}})'
runs-on: ${{matrix.platform}}
needs: build

@@ -219,7 +231,7 @@ jobs:

- name: 'Run the integration tests'
run: |
node ./scripts/run-yarn.js test:integration --maxWorkers=100%
node ./scripts/run-yarn.js test:integration --maxWorkers=100% --shard=${{matrix.shard}}
shell: bash

- name: 'Run the unit tests'
27 changes: 1 addition & 26 deletions .github/workflows/release-branch.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
on:
workflow_dispatch:
inputs:
branch:
description: 'Branch?'
required: true
default: 'cherry-pick/'

name: 'Release Branch'
jobs:
@@ -18,7 +13,6 @@ jobs:
steps:
- uses: actions/checkout@v3
with:
ref: ${{github.event.inputs.branch}}
token: ${{secrets.YARNBOT_TOKEN}}

- name: 'Retrieve all the relevant tags'
@@ -60,7 +54,7 @@ jobs:
git push --follow-tags
if [ "$OLD_VERSION" != "$NEW_VERSION" ]; then
GH_TOKEN="${{secrets.YARNBOT_TOKEN}}" gh release create "@yarnpkg/cli/$NEW_VERSION" --title "v$NEW_VERSION" --verify-tag --generate-notes --notes-start-tag "@yarnpkg/cli/$OLD_VERSION"
GH_TOKEN="${{secrets.YARNBOT_TOKEN}}" gh release create "@yarnpkg/cli/$NEW_VERSION" --title "v$NEW_VERSION" --verify-tag --generate-notes --notes-start-tag "@yarnpkg/cli/$OLD_VERSION" --latest=false
fi
- name: 'Upload the releases'
@@ -69,22 +63,3 @@ jobs:
yarn config set -H 'npmRegistries["//npm.pkg.github.com"].npmAuthToken' "${{secrets.YARNBOT_TOKEN}}"
./scripts/release/02-release-builds.sh
./scripts/release/03-release-npm.sh
- name: 'Updates the stableVersion field'
run: |
# Revert the change from "Build a binary for convenience"
git update-index --no-skip-worktree -- .yarnrc.yml
git checkout HEAD -- .yarnrc.yml
RELEASE_COMMIT=$(git rev-parse HEAD)
node ./scripts/stable-versions-store.js
git fetch origin master
git checkout master
node ./scripts/stable-versions-restore.js
HEAD_COMMIT=$(git rev-parse HEAD)
git reset --soft $HEAD_COMMIT
git checkout $RELEASE_COMMIT -- packages/*/bin/**
git add .
git commit -m 'Sync master with the changes from ${{github.event.inputs.branch}}'
git push
Loading