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

Tracking issue for updating dependencies #1265

Closed
35 of 36 tasks
jtgeibel opened this issue Feb 22, 2018 · 5 comments
Closed
35 of 36 tasks

Tracking issue for updating dependencies #1265

jtgeibel opened this issue Feb 22, 2018 · 5 comments
Labels
A-backend ⚙️ C-internal 🔧 Category: Nonessential work that would make the codebase more consistent or clear C-tracking-issue Category: A tracking issue for an RFC, an unstable feature, or an issue made of many parts

Comments

@jtgeibel
Copy link
Member

jtgeibel commented Feb 22, 2018

API Changes

These require code changes to address API changes.

Version bump

These should just be a version bump in Cargo.toml.

External

conduit-git-http-backend

We could switch to libflate however it is no longer pulled in by reqwest by default and we've consolidated on a single version of flate2 so this isn't a priority.

conduit-cookie

@sgrif
Copy link
Contributor

sgrif commented May 3, 2018

@jtgeibel I think we should chat about a plan for this. Want to ping me on gitter and set up a call?

@jtgeibel
Copy link
Member Author

@sgrif yeah that sounds good to me. I've just created a gitter account and will reach out to you there.

@carols10cents carols10cents added C-internal 🔧 Category: Nonessential work that would make the codebase more consistent or clear A-backend ⚙️ labels Jun 27, 2018
bors added a commit that referenced this issue Feb 4, 2019
Update itertools to 0.7.0 and log to 0.4

This PR updates dependency crates `itertools` to 0.7.0 and `log` to 0.4.

Ref. #1265
jtgeibel added a commit to jtgeibel/crates.io that referenced this issue Mar 12, 2019
The latest version of `comrak` requires an explicit opt-in to produce
unsanitized output (the previous default).  We already sanitize the
output with `ammonia` and `comrak`'s sanitized output is too
restrictive, causing 5 tests to fail.

Refs: rust-lang#1265
jtgeibel added a commit to jtgeibel/crates.io that referenced this issue Mar 12, 2019
The latest version of `comrak` requires an explicit opt-in to produce
unsanitized output (the previous default).  We already sanitize the
output with `ammonia` and `comrak`'s sanitized output is too
restrictive, causing 5 tests to fail.

Refs: rust-lang#1265
bors added a commit that referenced this issue Mar 12, 2019
Update to the latest `comrak` and `ammonia` for processing markdown

The latest version of `comrak` requires an explicit opt-in to produce
unsanitized output (the previous default).  We already sanitize the
output with `ammonia` and `comrak`'s sanitized output is too
restrictive, causing 5 tests to fail.

Refs: #1265
jtgeibel added a commit to jtgeibel/crates.io that referenced this issue May 30, 2019
I have several local branches updating dependencies and addressing any
breaking changes (towards closing out rust-lang#1265).  I'd like to avoid
lockfile merge conflicts between those branches so I'm bumping all
semver compatible versions in this PR.

I'd like to let this bake in production for at least a few days before
opening PRs bumping major versions in `Cargo.toml`.

If this approach is too aggressive, or needs to be reverted, I can open
the other PRs more serially and look into breaking this upgrade into
smaller pieces.
bors added a commit that referenced this issue May 30, 2019
Run `cargo update`

I have several local branches updating dependencies and addressing any
breaking changes (towards closing out #1265).  I'd like to avoid
lockfile merge conflicts between those branches so I'm bumping all
semver compatible versions in this PR.

I'd like to let this bake in production for at least a few days before
opening PRs bumping major versions in `Cargo.toml`.

If this approach is too aggressive, or needs to be reverted, I can open
the other PRs more serially and look into breaking this upgrade into
smaller pieces.
jtgeibel added a commit to jtgeibel/crates.io that referenced this issue Aug 23, 2019
Docopt is only used directly in the `render_readme` binary, though this
does transitively update some crates that are used in production.

Refs rust-lang#1265, rust-lang#1805
bors added a commit that referenced this issue Aug 25, 2019
Bump docopt 0.8 -> 1.1.0

Docopt is only used directly in the `render_readme` binary, though this
does transitively update some crates that are used in production.

Refs #1265, #1805
smarnach pushed a commit to smarnach/crates.io that referenced this issue Aug 26, 2019
Docopt is only used directly in the `render_readme` binary, though this
does transitively update some crates that are used in production.

Refs rust-lang#1265, rust-lang#1805
jtgeibel added a commit to jtgeibel/crates.io that referenced this issue Dec 15, 2019
Background threads are now enabled for all artifacts by enabling the
`background_threads` feature.

Reviewing `jemalloc-sys` shows the underlying `jemalloc` version remains
unchanged at 5.1, so this is not expected to affect runtime behavior in
production.

Refs: rust-lang#1265
bors added a commit that referenced this issue Dec 16, 2019
Upgrade `jemallocator`

Background threads are now enabled for all artifacts by enabling the
`background_threads` feature.

Reviewing `jemalloc-sys` shows the underlying `jemalloc` version remains
unchanged at 5.1, so this is not expected to affect runtime behavior in
production.

Refs: #1265
bors added a commit that referenced this issue Mar 7, 2020
Update hex to 0.4

Update hex to 0.4, API is changed, no extra dependencies change.
/cc #1265
r? @jtgeibel
bors added a commit that referenced this issue Mar 7, 2020
Update handlebars to 3.0.1

Update handlebars to 3.0.1 ([changelog](https://github.com/sunng87/handlebars-rust/blob/master/CHANGELOG.md)).
cc #1265

Output:
```text
Updating handlebars v2.0.1 -> v3.0.1
Removing hashbrown v0.5.0
Updating quick-error v1.2.2 -> v1.2.3
Removing same-file v1.0.5
Removing walkdir v2.2.9
```

r? @jtgeibel
@JohnTitor JohnTitor added the C-tracking-issue Category: A tracking issue for an RFC, an unstable feature, or an issue made of many parts label Mar 19, 2020
bors added a commit that referenced this issue Apr 16, 2020
Update `toml` to 0.5

I don't expect any breakage.
cc #1265
r? @jtgeibel
bors added a commit that referenced this issue Apr 29, 2020
Update `git2` to 0.13

This reduces the use of url 1.x (last thing is oauth2) and requires one additional dependency (jobserver).

```
Updating git2 v0.8.0 -> v0.13.5
Adding jobserver v0.1.21
Updating libgit2-sys v0.7.11 -> v0.12.5+1.0.0
```

cc #1265
r? @jtgeibel
This was referenced May 14, 2020
@jtgeibel
Copy link
Member Author

I'm going to close this as effectively complete after 2+ years! The only remaining update is for url 1.7 to 2.1, however this would require bumping to an alpha release of oauth2. (We could also update to base64 0.12 however there is no point in pulling in a 4th version of this crate until it is pulled into the tree via some other dependency.)

There is a bit more work to do to incrementally cargo update portions of the dependency tree, but we've already made good progress on that and beyond the exceptions above no changes to Cargo.toml remain at this time.

@carols10cents
Copy link
Member

Hooray!!!! Would we be able to and want to enable dependabot for Rust deps now?

@jtgeibel
Copy link
Member Author

Would we be able to and want to enable dependabot for Rust deps now?

Very soon I hope! We just need to do a cargo update to get all semver compatible changes into the lockfile. The last few times we tried this we were getting segfaults in production, but it has been a while since we tried a full update like that and we've made a lot of progress since in updating portions of the tree without issue.

For instance we did a cargo update -p reqwest --aggressive which updated a good portion of dependencies. We can probably slice off a few other pieces of functionality like git, serde, and readme rendering. I think we can get there with another 3 PRs or so following this sort of conservative approach.

bors added a commit that referenced this issue May 14, 2020
bors added a commit that referenced this issue May 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-backend ⚙️ C-internal 🔧 Category: Nonessential work that would make the codebase more consistent or clear C-tracking-issue Category: A tracking issue for an RFC, an unstable feature, or an issue made of many parts
Projects
None yet
Development

No branches or pull requests

4 participants