bitreq: test all TLS feature combinations in CI#662
Open
satsfy wants to merge 3 commits into
Open
Conversation
satsfy
requested review from
TheBlueMatt,
oleonardolima and
tnull
as code owners
July 14, 2026 15:51
Contributor
Author
|
After inspecting the logs I have noticed that the amount of ran features has not changed at all. I think CI already handled all jobs by default. Will draft until resolved. |
satsfy
marked this pull request as draft
July 14, 2026 18:57
Contributor
|
At the very end of a test job, for example Example from this PR [1480](https://github.com/rust-bitcoin/corepc/actions/runs/29347149288/job/87133726541?pr=662#step:5:11481)
Test Summary
Commit: 33ed9f25b81edcca565f758fdcc93665c7f96ef1
Package: corepc-client
Examples : (none)
Individual features: client-sync, jsonrpc
Sampled subsets : [client-sync]
Exact sets : (none)
No-std check : skipped
Package: jsonrpc
Examples : (none)
Individual features: base64, bitreq, bitreq_http, bitreq_http_async, client_async, proxy, simple_http, simple_tcp, simple_uds, socks
Sampled subsets : [base64, bitreq, bitreq_http, client_async, proxy, simple_http, simple_tcp, simple_uds, socks], [bitreq, client_async, simple_http, simple_tcp, socks], [base64, bitreq_http_async, proxy, simple_http, simple_uds, socks], [base64, proxy, simple_http, simple_tcp, simple_uds]
Exact sets : (none)
No-std check : skipped
Package: bitreq
Examples : (none)
Individual features: async, async-https, async-https-native-tls, async-https-rustls, async-https-rustls-probe, base64, https, https-native-tls, https-rustls, https-rustls-probe, json-using-serde, log, native-tls, proxy, rustls, rustls-native-certs, rustls-webpki, serde, serde_json, std, tokio, tokio-native-tls, tokio-rustls, webpki-roots
Sampled subsets : [async-https-native-tls, async-https-rustls, base64, log, proxy, rustls-webpki, webpki-roots], [async, https, https-rustls, log, native-tls, rustls-native-certs, rustls-webpki, tokio-native-tls], [async, async-https, async-https-native-tls, async-https-rustls, base64, https-native-tls, https-rustls, https-rustls-probe, json-using-serde, log, native-tls, proxy, rustls, serde, serde_json, tokio, tokio-native-tls, tokio-rustls], [async-https, base64, https-native-tls, https-rustls, https-rustls-probe, json-using-serde, log, native-tls, proxy, rustls-native-certs, rustls-webpki, serde, serde_json, std, tokio-native-tls, webpki-roots], [async, async-https-rustls, https-native-tls, https-rustls, log, native-tls, proxy, rustls, rustls-native-certs, serde, tokio]
Exact sets : (none)
No-std check : skipped
Package: corepc-types
Examples : (none)
Individual features: serde-deny-unknown-fields, std
Sampled subsets : (none)
Exact sets : (none)
No-std check : skipped
Package: jsonrpc-fuzz
Examples : (none)
Individual features: (none)
Sampled subsets : (none)
Exact sets : (none)
No-std check : skipped |
satsfy
force-pushed
the
test-tls-feature-builds
branch
from
July 14, 2026 20:05
e005d4c to
2a1a1b8
Compare
satsfy
force-pushed
the
test-tls-feature-builds
branch
from
July 16, 2026 03:04
47e9815 to
a3d4365
Compare
satsfy
force-pushed
the
test-tls-feature-builds
branch
3 times, most recently
from
July 17, 2026 19:38
97f67d0 to
557fd89
Compare
Bump cargo-rbmt 0.5.1. 0.5 names lockfile flag onto each subcommand and folded docsrs into docs, with --no-docsrs selecting the stable build.
Two entries in allowed_duplicates no longer show up as duplicate deps, so cargo-rbmt lint flags them as unused. Drop base64 and getrandom to match cargo-rbmt 0.5.
The test job only built bitreq with default features, so the optional TLS backends were never compiled or tested. List each backend under `exact_features` so cargo-rbmt builds and tests them one by one. Bare `rustls` has no trust roots and fails `test_https`, so exclude it from the discovered-feature runs. The three sync backends also need `std` on their feature set, otherwise the test binary is empty and `test_https` never runs. The async backends pull `std` in via `async`.
satsfy
force-pushed
the
test-tls-feature-builds
branch
from
July 17, 2026 20:02
557fd89 to
06d3ea2
Compare
satsfy
marked this pull request as ready for review
July 17, 2026 20:30
Contributor
Author
|
Reworked the PR: bumped rbmt to 0.5.1 (because |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #653
The test job only built bitreq with default features, so the optional TLS backends were never compiled. List each backend under rbmt
exact_featuresso everyone gets built and tested.The sync backends also need
stdin their set, or nothing is tested (cargo test -p bitreq --no-default-features --features https-rustls --test main->running 0 tests).rustlsalone is excluded because it has no trust roots (say, use it withwebpki-roots), sotest_httpsfails (I think this test gate should change, but that is follow-up territory).Using this required bumping rbmt to 0.5.1 (it was on 0.2.0).
Note that this makes the CI run for longer.