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

Update crossbeam to avoid multi version dependency #704

Merged
merged 1 commit into from
Nov 7, 2019
Merged

Update crossbeam to avoid multi version dependency #704

merged 1 commit into from
Nov 7, 2019

Conversation

dnaka91
Copy link
Contributor

@dnaka91 dnaka91 commented Nov 7, 2019

Just did a cargo update on my project today morning and noticed that with the release of crossbeam-epoch 0.8.0, rayon starts to depend on 2 versions of crossbeam-utils.

Before:

 rayon-core v1.6.0
 ├── crossbeam-deque v0.7.2
 │   ├── crossbeam-epoch v0.8.0
 │   │   └── crossbeam-utils v0.7.0 <-- latest
 │   └── crossbeam-utils v0.7.0     <-- latest
 ├── crossbeam-queue v0.1.2
 │   └── crossbeam-utils v0.6.6     <-- outdated
 └── crossbeam-utils v0.6.6         <-- outdated

Here Rust will compile 2 versions of the same dependency.

After:

rayon-core v1.6.0
├── crossbeam-deque v0.7.2
│   ├── crossbeam-epoch v0.8.0
│   │   └── crossbeam-utils v0.7.0 <-- latest
│   └── crossbeam-utils v0.7.0     <-- latest
├── crossbeam-queue v0.2.0
│   └── crossbeam-utils v0.7.0     <-- latest
└── crossbeam-utils v0.7.0         <-- latest

Here all references are up to date and Rust will only compile one version of crossbeam-utils.

kjeremy added a commit to kjeremy/rust-analyzer that referenced this pull request Nov 7, 2019
Removes nodrop and extra arrayvec

We have an extra crossbeam-queue and crossbeam-utils left but those should
drop once rayon accepts rayon-rs/rayon#704
bors bot added a commit to rust-lang/rust-analyzer that referenced this pull request Nov 7, 2019
2194: Update crates r=matklad a=kjeremy

Removes nodrop and extra arrayvec

We have an extra crossbeam-queue and crossbeam-utils left but those should
drop once rayon accepts rayon-rs/rayon#704

Co-authored-by: kjeremy <kjeremy@gmail.com>
@cuviper
Copy link
Member

cuviper commented Nov 7, 2019

It still passed the compat build, so this is fine, thanks!

bors r+

bors bot added a commit that referenced this pull request Nov 7, 2019
704: Update crossbeam to avoid multi version dependency r=cuviper a=dnaka91

Just did a `cargo update` on my project today morning and noticed that with the release of **crossbeam-epoch 0.8.0**, rayon starts to depend on 2 versions of **crossbeam-utils**.

Before:
```
 rayon-core v1.6.0
 ├── crossbeam-deque v0.7.2
 │   ├── crossbeam-epoch v0.8.0
 │   │   └── crossbeam-utils v0.7.0 <-- latest
 │   └── crossbeam-utils v0.7.0     <-- latest
 ├── crossbeam-queue v0.1.2
 │   └── crossbeam-utils v0.6.6     <-- outdated
 └── crossbeam-utils v0.6.6         <-- outdated
```

Here Rust will compile 2 versions of the same dependency.

After:
```
rayon-core v1.6.0
├── crossbeam-deque v0.7.2
│   ├── crossbeam-epoch v0.8.0
│   │   └── crossbeam-utils v0.7.0 <-- latest
│   └── crossbeam-utils v0.7.0     <-- latest
├── crossbeam-queue v0.2.0
│   └── crossbeam-utils v0.7.0     <-- latest
└── crossbeam-utils v0.7.0         <-- latest
```

Here all references are up to date and Rust will only compile one version of `crossbeam-utils`.

Co-authored-by: Dominik Nakamura <dnaka91@gmail.com>
@bors
Copy link
Contributor

bors bot commented Nov 7, 2019

@bors bors bot merged commit b434bfa into rayon-rs:master Nov 7, 2019
@matklad matklad mentioned this pull request Nov 7, 2019
bors bot added a commit that referenced this pull request Nov 7, 2019
705: Update compat-Cargo.lock r=cuviper a=matklad

I've noticed that #704 uses old compat lockfile, which is strange, given that it changes Cargo.lock.

What happens here is that cargo writes new compat lockfile during CI.

That means that CI might break randomly, if rayon's dependency is published with the same major version, but different MSRV

With this PR, CI will break deterministically if you change Cargo.toml and don't update compat-Cargo.lock.

Not sure if this actually makes sense :)

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
@dnaka91 dnaka91 deleted the update-dependencies branch November 8, 2019 01:19
@koushiro
Copy link

Hi, @cuviper. Do you have plans to release a new version with this change.

@cuviper
Copy link
Member

cuviper commented Nov 20, 2019

I have no plans, but we can publish a new version. I'll prepare that shortly.

@cuviper
Copy link
Member

cuviper commented Nov 21, 2019

rayon-core 1.6.1 and rayon 1.2.1 are now published.

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