Commit Graph

939 Commits

Author SHA1 Message Date
bitfl0wer e629334f3f Add FIXME comments for wasm compatibility 2023-11-21 17:10:19 +01:00
bitfl0wer 5bd4b627c5 Revert "Spawn local gateway task on wasm32"
This reverts commit 3c419e8310.
2023-11-20 15:14:34 +01:00
bitfl0wer 509733bfb8 Revert "Refactor heartbeat task to support WebAssembly"
This reverts commit 8c2364b8d0.
2023-11-20 15:14:28 +01:00
bitfl0wer 8c2364b8d0 Refactor heartbeat task to support WebAssembly 2023-11-20 14:57:45 +01:00
bitfl0wer 3c419e8310 Spawn local gateway task on wasm32 2023-11-20 14:47:13 +01:00
bitfl0wer 7956a0e3cb Fix build on wasm32 2023-11-20 00:07:16 +01:00
bitfl0wer 1203e20358 Implement wasm Backend 2023-11-19 22:23:24 +01:00
bitfl0wer 8f0d8813eb Better feature locking, add wasm.rs 2023-11-19 22:04:18 +01:00
bitfl0wer 73342d5dd7 reorganize files 2023-11-19 21:21:34 +01:00
bitfl0wer 6fd6bdcbbc Give tungstenite types distinct names 2023-11-19 21:15:10 +01:00
bitfl0wer b3e7876ccf feature lock backend_tungstenite 2023-11-19 19:18:25 +01:00
bitfl0wer a4d5ebb689 Resolve merge conflicts 2023-11-19 19:12:29 +01:00
bitfl0wer 79e70c43a2 Merge branch 'websockets-backend' into feature/wasm32-unknown 2023-11-19 18:35:35 +01:00
bitfl0wer 0e16e55d64 Fix references to heartbeat_thread_communicator 2023-11-19 18:27:49 +01:00
Vincent Junge 5bd8f32a6a remove superfluous return 2023-11-19 17:47:48 +01:00
Vincent Junge c0ce540da6 for got unwrap :3 2023-11-19 17:18:08 +01:00
Vincent Junge dd9945068f removed leftover type aliases 2023-11-19 17:15:00 +01:00
Vincent Junge 0f446f43b4 removed outdated comment 2023-11-19 17:13:52 +01:00
Vincent Junge 4f207d55d9 prepare for platform-dependant websockets backend 2023-11-19 17:08:53 +01:00
bitfl0wer 19f8403bcf Make HBHandler<T,S> struct instead of trait
Make HeartbeatHandler a generic struct instead of a struct with a trait.
Reduces redundant code
2023-11-19 17:07:08 +01:00
bitfl0wer 70812c529a Move Heartbeathandler code together 2023-11-19 16:44:38 +01:00
bitfl0wer f4ae80fee9 temp: impl heartbeathandlercapable 2023-11-19 16:43:21 +01:00
bitfl0wer b3ebdd69fc Add TODO comment 2023-11-19 16:42:48 +01:00
bitfl0wer 50cd93aae1 Add kill send to WasmGateway 2023-11-19 16:42:05 +01:00
bitfl0wer 926a9fc90e TEMP: Compile wasm dependencies&code per default
TODO: Check todos before merging into dev
2023-11-19 12:52:11 +01:00
bitfl0wer 9f45094bd9 Add todos 2023-11-19 12:51:13 +01:00
bitfl0wer 565a0cd745 Impl spawn() for wasm gateway 2023-11-19 12:51:07 +01:00
bitfl0wer 9ae07a15d7 start implementing wasm gateway 2023-11-19 01:31:04 +01:00
bitfl0wer 5aeba447af Remove trait bound: From tungstenite::Message 2023-11-18 21:42:48 +01:00
bitfl0wer a0d14ceaf9 Add MessageCapable trait implementation for
WsMessage
2023-11-18 20:02:50 +01:00
bitfl0wer 6ae715988d Refactor WasmGateway struct and import statements 2023-11-18 20:02:45 +01:00
bitfl0wer 39e61a73e9 Remove is_error method from MessageCapable trait 2023-11-18 20:02:39 +01:00
bitfl0wer f1e3058346 Update Gateway types based on target architecture
and feature
2023-11-18 20:02:34 +01:00
bitfl0wer 287b72c99c Implement MessageCapable trait methods in gateway
default module
2023-11-18 20:02:28 +01:00
bitfl0wer 29efae385e Apparently, the conditional dependency now works again. lol 2023-11-18 19:18:55 +01:00
bitfl0wer 862a846055 Rename `get_handle` to `spawn` 2023-11-18 19:07:56 +01:00
bitfl0wer 964d879e8f Remove unused code 2023-11-18 18:50:47 +01:00
bitfl0wer 16bdd68d98 Fixed most errors, simplified new generic traits 2023-11-18 18:39:01 +01:00
bitfl0wer ce7ff49ee4 checkpoint 2023-11-18 18:08:12 +01:00
bitfl0wer 3d3c61240c pub use 2023-11-18 12:27:50 +01:00
bitfl0wer db80abbf43 Make heartbeathandler shared struct 2023-11-16 20:02:01 +01:00
bitfl0wer cefaa6545f Remove duplicate code 2023-11-16 19:25:55 +01:00
bitfl0wer 339a8f5b7c Revert "Add Adapter GatewayMessageData"
This reverts commit f355837125.
2023-11-16 19:07:14 +01:00
bitfl0wer e38445b644 Revert "Make GatewayMessage use new Adapter Type"
This reverts commit b0b90f094e.
2023-11-16 19:05:36 +01:00
bitfl0wer b0b90f094e Make GatewayMessage use new Adapter Type 2023-11-16 18:30:09 +01:00
bitfl0wer f355837125 Add Adapter GatewayMessageData
Fits onto tokio_tungstenite Messages and ws_stream_wasm::WsMessage
2023-11-16 18:20:45 +01:00
bitfl0wer 6106ac41ae Add import 2023-11-16 18:20:11 +01:00
bitfl0wer f8795adc35 Make message.rs shared
Make HeartbeatThreadCommunication shared

Move shared code to mod.rs

Export new shared code

Remove useless export
2023-11-16 17:50:04 +01:00
bitfl0wer 1fdb01e846 Move events to shared location 2023-11-16 16:24:25 +01:00
bitfl0wer 739f2c8b71 Create wasm gateway module 2023-11-16 16:24:02 +01:00
bitfl0wer e9bf3b32a0 Move heartbeat to shared location 2023-11-16 16:23:44 +01:00
bitfl0wer 14fa9a929c Add wasm gateway submodule 2023-11-15 22:32:31 +01:00
bitfl0wer d328dcf314 Conditionally compile wasm/default 2023-11-15 22:32:13 +01:00
bitfl0wer b84d4519b7 Change typedef to only compile with feature client 2023-11-15 22:31:44 +01:00
bitfl0wer 5ae0521e8e re-organize files 2023-11-15 22:26:15 +01:00
bitfl0wer 10eafe46cc Feature lock DefaultGateway+Handle for non-wasm32 2023-11-15 21:09:24 +01:00
bitfl0wer b93b3690da Refactor project to use chorus::Gateway[...] 2023-11-15 21:03:53 +01:00
bitfl0wer 5bbf1cef1f Add prefix "Default" To Gateway, -Handler and HeartbeatHandler 2023-11-15 20:58:10 +01:00
bitfl0wer e4cc201b79 Remove all imports of Gateway and GatewayHandle 2023-11-15 20:57:06 +01:00
bitfl0wer 9ac36ab8e8 Fix clippy warning 2023-11-15 20:26:47 +01:00
bitfl0wer 20c9066e6f Properly extract all extractable methods from GatewayHandle into Trait 2023-11-15 20:18:50 +01:00
bitfl0wer 5af6d1ce4b Refactor Gateway module to implement traits and
improve code structure
2023-11-15 18:44:19 +01:00
bitfl0wer 06d25d3e50 Impl base of GatewayCapable for Gateway 2023-11-15 00:04:04 +01:00
bitfl0wer 1128502b80 start converting struct impl into trait impl 2023-11-14 21:14:05 +01:00
bitfl0wer ee0169c648 Add missing, least required methods to traitdef 2023-11-14 20:46:46 +01:00
bitfl0wer 2cb35f2f14 Start impl of Gateway Traits 2023-11-14 20:05:47 +01:00
bitfl0wer 03d3c0b112 Use GatewayStore instead of complex typedef 2023-11-14 20:05:21 +01:00
bitfl0wer 199bf91daf Factor out GatewayStore into own type 2023-11-14 20:04:23 +01:00
bitfl0wer 99eb869878 Remove unneeded import 2023-11-14 19:00:43 +01:00
bitfl0wer a67c54168b Merge branch 'dev' into feature/wasm32-unknown 2023-11-14 19:00:20 +01:00
bitfl0wer b4193e2c2e Make id Optional, custom impl Updateable 2023-11-14 17:31:07 +01:00
kozabrada123 2bff2cb8cf fix: Voice State session id is a string, not a snowflake 2023-11-14 17:08:46 +01:00
bitfl0wer 2ee421d57e Generate snowflake if not exists 2023-11-14 16:55:23 +01:00
bitfl0wer 572a586505 I fucked up the merge and merged gateway wrongly 2023-11-14 16:42:01 +01:00
bitfl0wer bdfc261c93 Merge branch 'main' into feature/wasm32-unknown 2023-11-14 16:30:24 +01:00
bitfl0wer 32b163a4c7 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
bitfl0wer 5243eee256 Remove redundant `NSFWLevel` structdef 2023-11-14 11:13:21 +01:00
bitfl0wer 81447c9dda Split up gateway.rs into several files 2023-11-14 11:13:02 +01:00
bitfl0wer ec8d1c1f90 Replace tokio::time with safina-timer 2023-11-13 19:20:38 +01:00
bitfl0wer aa657d12fc Ensure rt and rt_multi_thread aren't both enabled 2023-11-13 15:26:46 +01:00
bitfl0wer 7f3bb944b7 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 2f559b1397 Remove openssl, use rustls and rand instead 2023-11-12 17:20:32 +01:00
Quaternion 904d54edbe Feature lock UpdateMessage implementations 2023-09-22 20:45:19 -04:00
Quaternion c492875838 Make new enums derive sqlx::Type 2023-09-22 20:44:56 -04:00
Quaternion 8d8b7c0b12 Update GuildDefaults to use new enums 2023-09-22 20:44:25 -04:00
bitfl0wer c4b0891ec8 Make events module pub 2023-09-06 01:32:38 +02:00
bitfl0wer 33b99534ca Make WebsocketEvent send, Sznc, Debug 2023-09-05 22:29:04 +02:00
bitfl0wer 3e86460271 Implement UpdateMessage for GuildCreate 2023-09-05 14:41:02 +02:00
bitfl0wer c037c7907b Implement UpdateMessage for GuildDelete 2023-09-05 13:35:01 +02:00
bitfl0wer 59ab862b17 Simplify this loop 2023-09-05 13:34:22 +02:00
bitfl0wer 242021a50a Make the fields on this type public 2023-09-05 13:33:50 +02:00
bitfl0wer 7938f0295e Add source url field trait 2023-09-03 21:00:48 +02:00
bitfl0wer 78b21e9df3 Derive Default for Instance 2023-09-03 19:59:03 +02:00
bitfl0wer e6300b3e30 Impl PartialEq, Eq for Guild 2023-09-03 18:29:33 +02:00
bitfl0wer 1340a11a65 impl Hash for Guild 2023-09-03 17:09:44 +02:00
bitfl0wer b7ae75f7ce Add semicolon 2023-09-03 16:55:34 +02:00
bitfl0wer db533f9700 Make Errors Hash and Eq, bump version 2023-09-03 16:55:19 +02:00
kozabrada123 bc5e64b79d Add option to login with only a token (#427)
* Add login with token
2023-09-01 17:17:49 +02:00
bitfl0wer e17fcd9e0f Make login only take owned values 2023-09-01 13:01:50 +02:00
bitfl0wer a8bcb58493 Make auth functions take owned values, similar to the rest of the API 2023-09-01 12:12:07 +02:00
bitfl0wer 6e136fba83 Make ChorusError Clone 2023-09-01 01:17:23 +02:00
bitfl0wer 42f2f7bfbe Add Default to LoginSchema 2023-09-01 00:50:19 +02:00
bitfl0wer 9b0567ac9e Remove borrow 2023-09-01 00:50:07 +02:00
bitfl0wer fe8baeb699 Make UrlBundle `Hash` 2023-08-30 19:13:46 +02:00
kozabrada123 0dfd622661 Fix failing build w/o client and move ratelimits (#426)
* Fix failing build without client feature

* Feature lock Updateable and Composite
2023-08-30 15:26:19 +02:00
kozabrada123 141dc32819 Error observer (also merge perpetual/gateway-dev) (#425)
* Add Webrtc Identify & Ready

* Test error observer

* Minor updates

* More derives

* Even more derives

* Small types update

* e
2023-08-29 16:38:26 +00:00
kozabrada123 3d8d6b6f3b Make GatewayHandle Clone 2023-08-29 14:24:32 +02:00
bitfl0wer 00faab4801 Change gateway to Arc::new(gateway) 2023-08-29 00:05:36 +02:00
bitfl0wer 17fe4f004f Make ChorusUser `Clone` 2023-08-29 00:05:16 +02:00
bitfl0wer 4bbb22eb31 Replace `belongs_to: Rc<RefCell<Instance>>` with `Arc<RwLock<Instance>>` to make `ChorusUser` `Send` 2023-08-28 18:12:17 +02:00
bitfl0wer a8bea5d881 Clippy rules, docs logo 2023-08-28 12:27:38 +02:00
bitfl0wer 02212f95e3 Add Debug derives to all structs 2023-08-28 12:27:21 +02:00
bitfl0wer 2f9936cfd2 Add rustdoc comments 2023-08-26 19:41:00 +02:00
bitfl0wer ea66edc68d Fix guild ban test failing 2023-08-26 17:45:27 +02:00
bitfl0wer aee50036a0 Add delete_role + test 2023-08-26 16:54:24 +02:00
bitfl0wer 116f1312e7 Disambiguate function name 2023-08-26 16:22:18 +02:00
bitfl0wer f120bcd386 Update GuildBan object 2023-08-26 16:21:47 +02:00
bitfl0wer 1709e85a4b Add delete_guild_ban 2023-08-25 17:28:02 +02:00
bitfl0wer 07ebaf6119 Add Get Guild Ban/s, add audit_log_reason to create_ban 2023-08-25 17:26:01 +02:00
bitfl0wer cd70a5b388 Add modify guild member profile route 2023-08-25 17:11:00 +02:00
bitfl0wer cce5b507bc Add modify_current_member route 2023-08-25 16:54:41 +02:00
bitfl0wer 7b55590fd0 Add modify_member route 2023-08-25 16:47:28 +02:00
bitfl0wer 516a1467fa Add some more routes 2023-08-25 01:35:57 +02:00
bitfl0wer 0d93ad8578 Remove unneeded function 2023-08-25 01:35:49 +02:00
bitfl0wer 2b69aba2ca Merge branch 'main' into guild-routes 2023-08-25 01:11:28 +02:00
bitfl0wer d73c1963fc Start refactoring ChorusRequest to ChorusRequest::new() 2023-08-25 00:02:26 +02:00
bitfl0wer e9318ea4dc start adding auditlogreason to routes that take it 2023-08-24 22:30:13 +02:00
bitfl0wer 87d325e38f Create ChorusRequest-builder function 2023-08-24 22:29:26 +02:00
bitfl0wer eb163d278a Change UserMeta to ChorusUser 2023-08-24 21:46:02 +02:00
bitfl0wer facb91fc20 Merge branch 'main' into guild-routes 2023-08-24 21:41:22 +02:00
bitfl0wer 64ba6a657a Change `UserMeta` to `ChorusUser` 2023-08-24 21:09:23 +02:00
bitfl0wer fb7e33c0ec Change `UserMeta` to `ChorusUser` 2023-08-24 21:06:28 +02:00
bitfl0wer 5ed2f0f2c3 add get guild preview route 2023-08-24 21:05:39 +02:00
bitfl0wer 9db9d2a512 Add get user guilds endpoint 2023-08-23 00:08:43 +02:00
bitfl0wer 0c62bf9836 Fix clippy lint 2023-08-22 22:40:36 +02:00
bitfl0wer 9e3bf947c1 Add acknowledge_pinned endpoint 2023-08-22 22:34:37 +02:00
bitfl0wer a23363e0a3 add delete and bulk_delete endpoints 2023-08-22 22:32:48 +02:00
bitfl0wer a8f37ea201 Add Modify Message endpoint 2023-08-22 22:27:09 +02:00
bitfl0wer f85cde71b4 Add Hide from guild feed endpoint 2023-08-22 22:16:07 +02:00
bitfl0wer 852d784bd5 Add crosspost endpoint 2023-08-22 22:10:12 +02:00
bitfl0wer 54c5cc6cc2 Add message acknowledge endpoint 2023-08-22 22:06:19 +02:00
bitfl0wer d751c92778 Create Greet Message 2023-08-22 21:55:24 +02:00
bitfl0wer fd3a3ee836 Add message: get 2023-08-22 21:27:31 +02:00
bitfl0wer 7b5426519d Closes #269, #268, #270 2023-08-22 20:09:44 +02:00
bitfl0wer 36a0730d0b Correctify search_message
Fixes Search Messages #258
2023-08-22 19:23:27 +02:00
bitfl0wer 6e40568b23 Move search_messages to Channel impl 2023-08-22 17:56:13 +02:00
bitfl0wer d913b2d97f Implement Default for MessageSearchQuery 2023-08-22 17:55:53 +02:00
bitfl0wer 9ac5925bf9 Make channel_type in ChannelCreateSchema of type enum "ChannelType" 2023-08-22 17:55:29 +02:00
bitfl0wer 500ab0e3d0 Add some missing derives 2023-08-22 14:01:17 +02:00
bitfl0wer 1984f8c5da Add MessageSearchEndpoint Enum and MessageSearchQuery schema struct 2023-08-22 14:01:03 +02:00