Skip to content

Deps: Bump httpmock from 0.8.3 to 0.9.0 - #102

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/httpmock-0.9.0
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/httpmock-0.9.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 27, 2026

Copy link
Copy Markdown
Contributor

Bumps httpmock from 0.8.3 to 0.9.0.

Release notes

Sourced from httpmock's releases.

v0.9.0

The crate was upgraded to the Rust 2024 edition. The minimum supported Rust version remains 1.88.

Breaking changes

  • server::matchers is now crate-private (#312). Its matcher, comparator and reader types are implementation details rather than a supported extension API; there is no replacement public path. Custom predicates remain possible with When::is_true.
  • The body helpers is_blank, contains_str, contains_slice and contains_vec were removed (#246). Use request.body_string().contains(".."), which also works inside respond_with, or request.body_ref().windows(n).any(|w| w == b"..") with a non-empty needle, and When::body_includes when matching.
  • HttpMockRequest::query_params_map() was removed (#246). Collect query_params() instead: let params: HashMap<String, String> = request.query_params().into_iter().collect(); keeps the last value for duplicate keys, as the removed method did. query_params() has returned Vec<(String, String)> since 0.8.2.
  • The MockExt trait was removed and Mock's public id field is now private (#285). Remove MockExt imports and replace direct mock.id field access with mock.id(). Mock::new(id, &server) is unchanged.
  • The mock server only accepts cleartext HTTP/2 connections (prior knowledge, as gRPC clients send it) when the http2 cargo feature is enabled (#297). Previously this worked without the feature. It fails at runtime, not at compile time: the client sees the connection closed after the preface and the server logs "invalid HTTP version parsed (found HTTP2 preface)". Enable http2 to keep serving such clients; standalone and the Docker image already include it. HTTPS via ALPN is unaffected, as h2 was already only offered with the feature enabled. The crate also no longer enables tokio/signal or hyper/http2 for other crates in the build, so a crate that relied on that has to enable them itself.
  • server::state::MockServerState and server::state::HttpMockStateManager are now crate-private (#289, #326). Neither could be used from outside the crate beyond constructing it; code using the MockServer API is unaffected.
  • The empty experimental Cargo feature was removed (#316). Remove it from your dependency's feature list; it did not enable any functionality.
  • The Docker image now uses a slim Debian runtime without the Rust toolchain or source tree (#202, 1231c63). curl and wget are no longer installed, so healthchecks that call them need another probe: an httpGet probe against /__httpmock__/ping, or from inside the container bash -c 'exec 3<>/dev/tcp/127.0.0.1/5050'. The CA files are no longer in the image either; use certs/ca.pem from the repository or server::DEFAULT_CA_CERTIFICATE. The executable is now at /usr/local/bin/httpmock, with a compatibility symlink at /usr/local/cargo/bin/httpmock so existing absolute paths continue to work.
  • The tls-detect cargo feature was removed

... (truncated)

Changelog

Sourced from httpmock's changelog.

Version 0.9.0

The crate was upgraded to the Rust 2024 edition. The minimum supported Rust version remains 1.88.

Breaking changes

  • server::matchers is now crate-private (#312). Its matcher, comparator and reader types are implementation details rather than a supported extension API; there is no replacement public path. Custom predicates remain possible with When::is_true.
  • The body helpers is_blank, contains_str, contains_slice and contains_vec were removed (#246). Use request.body_string().contains(".."), which also works inside respond_with, or request.body_ref().windows(n).any(|w| w == b"..") with a non-empty needle, and When::body_includes when matching.
  • HttpMockRequest::query_params_map() was removed (#246). Collect query_params() instead: let params: HashMap<String, String> = request.query_params().into_iter().collect(); keeps the last value for duplicate keys, as the removed method did. query_params() has returned Vec<(String, String)> since 0.8.2.
  • The MockExt trait was removed and Mock's public id field is now private (#285). Remove MockExt imports and replace direct mock.id field access with mock.id(). Mock::new(id, &server) is unchanged.
  • The mock server only accepts cleartext HTTP/2 connections (prior knowledge, as gRPC clients send it) when the http2 cargo feature is enabled (#297). Previously this worked without the feature. It fails at runtime, not at compile time: the client sees the connection closed after the preface and the server logs "invalid HTTP version parsed (found HTTP2 preface)". Enable http2 to keep serving such clients; standalone and the Docker image already include it. HTTPS via ALPN is unaffected, as h2 was already only offered with the feature enabled. The crate also no longer enables tokio/signal or hyper/http2 for other crates in the build, so a crate that relied on that has to enable them itself.
  • server::state::MockServerState and server::state::HttpMockStateManager are now crate-private (#289, #326). Neither could be used from outside the crate beyond constructing it; code using the MockServer API is unaffected.
  • The empty experimental Cargo feature was removed (#316). Remove it from your dependency's feature list; it did not enable any functionality.
  • The Docker image now uses a slim Debian runtime without the Rust toolchain or source tree (#202, 1231c63). curl and wget are no longer installed, so healthchecks that call them need another probe: an httpGet probe against /__httpmock__/ping, or from inside the container bash -c 'exec 3<>/dev/tcp/127.0.0.1/5050'. The CA files are no longer in the image either; use certs/ca.pem from the repository or server::DEFAULT_CA_CERTIFICATE. The executable is now at /usr/local/bin/httpmock, with a compatibility symlink at /usr/local/cargo/bin/httpmock so existing absolute paths continue to work.

... (truncated)

Commits
  • d6fe1cc Release 0.9.0
  • 3926545 Stop exposing optional dependencies as cargo features
  • 8e4c443 Make HttpMockStateManager crate-private
  • 3a8cb6d chore: drop a stale comment about moving body helpers
  • e8699b5 docs: apply the 0.9 breaking-change review to the changelog
  • a1dbc8f docs: point the docs.rs front page at the guide and badge feature-gated items
  • 4ecf44c Use is_some_and for the authority IP check in the TLS resolver
  • 7f52d59 Take an AsyncFn in with_retry instead of a closure plus future pair
  • ee5a062 docs: regenerate website method docs for up_to_n_times
  • 95f07c3 ci(deps): bump the npm_and_yarn group across 1 directory with 3 updates (#334)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [httpmock](https://github.com/httpmock/httpmock) from 0.8.3 to 0.9.0.
- [Release notes](https://github.com/httpmock/httpmock/releases)
- [Changelog](https://github.com/httpmock/httpmock/blob/master/CHANGELOG.md)
- [Commits](httpmock/httpmock@v0.8.3...v0.9.0)

---
updated-dependencies:
- dependency-name: httpmock
  dependency-version: 0.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Oct 27, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner October 27, 2026 20:24
@greenbonebot
greenbonebot enabled auto-merge (rebase) October 27, 2026 20:24

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants