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
bitfl0wer
a13f766758
Add search() and search_messages()
2023-08-22 14:00:39 +02:00
bitfl0wer
cfbcb29a95
Modify Guild Channel Positions
...
Fixes #229
2023-08-22 01:11:22 +02:00
bitfl0wer
5f532eff01
Fix deserialize error
2023-08-20 23:24:30 +02:00
bitfl0wer
7eee08459b
Add Guild::modify();
2023-08-20 23:13:34 +02:00
bitfl0wer
24891b3fd5
Complete GuildModifySchema
2023-08-20 22:52:06 +02:00
bitfl0wer
09a83f1a1f
Add GuildModifySchema
2023-08-20 22:46:58 +02:00
bitfl0wer
dd04b760a4
Add Types
2023-08-20 22:46:44 +02:00
bitfl0wer
cb216c462d
Add create_ban
...
Closes "Create Guild Ban #299"
2023-08-20 18:49:10 +02:00
bitfl0wer
b53afe855d
Create GuildBanCreateSchema, clean up GuildCreateSchema
2023-08-20 18:48:07 +02:00
bitfl0wer
6cb28dda92
Start implementing some UpdateMessages
2023-08-19 01:13:07 +02:00
bitfl0wer
0b840372e2
Handle id().is_none() cases
2023-08-18 23:40:01 +02:00
bitfl0wer
d64004b308
Make id(&self) return Option<Snowflake>
2023-08-18 23:34:00 +02:00
bitfl0wer
82d2151f1b
Fix typo
2023-08-18 21:29:34 +02:00
bitfl0wer
e1615a4cd3
Remove prints
2023-08-18 20:20:58 +02:00
bitfl0wer
5f0a04c345
Add Arc<RwLock<T>>
2023-08-18 20:20:53 +02:00
bitfl0wer
cafa84d41e
Add Todo to every event which needs UpdateMessage
2023-08-18 20:20:25 +02:00
kozabrada123
ad58b550fb
Minor gateway updates ( #188 )
...
* Fix TYPING_START not existing
* Fix spacebar READY deserialization error
2023-08-18 14:27:39 +02:00
kozabrada123
905b7af618
Add content type specification
2023-08-18 11:41:06 +02:00
bitfl0wer
c2c1ad93b6
Change type of Channel::last_pin_timestamp
2023-08-17 22:45:42 +02:00
bitfl0wer
0396e318d3
Change bearer_auth to header("Authorization"
2023-08-17 22:26:07 +02:00
bitfl0wer
4424e3f07a
Remove comment
2023-08-17 18:26:34 +02:00
bitfl0wer
d69a459025
Remove prints
2023-08-17 18:26:14 +02:00
bitfl0wer
711580f270
Call watch_whole either way
2023-08-17 18:26:06 +02:00
bitfl0wer
4210bd6d73
Remove debug prints
2023-08-16 22:04:43 +02:00
bitfl0wer
a1df997c9f
I think i found out why shit no work
2023-08-16 22:04:36 +02:00
bitfl0wer
29b9050e6d
Make store pub(crate), other adjustments
2023-08-16 22:04:07 +02:00
bitfl0wer
887ba4a1b1
Make trait Debug
2023-08-16 21:26:27 +02:00
bitfl0wer
fbf72b74d0
Remove tokio watch channels
2023-08-16 21:26:19 +02:00
bitfl0wer
116c829f28
Rename update to modify
2023-08-16 14:05:51 +02:00
bitfl0wer
9ce75482d1
Make Role Clone
2023-08-16 14:05:44 +02:00
bitfl0wer
2af8388947
Add GuildRoleCreate and -Update
2023-08-16 14:05:37 +02:00
bitfl0wer
5f0f19e8ce
Rename functions, add observe_and_into_inner
2023-08-16 01:11:26 +02:00
bitfl0wer
a9381fec1e
Revert "Give `GatewayHandle` and `Gateway` common trait to call `watch_whole()` or observe() from a `Gateway`"
...
This reverts commit d36b1de170
.
2023-08-16 00:21:18 +02:00
bitfl0wer
d36b1de170
Give `GatewayHandle` and `Gateway` common trait to call `watch_whole()` or observe() from a `Gateway`
2023-08-16 00:18:32 +02:00
bitfl0wer
2b21933cb3
Add back set_json. No idea when it disappeared?
2023-08-15 22:19:47 +02:00
bitfl0wer
b1594cf1e1
Merge branch 'feature/update-message-all-events' into enhancement/improved-auto-updating-structs
2023-08-15 20:53:56 +02:00
bitfl0wer
ff77e5a61d
Add `Composite` derive to all entities which require it
2023-08-15 20:19:52 +02:00
bitfl0wer
bdeaa476e2
Add `Composite<T>` bound to automatically call `watch_whole()` on caller object.
2023-08-15 20:19:16 +02:00
bitfl0wer
32fd918a43
Remove `Send` bound
2023-08-15 20:18:11 +02:00
bitfl0wer
7de3204f59
Make trait pub
2023-08-15 17:54:36 +02:00
bitfl0wer
20baada605
Add Composite to some types
2023-08-15 17:38:53 +02:00
bitfl0wer
509ab578d6
Implement trait methods
2023-08-15 16:58:20 +02:00
bitfl0wer
37d976cd0d
Try out new macro
2023-08-15 16:58:06 +02:00
bitfl0wer
d66807ed20
Add observe_and_get method
2023-08-15 16:57:54 +02:00
bitfl0wer
b2a1122f4a
todo
2023-08-15 12:14:03 +02:00
bitfl0wer
f49fefb400
derive Updateable for Guild
2023-08-14 17:18:53 +02:00
bitfl0wer
2329cc2243
Add Composite trait
2023-08-14 17:18:44 +02:00
bitfl0wer
6dd9f84573
Remove unused import
2023-08-14 00:04:58 +02:00
bitfl0wer
02be1e786d
Remove stupid comment from me
2023-08-14 00:04:53 +02:00
bitfl0wer
45d68b4da4
Rename get to get_user
2023-08-14 00:02:30 +02:00
bitfl0wer
614c7bb2b2
Change UserMeta::get() to take self instead of Self
2023-08-14 00:02:03 +02:00
bitfl0wer
0f00d5d283
Change UpdateMessage<T> to write into RwLock
2023-08-13 16:46:57 +02:00
bitfl0wer
33357db291
Change observe() again, pass Arc<RwLock<T>> into message.update(), Add comment explaining closure
2023-08-13 16:46:21 +02:00
bitfl0wer
f9c3f55d95
Remove channel_id argument from modify. WHY WAS IT THERE TO BEGIN WITH LOL
2023-08-13 15:54:25 +02:00
bitfl0wer
73cc139e78
Moddify observe to still store T internally
2023-08-13 15:52:16 +02:00
fowb
63a4141bde
Add fixme comment
2023-08-12 22:40:07 +02:00
fowb
a0c9f6fb14
Change observe() to take Arc<RwLock<T>>
2023-08-12 19:47:11 +02:00
fowb
ff47965e99
Change Mutex<T> to RwLock<T>
2023-08-12 19:31:31 +02:00
kozabrada123
e0d7df417c
Fix trailing /s ( #180 )
2023-08-12 16:48:33 +02:00
kozabrada123
1801d22273
Minor snowflake updates ( #179 )
...
* Make snowflake fully public
* Simple into for snowflake
2023-08-07 20:34:58 +02:00
bitfl0wer
07818b2cd6
Fix unwrap panic on trying to access rate limits
2023-08-07 14:56:10 +02:00
kozabrada123
1cc29540d0
Minor improvements to message events ( #177 )
2023-08-07 14:15:23 +02:00
bitfl0wer
dad419c1de
update mutex to rwlock
2023-08-04 20:08:49 +02:00
bitfl0wer
a2561fd2e0
Change Arc<Mutex<T>> components to Arc<RwLock<T>>
2023-08-04 17:57:03 +02:00
bitfl0wer
55a2335664
Add note about Gateway: store
2023-08-04 16:54:56 +02:00
bitfl0wer
c8abec7686
Add note about GatewayHandle: `store`
2023-08-04 16:54:03 +02:00
bitfl0wer
8f57150a79
Make message mut
2023-08-04 16:46:22 +02:00
bitfl0wer
7b05d391b0
Add clone bound to T
2023-08-04 16:46:15 +02:00
bitfl0wer
cfb84f3da0
Fix channel.rs
2023-08-04 16:41:57 +02:00
bitfl0wer
b9b5e5e463
Add update_object
2023-08-04 16:41:51 +02:00
kozabrada123
47246cabad
Re-add derives to structs where possible
2023-08-04 15:33:46 +02:00
bitfl0wer
fb792f8356
Integrate component behaviour everywhere
2023-08-04 11:19:23 +02:00
bitfl0wer
94eac6eba9
Make components be Arc<Mutex<T>>
2023-08-02 23:08:53 +02:00
bitfl0wer
a36d691fea
Add PartialEq, Eq, Hash to Enums
2023-08-02 20:23:50 +02:00
bitfl0wer
9f69f57635
Start component-izing entities, remove PartialEq wherever needed (because PartialEq isn't implemented for Mutex)
2023-08-02 20:18:16 +02:00
kozabrada123
c0bc2ee9e2
Fix missing references to the best of my ability
2023-07-31 10:28:18 +02:00
kozabrada123
261ae6eb4a
Goof
2023-07-31 10:07:56 +02:00
kozabrada123
60393a5686
Docs
2023-07-31 10:01:25 +02:00
kozabrada123
7f65f9ca81
Merge branch 'main' into fix/doc-improvements
2023-07-31 09:13:33 +02:00
Flori
2249ae65d7
Remove newline
2023-07-30 20:35:02 +02:00
Vivien
92bc958cf1
update of reaction struct
2023-07-30 20:27:13 +02:00
Vivien
50538eb15d
change signed to unsigned integer
2023-07-30 20:23:12 +02:00
kozabrada123
1ce9bf08cd
Guilds + Channels
2023-07-30 09:04:31 +02:00
kozabrada123
ba25cab1e9
Fix broken links
2023-07-30 08:31:12 +02:00
kozabrada123
b72ebf36ed
Documemtaiom
2023-07-30 08:26:26 +02:00
kozabrada123
d50e969a07
Document a small bit of attachment
2023-07-29 18:12:57 +02:00
kozabrada123
590afc8c9d
Permissions with code blocks
2023-07-29 18:12:57 +02:00
kozabrada123
7637051733
Update src/types/utils/rights.rs
...
Co-authored-by: SpecificProtagonist <specificprotagonist@posteo.org>
2023-07-29 16:07:06 +00:00
kozabrada123
0f300cfb20
Update src/types/utils/snowflake.rs
...
Co-authored-by: SpecificProtagonist <specificprotagonist@posteo.org>
2023-07-29 16:06:49 +00:00
kozabrada123
e64233e6d8
Update src/types/utils/rights.rs
...
Co-authored-by: SpecificProtagonist <specificprotagonist@posteo.org>
2023-07-29 16:06:35 +00:00
kozabrada123
84ada8b94a
Update src/types/utils/rights.rs
...
Co-authored-by: SpecificProtagonist <specificprotagonist@posteo.org>
2023-07-29 16:05:27 +00:00
kozabrada123
b172e5910d
Update src/types/utils/rights.rs
...
Co-authored-by: SpecificProtagonist <specificprotagonist@posteo.org>
2023-07-29 16:04:49 +00:00
kozabrada123
552032a61e
Capitalise docs
...
Co-authored-by: SpecificProtagonist <specificprotagonist@posteo.org>
2023-07-29 16:04:08 +00:00
kozabrada123
e6dc44754c
Forgot this since had the lint on my local copy
2023-07-29 11:45:25 +02:00
kozabrada123
b632958b0f
Document some flags
2023-07-29 11:26:10 +02:00
kozabrada123
ede965411e
Minor doc changes
2023-07-29 11:26:00 +02:00
kozabrada123
1e81a2682f
Document rights
2023-07-29 11:00:28 +02:00
kozabrada123
83d4ffc4e8
Moar docs
2023-07-29 10:23:04 +02:00
kozabrada123
8eb2e2008c
Remove the todos from the last commit
2023-07-28 18:57:35 +02:00
kozabrada123
d0547cb1f0
Better docs
2023-07-28 18:45:40 +02:00
kozabrada123
dcfb59fca1
Merge branch 'main' into fix/doc-improvements
2023-07-28 18:21:20 +02:00
Flori
07f283a205
Improve auto updating structs usage ( #168 )
...
* Add `GatewayHandle` to `UserMeta`
* Make user::shell async due to gateway add
2023-07-24 19:13:53 +02:00
SpecificProtagonist
9ebe72a7dc
derive Updateable ( #167 )
2023-07-22 11:20:31 +02:00
Flori
ccf44a5375
Auto updating structs ( #163 )
...
* Gateway fields don't need to be pub
* Add store to Gateway
* Add UpdateMessage trait
* Proof of concept: impl UpdateMessage for Channel
* Start working on auto updating structs
* Send entity updates over watch channel
* Add id to UpdateMessage
* Create trait Updateable
* Add documentation
* add gateway test
* Complete test
* Impl UpdateMessage::update() for ChannelUpdate
* Impl UpdateMessage::update() for ChannelUpdate
Co-authored by: SpecificProtagonist <specificprotagonist@posteo.org>
* make channel::modify no longer mutate Channel
* change modify call
* remove unused imports
* Allow dead code with TODO to remove it
* fix channel::modify test
* Update src/gateway.rs
Co-authored-by: SpecificProtagonist <vincentjunge@posteo.net>
---------
Co-authored-by: SpecificProtagonist <vincentjunge@posteo.net>
2023-07-21 15:35:31 +02:00
kozabrada123
44d9655e8e
Merge stuff
2023-07-21 14:10:50 +02:00
SpecificProtagonist
776efce4dc
Fix gateway heartbeat blocking ( #162 )
...
fix gateway heartbeat blocking
2023-07-21 13:59:40 +02:00
Flori
85fb24cd8c
Fix: message file attachment duplication ( #159 )
...
* make send() take ownership of MessageSendSchema
* Remove message file attachment duplication
* Remove superfluous docstrings
2023-07-17 23:26:25 +02:00
Flori
1fdbe6cc00
Join/Leave Guilds, (Group) DMs and minor improvements ( #157 )
...
## Summary:
**Added:**
- Schemas `PrivateChannelCreateSchema` `ChannelInviteCreateSchema`, `AddChannelRecipientSchema` recursively (including schemas which were needed to create these schemas)
- Methods `create_private_channel`, `leave_guild`, `accept_invite`, `create_user_invite`, `create_guild_invite`, `add_channel_recipient`, `remove_channel_recipient`
- Integration tests for the functionality covered by implementing #45
- Documentation in some places where I noticed it would be useful to have some
- `create_user` method in `/src/tests`: Cuts down on test boilerplate needed to create an addition test user
**Changed:**
- `.gitignore`
- Added `.DS_store` files to gitignore (some weird macos files), removed Cargo.lock, as Cargo.lock should be included for libraries
- Added a lot of default trait derives like Clone, Copy, PartialEq, Eq, Ord, PartialOrd to structs and enums where I saw them missing
- Added missing `teardown()` calls to the integration tests
- Renamed integration test files in `/src/tests` dir to all be plural: `channel.rs` -> `channels.rs`
- Made more fields on `User` type `Option<>`
- All instances in `/src/tests` where a second test user was created using a RegistrationSchema and the register_user method were replaced with the new `create_user` method
- README.md: Marked roadmap fields covered by #45 as implemented
- Changed visibility of `/src/tests/common/mod.rs` methods from `pub` to `pub(crate)`. In hindsight, this was probably not required, haha
**Removed:**
- Unneeded import in`src/types/config/types/guild_configuration.rs`
## Commit log:
* Add .DS_store, remove Cargo.lock
* Create PrivateChannelCreateSchema
* pub use users
* add channels.rs
* create channels.rs
* Add Deserialize/Serialize derives
* Implement create_private_channel
* Add create_dm() test
* Make optional fields on `User` `Option<>`
* Check boxes for implemented features
* Create users/guilds.rs
* Remove unneeded import
* Add UserMeta::leave_guild()
* Create api/invites/mod.rs
* Add debug print to send_request
* Rename tests files
* Create invites.rs
* create invite.rs
* Add documentation
* Implement accept_invite
* Sort fields on Channel alphabetically
* Add invite mod
* Add forgotten teardown() at test end
* change visiblities, add create_user()
* Implement `create_user_invite()`
* start working on invite tests
* Add allow flags
* Fix bad url
* Create CreateChannelInviteSchema and friends
* remove non-implemented test code
* add body to requests
* Add Clone to UserMeta
* More comprehensive error message when running into a deserialization error
* Add arguments documentation to accept_invite
* Add Eq derive to GuildFeaturesList
* Add Eq derive to Emoji
* Add Eq derive to GuildBan
* Add create_accept_invite() test
* Add Default derive to ChannelCreateSchema
* Change create_guild_invite to return GuildInvite
* Dates as chrono::Date(Utc); sort alphabetically
* Add default derives wherever possible
* Implement add_- and remove_channel_recipient
* Create AddChannelRecipientSchema
* replace otheruser regs with bundle.creeate_user()
* Add (disabled) test remove_add_person_from_to_dm()
2023-07-17 19:36:28 +02:00