Commit Graph

1349 Commits

Author SHA1 Message Date
Flori 5676098f63
Split up gateway, fix a few clippy warnings (#436)
As the title suggests, `Gateway` has been split up into several files,
due to it being several hundred locs in length and, in my opinion,
becoming difficult/frustrating to navigate.

I have also fixed 2 clippy warnings: I have refactored an `if
x.is_some()... { x.unwrap() }` into the more idiomatic `if let Some(y) =
x ...`, and I have removed the duplicate definition of `NSFWLevel` in
`types/invite`.
2023-11-14 16:00:02 +01:00
bitfl0wer 1e0ed31588
Move HEARTBEAT_ACK_TIMEOUT
Delete events.rs

Unify import

Move HEARTBEAT_ACK_TIMEOUT since its not an OPCODE
2023-11-14 15:46:23 +01:00
Flori f7c67f3d77
Bump rustix from 0.38.11 to 0.38.22 (#438)
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.38.11
to 0.38.22.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="58238c794c"><code>58238c7</code></a>
chore: Release rustix version 0.38.22</li>
<li><a
href="ee297a1541"><code>ee297a1</code></a>
Miscellaneous clippy fixes. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/928">#928</a>)</li>
<li><a
href="b28c5a8308"><code>b28c5a8</code></a>
Miscellaneous documentation cleanups. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/929">#929</a>)</li>
<li><a
href="cc82ed28cc"><code>cc82ed2</code></a>
Fix ioctl numbers on BSDs (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/926">#926</a>)</li>
<li><a
href="90b2fbd818"><code>90b2fbd</code></a>
Add ioctl <code>Updater</code> type (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/925">#925</a>)</li>
<li><a
href="e1d66b5822"><code>e1d66b5</code></a>
Make <code>runtime::fork</code> return the PID in both the parent and
child. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/924">#924</a>)</li>
<li><a
href="31dfad159d"><code>31dfad1</code></a>
Fixes for empty and multiple-entry control message buffers. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/915">#915</a>)</li>
<li><a
href="1edcdfe02a"><code>1edcdfe</code></a>
Add a <code>readlinkat_raw</code> function. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/923">#923</a>)</li>
<li><a
href="15278a1279"><code>15278a1</code></a>
Implement <code>rustix::process::sched_getcpu</code>. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/921">#921</a>)</li>
<li><a
href="560b2e818a"><code>560b2e8</code></a>
Remove redundant checks for <code>linux_kernel</code> in the linux_raw
backend. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/922">#922</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/bytecodealliance/rustix/compare/v0.38.11...v0.38.22">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustix&package-manager=cargo&previous-version=0.38.11&new-version=0.38.22)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/polyphony-chat/chorus/network/alerts).

</details>
2023-11-14 12:46:16 +01:00
Flori 36d20835ad
Bump tungstenite from 0.20.0 to 0.20.1 (#437)
Bumps [tungstenite](https://github.com/snapview/tungstenite-rs) from
0.20.0 to 0.20.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/snapview/tungstenite-rs/blob/master/CHANGELOG.md">tungstenite's
changelog</a>.</em></p>
<blockquote>
<h1>0.20.1</h1>
<ul>
<li>Fixes <a
href="https://redirect.github.com/snapview/tungstenite-rs/pull/379">CVE-2023-43669</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="219075edaa"><code>219075e</code></a>
Merge pull request <a
href="https://redirect.github.com/snapview/tungstenite-rs/issues/379">#379</a>
from snapview/CVE-2023-43669</li>
<li><a
href="f0f1a06a50"><code>f0f1a06</code></a>
Bump crate version</li>
<li><a
href="2e5029284b"><code>2e50292</code></a>
Add checking for header sanity</li>
<li><a
href="f916b332a9"><code>f916b33</code></a>
Add <code>AttackAttempt</code> error variant</li>
<li><a
href="53914c1180"><code>53914c1</code></a>
Include examples so that <code>cargo publish</code> works</li>
<li><a
href="5323559891"><code>5323559</code></a>
Bump version</li>
<li>See full diff in <a
href="https://github.com/snapview/tungstenite-rs/compare/v0.20.0...v0.20.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tungstenite&package-manager=cargo&previous-version=0.20.0&new-version=0.20.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/polyphony-chat/chorus/network/alerts).

</details>
2023-11-14 12:41:29 +01:00
dependabot[bot] 1e85df282f
Bump rustix from 0.38.11 to 0.38.22
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.38.11 to 0.38.22.
- [Release notes](https://github.com/bytecodealliance/rustix/releases)
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.11...v0.38.22)

---
updated-dependencies:
- dependency-name: rustix
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-14 11:35:55 +00:00
Flori ff504b454c
Manually bump tungstenite to 0.20.1 in cargo.toml 2023-11-14 12:33:12 +01:00
dependabot[bot] f0005f51db
Bump tungstenite from 0.20.0 to 0.20.1
Bumps [tungstenite](https://github.com/snapview/tungstenite-rs) from 0.20.0 to 0.20.1.
- [Changelog](https://github.com/snapview/tungstenite-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/snapview/tungstenite-rs/compare/v0.20.0...v0.20.1)

---
updated-dependencies:
- dependency-name: tungstenite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-14 10:22:09 +00:00
bitfl0wer e852e6d1b1
Remove redundant `NSFWLevel` structdef 2023-11-14 11:13:21 +01:00
bitfl0wer c2949f8d14
Split up gateway.rs into several files 2023-11-14 11:13:02 +01:00
Flori 5fc97958a1
Enhancement/readme (#435) 2023-11-13 22:21:36 +01:00
bitfl0wer 68d18bb922
Refactor Chorus library documentation and examples 2023-11-13 22:20:57 +01:00
bitfl0wer 5e780bea1c
Add login, instance examples 2023-11-13 22:20:50 +01:00
bitfl0wer 1450546429
Replace tokio::time with safina-timer 2023-11-13 19:20:38 +01:00
bitfl0wer cafd645dd3
Use patched reqwest with multipart-headers support 2023-11-13 17:34:16 +01:00
bitfl0wer 3124c452d8
Include `rand` crate in all targets 2023-11-13 15:38:20 +01:00
bitfl0wer 5fff060f4b
remove sqlx from wasm-exclusion, add futures-timer 2023-11-13 15:29:37 +01:00
bitfl0wer ba3acd8d08
Ensure rt and rt_multi_thread aren't both enabled 2023-11-13 15:26:46 +01:00
bitfl0wer 7f48eedb2c
make SentryConfiguration wasm-compatible
- Moved `hostname` lib behind conditional compiling
- provided alternative implementation of hostname::get for wasm-targets
2023-11-13 15:18:22 +01:00
bitfl0wer 6ad5a5851f
compile-lock most wasm32 incompatibilities 2023-11-13 13:55:55 +01:00
bitfl0wer 15b5eab08c
Format changes 2023-11-13 12:57:17 +01:00
bitfl0wer b0b9729662
+ ws_stream_wasm, - dev-dependency on tokio/full 2023-11-13 12:43:00 +01:00
bitfl0wer cc252ddefc
HOTFIX: remove openssl, like it was intended 2023-11-12 18:04:47 +01:00
bitfl0wer c67ce5cc2d
Remove openssl-dependency fully 2023-11-12 18:04:15 +01:00
Flori 9b556e8162
OpenSSL -> rustls, actions version bumps (#433) 2023-11-12 17:43:51 +01:00
bitfl0wer 88958b1a2b
Bump version for chorus 2023-11-12 17:41:59 +01:00
Flori 30ea56ef63
bump actions version (#432)
- bump checkout to @v4
- bump rust-toolchain to @v1
2023-11-12 17:39:55 +01:00
bitfl0wer bf0931c4a0
include "dev" branch in actions executions 2023-11-12 17:32:57 +01:00
Flori 1c3a125785
Remove openssl, use rustls and rand instead (#431)
This PR removes the dependency on `openssl`, which is not compatible
with the `wasm32-unknown-unknown` target, completely. It is replaced by
`rustls` for TLS/SSL and `rand` for cryptographically safe pseudo-RNG.
2023-11-12 17:31:31 +01:00
bitfl0wer 32f052f107
bump actions version
- bump checkout to @v4
- bump rust-toolchain to @v1
2023-11-12 17:30:49 +01:00
bitfl0wer 57a83bdd88
Remove openssl, use rustls and rand instead 2023-11-12 17:20:32 +01:00
kozabrada123 9460219d14 feat: packet parsing! 2023-11-12 14:59:28 +01:00
kozabrada123 b973ecb447 feat: return ip discovery data + minor update 2023-11-12 13:33:29 +01:00
kozabrada123 8278cc2162 feat: kinda janky ip discovery impl 2023-11-12 12:54:32 +01:00
kozabrada123 fb42b6b713 fix: deserialization error in speaking bitflags 2023-11-12 10:53:23 +01:00
kozabrada123 b0ae700775 Restructure voice to new module 2023-11-12 10:52:42 +01:00
kozabrada123 ef1d314291 Create seperate voice_gateway.rs and voice_udp.rs 2023-11-12 10:50:07 +01:00
kozabrada123 fad04da125 Update to v7 2023-10-15 11:51:59 +02:00
kozabrada123 feb8d4610c Clarify FIXME related to #430 2023-10-15 09:47:36 +02:00
kozabrada123 fa3c3b76ae Update voice identify 2023-10-15 09:47:08 +02:00
kozabrada123 cf70147500 Fix error failing to 'deserialize' properly 2023-10-14 18:13:09 +02:00
kozabrada123 e5c4cc3df9 Voice gateway updates 2023-10-14 11:51:31 +02:00
kozabrada123 5608d96a5f Fix bad request in voice gateway init 2023-10-14 11:03:50 +02:00
kozabrada123 8ab75e313a ?? 2023-10-14 10:49:51 +02:00
kozabrada123 7b8bcffafa Event updates via the scientific method 2023-10-14 10:43:02 +02:00
kozabrada123 cdcc6a5270 Make voice event fields pub 2023-10-14 10:29:05 +02:00
kozabrada123 1639d4e00f Add default impl for voicegatewayerror 2023-10-14 10:25:28 +02:00
kozabrada123 e4f0a3840a Modernise voice gateway 2023-10-14 09:58:26 +02:00
kozabrada123 68b6ff4ca7 Minor doc fixes 2023-10-14 08:53:31 +02:00
kozabrada123 c732a97da6 275 commits behind ono 2023-10-14 08:41:26 +02:00
kozabrada123 818e4342cf Rebase 2023-10-14 08:19:35 +02:00