launchdarkly / rust-server-sdk

LaunchDarkly Server-Side SDK for Rust
https://docs.launchdarkly.com/sdk/server-side/rust
Other
18 stars 13 forks source link

Bump cursive to 0.15 to avoid yanked enum-map version #8

Closed ramosbugs closed 2 years ago

ramosbugs commented 2 years ago

Requirements

Describe the solution you've provided

Running cargo check on a fresh repository checkout fails with the following error:

error: failed to select a version for the requirement `enum-map = "^0.5.0"`
candidate versions found which didn't match: 2.0.1, 2.0.0, 1.1.1, ...
location searched: crates.io index
required by package `cursive v0.11.0`
    ... which satisfies dependency `cursive = "^0.11"` of package `launchdarkly-server-sdk v1.0.0-beta.2 (launchdarkly-rust-server-sdk/launchdarkly-server-sdk)`
    ... which satisfies path dependency `launchdarkly-server-sdk` (locked to 1.0.0-beta.2) of package `contract-tests v0.1.0 (launchdarkly-rust-server-sdk/contract-tests)`

This is caused by enum-map 0.5 being yanked from crates.io. This PR bumps cursive to 0.15, which depends on a non-yanked version of enum-map.

Describe alternatives you've considered

Bumping to the latest version of cursive (0.17.0) introduces a bunch of breaking changes that would require a more significant revision of the progress_ncurses example.

keelerm84 commented 2 years ago

Thank you for your contribution. In an upcoming release, we have removed the dependency on cursive. That release will supersede this PR, so I'm going to close this instead of merging it.

KamilaBorowska commented 2 years ago

Sorry about that, unyanked enum-map 0.5.0. In hindsight, yanking a crate because it no longer meets its MSRV (a dependency of enum-map 0.5.0 was yanked forcing usage of a version with higher MSRV) was a dumb idea because I don't think anyone really cares about MSRV of 1.31 (at this point, most crates don't work with such an old version). Like, yeah, technically it's a semver break (I did document MSRV after all), but, really.