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

Set implicitlyPreferredVersions=false #6290

Merged
merged 7 commits into from
Nov 21, 2019

Conversation

mikeharder
Copy link
Member

@mikeharder mikeharder commented Nov 21, 2019

  • Required to support dependencies with incompatible peerDependencies ranges
  • Reverts two workarounds which are no longer necessary
    • strictPeerDependencies=false
    • rhea-promise in preferredVersions

Related

@mikeharder
Copy link
Member Author

/azp run js - core

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

@daviwil daviwil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a ton for all your work to get these improvements into Rush!

@ramya-rao-a ramya-rao-a requested a review from xirzec November 21, 2019 17:57
@bsiegel
Copy link
Member

bsiegel commented Nov 21, 2019

@mikeharder I'm not super clear on exactly the effect of this change, but the docs seem to imply that setting this to false will essentially disable Rush's verification that packages in the workspace share the same version ranges. Does that appear to be the case? If so I'd strongly recommend against making this change.

@mikeharder
Copy link
Member Author

@bsiegel: Are you talking about the feature where Rush generates an error if packages use different dependency versions? So if package A depends on C@1, and package B depends on C@2, this will be an error unless C@2 is listed under allowedAlternativeVersions?

If so, I don't believe the implicitlyPreferredVersions setting has any impact on this feature, but I will verify to make sure. Was there a specific part of the docs giving you this impression?

I will also add Rush was planning to make implicitlyPreferredVersions: false the default when using pnpm@^4, but they decided to wait before doing this.

@bsiegel
Copy link
Member

bsiegel commented Nov 21, 2019

@bsiegel Brandon Siegel FTE: Are you talking about the feature where Rush generates an error if packages use different dependency versions? So if package A depends on C@1, and package B depends on C@2, this will be an error unless C@2 is listed under allowedAlternativeVersions?

Yep, exactly. I'm trying to find the part that gave me that impression but so far I haven't found it. Maybe I was just misreading the docs.

@mikeharder
Copy link
Member Author

I verified the "mis-matching dependencies" feature still works when implicitlyPreferredVersions: false:

Starting "rush install"

debug
  ^4.1.1
   - @azure/core-amqp
   - @azure/event-hubs
   - @azure/event-processor-host
   - @azure/eventhubs-checkpointstore-blob
   - @azure/service-bus
   - testhub
  ^4.1.0
   - @azure/cosmos

Found 1 mis-matching dependencies!

@mikeharder mikeharder merged commit 07c3a55 into Azure:master Nov 21, 2019
@mikeharder mikeharder deleted the implicitly-preferred-versions-2 branch November 21, 2019 21:43
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.

3 participants