Skip to content

Conversation

@jamillambert
Copy link
Collaborator

@jamillambert jamillambert commented Oct 27, 2025

bitreq was developed as a standalone repo with its own .github/workflow directory that had workflows to test and lint it.

It's now a leaf crate in corepc and test and lint workflows in its own subdirectory are not run. It is not included in CI tests and contains some issues that cause CI tests to fail.

Fix the CI errors, integrate into CI and remove redundant workflow files and badges:

  • Add std to the proxy feature since it only works with std.
  • Replace LazyLock which is only in stable rustc from 1.80. Use OnceLock instead which is stable from 1.70.
  • Remove trailing white spaces from the no-std example.
  • Remove std attribute from no-std.rs. The example is broken and commented out, but still causes a compile failure in no-std since the attribute made the module empty. The example was left in so that it can be fixed and used later rather than just deleting it.
  • Add test_vars.sh to integrate bitreq into the CI tests.
  • Add bitreq to the list of crates to test.
  • Remove the workflow files in the bitreq subdirectory, these are no longer run now it is part of the corepc workspace and not its own repo.
  • Remove the broken README.md badges.

Closes #397

@jamillambert jamillambert marked this pull request as draft October 27, 2025 11:34
@jamillambert jamillambert force-pushed the 1027-bitreq-badges branch 7 times, most recently from 2b912a3 to b49f999 Compare October 27, 2025 12:20
@jamillambert jamillambert changed the title Update bitreq badges Remove github workflow files in bitreq subdirectory and update badges Oct 27, 2025
@jamillambert jamillambert marked this pull request as ready for review October 27, 2025 12:25
@tcharding
Copy link
Member

Oh I forgot to tie bitreq into CI correctly, can you add a contrib/test_vars.sh file to this PR please?

@jamillambert
Copy link
Collaborator Author

Oh I forgot to tie bitreq into CI correctly, can you add a contrib/test_vars.sh file to this PR please?

Added a blank one with no listed features.

Comment on lines 8 to 11
FEATURES_WITH_STD=""

# Test all these features without "std" enabled.
FEATURES_WITHOUT_STD=""
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These need filling in with all the crate's features.

Copy link
Collaborator Author

@jamillambert jamillambert Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

NB. due to this the nature of this PR has changed significantly and I have updated the title and description.

@jamillambert jamillambert force-pushed the 1027-bitreq-badges branch 4 times, most recently from cfcf50c to d1ebd4c Compare October 29, 2025 12:39
@jamillambert jamillambert changed the title Remove github workflow files in bitreq subdirectory and update badges Integrate bitreq crate into CI tests Oct 29, 2025
@jamillambert
Copy link
Collaborator Author

I added the features and bitreq to the list of crates to test in CI. This then caused the CI tests to fail. The failures have all been fixed in new patches and the PR description and title updated accordingly.

@tcharding
Copy link
Member

Looks like you've messed up the rebase a bit mate, a couple of the patches now have mixed up changes (i.e not described in the git log).

@jamillambert
Copy link
Collaborator Author

Tidied up the commits and commit log.

Copy link
Collaborator

@oleonardolima oleonardolima left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cACK d6cb085

@tcharding
Copy link
Member

tcharding commented Oct 30, 2025

Needs rebase because of the serde-using-json PR (#398).

`proxy` only works with `std` and causes an error in `no-std`.

Add `std` to the `proxy` feature.
LazyLock only stabilizes in rustc 1.80 and causes a CI test error.
OnceLock is stable since 1.70 and has the required functionality.

Use OnceLock instead of LazyLock.
The example `no-std.rs`, which is currently broken and commented out,
fails to compile without `std` because it has a crate level attribute
`#![cfg(feature = "std")]`.

Remove the `std` attribute so that the (broken) example compiles with
`no-std`.
Add all of the features to the lists.

async, async-https and proxy require std and are therfore not listed in
the no-std features.
Reorder the list alphabetically and add bitreq.
bitreq is now part of the corepc workspace and the github workflow files
in its subdirectory are not run anymore.

Remove these files.
These badges were linked to workflows that are no longer run on this
crate individually.
@jamillambert
Copy link
Collaborator Author

Rebased and removed #[allow(clippy::incompatible_msrv)]

Copy link
Collaborator

@oleonardolima oleonardolima left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cACK 3497da8

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.

bitreq: badges in the readme are not displaying correctly

3 participants