Skip to content

Releases: JamieMason/syncpack

8.2.5

28 Oct 12:12

Choose a tag to compare

8.2.5 (2022-10-28)

Bug Fixes

  • format: skip .repository when its .directory is present (688bc0c), closes #91 #93 #100

8.2.4

25 Jun 16:26

Choose a tag to compare

8.2.4 (2022-06-25)

Bug Fixes

  • npm: update dependencies (1bdf0c7)
  • npm: update dependencies (34c5d68)
  • output: edit log output and colours (3623c41)
  • workspace: find missed mismatches against workspace versions (25c1836), closes #66

Features

  • eol: detect line endings when writing (7e61f5c), closes #76
  • output: better explain mismatch reasons (45e0cf1), closes #65 #77 #79

8.0.0

31 May 11:36

Choose a tag to compare

8.0.0 (2022-05-31)

Features

  • pnpm: add support for pnpm overrides (2d1bf05), closes #78

BREAKING CHANGES

  • pnpm: The --overrides option delivered in 6.0.0 was originally intended to support pnpm, but erroneously read from the .overrides property of package.json files and not .pnpm.overrides.

    However, npm now also has an .overrides property to support the same functionality for users of npm.

    From this release, the --overrides option of syncpack now refers to npm overrides. Pnpm users should change to using the new --pnpmOverrides option instead.

7.2.2

29 May 16:29

Choose a tag to compare

7.2.2 (2022-05-29)

Bug Fixes

  • windows: normalise file paths (33f067f), closes #66

7.2.1

02 May 11:58

Choose a tag to compare

7.2.1 (2022-05-02)

Bug Fixes

  • npm: update dependencies (b9a9f5d)

Features

  • versionGroups: mark specific dependencies for removal (e571775), closes #65

7.1.0

01 May 14:33

Choose a tag to compare

7.1.0 (2022-05-01)

Features

  • cli: add --config to specify path to config file (4b19a13), closes #71 #72

7.0.0

27 Apr 22:41

Choose a tag to compare

7.0.0 (2022-04-27)

Bug Fixes

  • npm: update dependencies (4e5a1cf)
  • npm: update dependencies (eebbcde)

Features

  • cli: sync versions of locally developed packages (0367c9f), closes #66

BREAKING CHANGES

  • cli: If a package developed in your Monorepo depends on another package developed in your Monorepo, syncpack will now fix the installed version of the dependent to match the actual version from the package.json file of the local package.

You can disable this functionality by setting "workspace": false in your .syncpackrc config file, or by omitting the new --workspace option when using --dev, --prod etc. to define which dependency types you wish to include.

6.2.1

12 Apr 17:11

Choose a tag to compare

6.2.1 (2022-04-12)

Bug Fixes

6.2.0

03 Jan 17:46

Choose a tag to compare

6.2.0 (2022-01-03)

Features

  • groups: target specific dependency types (565c1e7)

Examples

Use loose semver ranges for devDependencies only, with the rest of the repo using the default setting.

{
  "semverGroups": [
    {
      "dependencies": ["**"],
      "dependencyTypes": ["devDependencies"],
      "packages": ["**"],
      "semverRange": "^"
    }
  ]
}

Force the version of jest to * (latest) for the whole monorepo, but only within peerDependencies.

{
  "versionGroups": [
    {
      "dependencies": ["jest"],
      "dependencyTypes": ["peerDependencies"],
      "packages": ["**"],
      "pinVersion": "*"
    }
  ]
}

6.1.0

03 Jan 16:55

Choose a tag to compare

6.1.0 (2022-01-03)

Features

Examples

Set every dependency from the AWS SDK to all use 1.64.1 in the whole monorepo.

  • @aws-cdk/assert 1.64.1
  • @aws-cdk/aws-s3 1.64.1
  • @aws-cdk/aws-ssm 1.64.1
  • @aws-cdk/core 1.64.1
{
  "versionGroups": [
    {
      "dependencies": ["@aws-cdk/**"],
      "packages": ["**"],
      "pinVersion": "1.64.1"
    }
  ]
}

Set every dependency from the AWS SDK to 1.64.1 in your alpha packages, and 0.37.0 for those packages in the rest of the monorepo:

{
  "versionGroups": [
    {
      "dependencies": ["@aws-cdk/**"],
      "packages": ["@alpha/**"],
      "pinVersion": "1.64.1"
    },
    {
      "dependencies": ["@aws-cdk/**"],
      "packages": ["**"],
      "pinVersion": "0.37.0"
    }
  ]
}

Lock the version of lodash everywhere

{
  "versionGroups": [
    {
      "dependencies": ["lodash"],
      "packages": ["**"],
      "pinVersion": "14.17.0"
    }
  ]
}
Use webpack@4 in some packages and webpack@5 in others
{
  "versionGroups": [
    {
      "dependencies": ["webpack"],
      "packages": ["@old-stuff/server", "@old-stuff/ui"],
      "pinVersion": "4.x.x"
    },
    {
      "dependencies": ["webpack"],
      "packages": ["@new-stuff/server", "@new-stuff/ui"],
      "pinVersion": "5.x.x"
    }
  ]
}