Skip to content

feat(cookie): optional enable of sending multiple cookies in CookieStore #454

feat(cookie): optional enable of sending multiple cookies in CookieStore

feat(cookie): optional enable of sending multiple cookies in CookieStore #454

Workflow file for this run

name: CI
on:
push:
tags: ["v*"]
pull_request:
paths-ignore:
- 'docs/**'
- '*.md'
- '.github/**'
- 'README.md'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
permissions:
contents: write
packages: write
jobs:
style:
name: Style
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Style check
run: cargo fmt --all -- --check
- name: Clippy check
run: cargo clippy --all-targets --all-features
docs:
name: Docs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Build docs
run: cargo doc --document-private-items --all-features
tests:
name: Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- uses: Swatinem/rust-cache@v2
- uses: taiki-e/install-action@v2
with:
tool: cargo-nextest
- name: Tests --all-features
shell: bash
run: cargo nextest run --workspace --all-features
- name: Test --no-default-features
run: cargo nextest run --workspace --no-default-features
- name: Test webpki-roots feature
run: cargo nextest run --workspace --no-default-features --features webpki-roots
- name: Test native-roots feature
run: cargo nextest run --workspace --no-default-features --features native-roots
- name: Test webpki-roots and native-roots features
run: cargo nextest run --workspace --no-default-features --features webpki-roots,native-roots
- name: Test cookies feature
run: cargo nextest run --workspace --features cookies
- name: Test cookies-abstract feature
run: cargo nextest run --workspace --features cookies-abstract
- name: Test cookies cookies cookies-preserve-order feature
run: cargo nextest run --workspace --features cookies,cookies-preserve-order
- name: Test --features gzip,stream
run: cargo nextest run --workspace --features gzip,stream
- name: Test --features brotli,stream
run: cargo nextest run --workspace --features brotli,stream
- name: Test --features zstd,stream
run: cargo nextest run --workspace --features zstd,stream
- name: Test --features deflate,stream
run: cargo nextest run --workspace --features deflate,stream
- name: Test --features json
run: cargo nextest run --workspace --features json
- name: Test --features multipart
run: cargo nextest run --workspace --features multipart
- name: Test --features stream
run: cargo nextest run --workspace --features stream
- name: Test --features hickory-dns
run: cargo nextest run --workspace --features hickory-dns
windows:
name: Windows
runs-on: windows-latest
environment: Windows
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install NASM
run: |
choco install nasm -y
- name: Build
run: |
cargo build --all-features
macos:
name: macOS
runs-on: macos-latest
environment: macOS
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Build
run: |
cargo build --all-features
linux:
name: Linux
needs: [style, tests, docs, windows, macos]
runs-on: ubuntu-latest
environment: Linux
if: startsWith(github.ref, 'refs/tags/')
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Check semver
uses: obi1kenobi/cargo-semver-checks-action@v2
- uses: katyo/publish-crates@v2
with:
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}
ignore-unpublished-changes: true
- name: Upload binaries to GitHub Release
uses: softprops/action-gh-release@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') || contains(github.ref, 'rc') }}
generate_release_notes: true