Commit Graph

1157 Commits

Author SHA1 Message Date
bitfl0wer e0c7af0d45
Generate snowflake if not exists 2023-11-14 16:55:23 +01:00
bitfl0wer 0c0252acd2
I fucked up the merge and merged gateway wrongly 2023-11-14 16:42:01 +01:00
bitfl0wer 3f66006a45
Merge branch 'main' into feature/wasm32-unknown 2023-11-14 16:30:24 +01:00
bitfl0wer 4106758e0e
bump version 2023-11-14 16:11:00 +01:00
bitfl0wer 7377187f6f
bump version 2023-11-14 16:10:37 +01:00
Flori a2306eb7ed
Several small patches (#439)
- Bump versions of 2 packages to mitigate security vulnerabilities
- Remove redundant structdef
- Split up gateway.rs into multiple files for better clarity
2023-11-14 16:09:25 +01:00
Flori bd8bf80fde
Bump version 2023-11-14 16:02:51 +01:00
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
Flori 6daed47f12
Merge Dev changes into main (#428)
The changes in this branch include a ton of QoL improvements I have
discovered while working on the Client, using Chorus.
2023-09-10 11:46:14 +02:00
bitfl0wer cb82604254
Make events module pub 2023-09-06 01:32:38 +02:00
bitfl0wer 7385dc4be0
Make WebsocketEvent send, Sznc, Debug 2023-09-05 22:29:04 +02:00
bitfl0wer f5569973f7
Implement UpdateMessage for GuildCreate 2023-09-05 14:41:02 +02:00
bitfl0wer b3bbff5c36
Implement UpdateMessage for GuildDelete 2023-09-05 13:35:01 +02:00
bitfl0wer 43f1aa1add
Simplify this loop 2023-09-05 13:34:22 +02:00
bitfl0wer 995ba583df
Make the fields on this type public 2023-09-05 13:33:50 +02:00
bitfl0wer a8496548d9
Add source url field trait 2023-09-03 21:00:48 +02:00
bitfl0wer d09fc75f54
Merge branch 'main' into dev 2023-09-03 20:23:03 +02:00
Flori 949e7e9500
Update build_and_test.yml 2023-09-03 20:00:45 +02:00
Flori 9efc7accb6
Update rust-clippy.yml 2023-09-03 20:00:23 +02:00
bitfl0wer 09df7a8c7b
Derive Default for Instance 2023-09-03 19:59:03 +02:00
bitfl0wer d0b4c691ba
Impl PartialEq, Eq for Guild 2023-09-03 18:29:33 +02:00