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

Support version overrides #64

Closed
wants to merge 2 commits into from

Conversation

harelmo
Copy link

@harelmo harelmo commented Nov 16, 2021

Related to #63 .

@JamieMason This is an initial sketch of the proposed solution, I'd be glad to get feedback and evolve this according to any suggestions or guidelines.

Thanks 🙏

@JamieMason
Copy link
Owner

Appreciate it @harelmo. Just a note that I may take a little while to pick this up as my spare time is being spent working on an app, but I'll try not to keep you waiting unnecessarily.

@harelmo
Copy link
Author

harelmo commented Nov 22, 2021

Appreciate it @harelmo. Just a note that I may take a little while to pick this up as my spare time is being spent working on an app, but I'll try not to keep you waiting unnecessarily.

Thanks, I really appreciate it

@JamieMason
Copy link
Owner

Hey @harelmo, good news and bad news is that 6.0.0 is released, which is a little easier to develop on and has some new features, but means a lot of conflicts for this PR 😬 .

@JamieMason
Copy link
Owner

JamieMason commented Jan 1, 2022

I think one approach can potentially solve #63, #44, and #53. I'll push some tests for the use cases that have been mentioned, to be implemented later. The approach would need to support versionGroups.

EDIT: some use cases I've heard of below, any more?

(1) 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"
    }
  ]
}

(2) 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"
    }
  ]
}

(3) Lock the version of lodash everywhere

{
  "versionGroups": [
    {
      "dependencies": ["lodash"],
      "packages": ["**"],
      "pinVersion": "14.17.0"
    }
  ]
}

(4) 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"
    }
  ]
}

@JamieMason JamieMason closed this in 3de6f90 Jan 3, 2022
@JamieMason
Copy link
Owner

This should now be possible in 6.1.0, thanks for contributing.

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.

None yet

2 participants