Compare commits

..

1 Commits

Author SHA1 Message Date
Flori f828727512
Merge 0378739384 into 1285d702d7 2024-07-21 13:14:54 +00:00
5 changed files with 140 additions and 118 deletions

View File

@ -11,8 +11,10 @@ env:
jobs: jobs:
linux: linux:
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 30 timeout-minutes: 30
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Clone spacebar server - name: Clone spacebar server
@ -21,7 +23,7 @@ jobs:
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: 18 node-version: 18
cache: "npm" cache: 'npm'
cache-dependency-path: server/package-lock.json cache-dependency-path: server/package-lock.json
- name: Prepare and start Spacebar server - name: Prepare and start Spacebar server
run: | run: |
@ -33,27 +35,17 @@ jobs:
with: with:
cache-all-crates: "true" cache-all-crates: "true"
prefix-key: "linux" prefix-key: "linux"
- uses: taiki-e/install-action@nextest - name: Build, Test and Publish Coverage
- name: Build, Test with nextest, Publish Coverage
run: | run: |
if [ -n "${{ secrets.COVERALLS_REPO_TOKEN }}" ]; then if [ -n "${{ secrets.COVERALLS_REPO_TOKEN }}" ]; then
if [ "${{github.event.pull_request.head.ref}}" = "main" ]; then
curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash
cargo binstall --no-confirm cargo-tarpaulin --force cargo binstall --no-confirm cargo-tarpaulin --force
cargo tarpaulin --all-features --avoid-cfg-tarpaulin --tests --verbose --skip-clean --coveralls ${{ secrets.COVERALLS_REPO_TOKEN }} --timeout 120 cargo tarpaulin --all-features --avoid-cfg-tarpaulin --tests --verbose --skip-clean --coveralls ${{ secrets.COVERALLS_REPO_TOKEN }} --timeout 120
else else
echo "Code Coverage step is skipped on non-main PRs and PRs from forks." echo "Code Coverage step is skipped on forks!"
cargo nextest run --verbose --all-features cargo build --verbose --all-features
cargo test --verbose --all-features
fi fi
else
echo "Code Coverage step is skipped on non-main PRs and PRs from forks."
cargo nextest run --verbose --all-features
fi
linux-non-default-features:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- name: Check common non-default feature configurations - name: Check common non-default feature configurations
run: | run: |
echo "No features:" echo "No features:"
@ -74,6 +66,34 @@ jobs:
cargo check --features="backend, voice_gateway" --no-default-features cargo check --features="backend, voice_gateway" --no-default-features
echo "Client + voice gateway:" echo "Client + voice gateway:"
cargo check --features="client, voice_gateway" --no-default-features cargo check --features="client, voice_gateway" --no-default-features
# wasm-safari:
# runs-on: macos-latest
# steps:
# - uses: actions/checkout@v4
# - name: Clone spacebar server
# run: |
# git clone https://github.com/bitfl0wer/server.git
# - uses: actions/setup-node@v4
# with:
# node-version: 18
# cache: 'npm'
# cache-dependency-path: server/package-lock.json
# - name: Prepare and start Spacebar server
# run: |
# npm install
# npm run setup
# npm run start &
# working-directory: ./server
# - uses: Swatinem/rust-cache@v2
# with:
# cache-all-crates: "true"
# prefix-key: "macos-safari"
# - name: Run WASM tests with Safari, Firefox, Chrome
# run: |
# rustup target add wasm32-unknown-unknown
# curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash
# cargo binstall --no-confirm wasm-bindgen-cli --version "0.2.88" --force
# SAFARIDRIVER=$(which safaridriver) cargo test --target wasm32-unknown-unknown --no-default-features --features="client, rt" --no-fail-fast
wasm-gecko: wasm-gecko:
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 30 timeout-minutes: 30
@ -85,7 +105,7 @@ jobs:
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: 18 node-version: 18
cache: "npm" cache: 'npm'
cache-dependency-path: server/package-lock.json cache-dependency-path: server/package-lock.json
- name: Prepare and start Spacebar server - name: Prepare and start Spacebar server
run: | run: |
@ -114,7 +134,7 @@ jobs:
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: 18 node-version: 18
cache: "npm" cache: 'npm'
cache-dependency-path: server/package-lock.json cache-dependency-path: server/package-lock.json
- name: Prepare and start Spacebar server - name: Prepare and start Spacebar server
run: | run: |

View File

@ -3,8 +3,6 @@
**Please refer to the [contribution guidelines](https://github.com/polyphony-chat/.github/blob/main/CONTRIBUTION_GUIDELINES.md) and [our Code of Conduct](https://github.com/polyphony-chat/.github/blob/main/CODE_OF_CONDUCT.md) before making a contribution.** **Please refer to the [contribution guidelines](https://github.com/polyphony-chat/.github/blob/main/CONTRIBUTION_GUIDELINES.md) and [our Code of Conduct](https://github.com/polyphony-chat/.github/blob/main/CODE_OF_CONDUCT.md) before making a contribution.**
Contributions should always fork from and merge back into the `dev` branch.
Chorus is currently missing voice support and a lot of API endpoints, many of which should be trivial to implement, Chorus is currently missing voice support and a lot of API endpoints, many of which should be trivial to implement,
ever since [we streamlined the process of doing so](https://github.com/polyphony-chat/chorus/discussions/401). ever since [we streamlined the process of doing so](https://github.com/polyphony-chat/chorus/discussions/401).

View File

@ -6,7 +6,7 @@ use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Copy, PartialOrd, Ord, Hash)] #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Copy, PartialOrd, Ord, Hash)]
pub struct GlobalRateLimit { pub struct GlobalRateLimit {
pub limit: u64, pub limit: u16,
pub window: u64, pub window: u64,
pub enabled: bool, pub enabled: bool,
} }

View File

@ -240,18 +240,13 @@ impl PartialEq for GuildInvite {
} }
} }
#[derive( #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq, Hash, Eq, PartialOrd, Ord, Copy)]
Serialize, Deserialize, Debug, Default, Clone, PartialEq, Hash, Eq, PartialOrd, Ord, Copy,
)]
pub struct UnavailableGuild { pub struct UnavailableGuild {
pub id: Snowflake, pub id: Snowflake,
pub unavailable: Option<bool>, pub unavailable: bool,
pub geo_restricted: Option<bool>,
} }
#[derive( #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Copy)]
Serialize, Deserialize, Debug, Default, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Copy,
)]
pub struct GuildCreateResponse { pub struct GuildCreateResponse {
pub id: Snowflake, pub id: Snowflake,
} }

View File

@ -70,6 +70,15 @@ async fn guild_create_ban() {
) )
.await .await
.unwrap(); .unwrap();
assert!(Guild::create_ban(
guild.id,
other_user_id,
None,
GuildBanCreateSchema::default(),
&mut bundle.user,
)
.await
.is_err());
common::teardown(bundle).await common::teardown(bundle).await
} }