Commit Graph

93 Commits

Author SHA1 Message Date
Michael Pfaff 2b2b47454c
Remove build.sbt 2022-09-09 07:29:10 -04:00
Michael Pfaff b1ef65e2a9
Suppress std::io::NotFound errors 2022-08-16 14:31:44 -04:00
Michael Pfaff 2aaa043bd2
See message
- **Breaking change**: Multiple functions renamed in `src/java.rs`. This is not bumping the major version because these functions are considered internal.
- Fix disconnecting dead-lock
- `Client::execute` now disconnects when `Error::ConnectionClosed` or `Error::ConnectionClosedWhileSending` is encountered
- Use `tracing` instead of `log`
- Add the `instrument` attribute to most `Client` functions
- Remove unnecessary `Arc` from JNI bindings
2022-03-26 23:06:08 -04:00
Michael Pfaff 5d0243df9a
Add disconnect and clearActivity 2022-03-21 13:19:12 -04:00
Michael Pfaff 49f58f2623
Remove badges and add link to original repo 2022-02-03 18:40:32 -05:00
Michael Pfaff 910871dcf9
Update CHANGELOG.md 2022-02-03 17:01:02 -05:00
Michael Pfaff ad78e64e64
Bump version 2022-02-03 17:00:42 -05:00
Michael Pfaff 30eebae644
Cleanup some stuff 2022-02-03 16:57:40 -05:00
Michael Pfaff d99145133d
Add partial Java bindings 2022-02-03 16:56:26 -05:00
Michael Pfaff 04af242ca7
Overhaul (part 2)
- No more worker thread
- Fully async io thanks to Tokio
- Updated libs
- Client is no longer bound to a specific client id
2022-02-03 15:56:37 -05:00
Michael Pfaff 326354d3b4
Overhaul (part 1) 2022-02-03 09:52:53 -05:00
Patrick Auernig 6ea1c93bae Update changelog 2018-12-06 02:21:22 +01:00
Patrick Auernig 7c10e1dbc5 Update Cargo.toml
Update version to 0.3.0
2018-12-06 02:09:37 +01:00
Patrick Auernig 84de596ffb Allow cloning of Client instances 2018-12-06 02:08:26 +01:00
Patrick Auernig eb6152effe Add longer delay after reconnect attempts 2018-12-06 02:05:23 +01:00
Patrick Auernig 52d31f4420 Update readme 2018-12-06 01:27:39 +01:00
Patrick Auernig 4b99188f23 Update changelog 2018-12-06 01:05:06 +01:00
Patrick Auernig 184abdc07f Rewrite connection manager 2018-12-06 01:05:06 +01:00
Patrick Auernig ecd391a44e Remove disconnect method from Connection
Use Drop implementation instead
2018-12-06 01:05:06 +01:00
Patrick Auernig caaae615f0 Move handshake and ping into Connection trait 2018-12-06 01:05:06 +01:00
Patrick Auernig b3d12ff760 Update gitignore 2018-12-04 22:28:53 +01:00
Patrick Auernig 21915d9acf Update Cargo.toml
Update version to 0.2.4
2018-12-04 22:19:54 +01:00
Patrick Auernig 3c8e8453e6 Update GitLab CI configuration 2018-12-04 22:16:47 +01:00
Patrick Auernig 3ebc936b10 Remove libc dependency
The function std::process::id() is available in the
"stable" channel now.
2018-12-04 21:31:12 +01:00
Patrick Auernig 6c1b159435 Just a bit of cleanup 2018-04-11 23:30:46 +02:00
Patrick Auernig aaaf2474a6 Implement invite handling commands
Handles SEND_ACTIVITY_JOIN_INVITE and CLOSE_ACTIVITY_REQUEST
2018-04-10 15:14:48 +02:00
Patrick Auernig 9c90034ee7 Move subscribe examples into own file 2018-04-10 14:26:41 +02:00
Patrick Auernig 2ffc0cd97c Remove useless static variable 2018-04-10 13:06:44 +02:00
Patrick Auernig 889c440112
Update CHANGELOG.md
Remove unnecessary clutter and redundant Add prefix in Added sections
2018-04-10 03:25:48 +02:00
Patrick Auernig 45bcbb4b71
Update CHANGELOG.md 2018-04-10 03:20:20 +02:00
Patrick Auernig ab2b38aa47 Create CHANGELOG.md 2018-04-10 01:27:04 +02:00
Patrick Auernig 7024efd5c7 Build examples in CI 2018-04-09 19:34:31 +02:00
Patrick Auernig 7764ef3e8c Use dev-dependencies for examples 2018-04-09 19:34:08 +02:00
Patrick Auernig bbf489d78b Fix typo in CONTRIBUTING.md 2018-04-09 16:51:08 +02:00
Patrick Auernig d51107247f Update appveyor.yml
Don't build tags
2018-04-08 21:46:25 +02:00
Patrick Auernig a7b9a86d4e Bump crate version
0.2.2 -> 0.2.3
2018-04-08 21:35:30 +02:00
Patrick Auernig 6522a5b4a0 Update example
Clear presence if input is empty.
2018-04-08 21:08:20 +02:00
Patrick Auernig a9480b9d72 Add method to clear a Rich Presence status 2018-04-08 21:07:19 +02:00
Bond-009 6bbc9f85d7 Change timestamps to u64
They are documented as u64: https://discordapp.com/developers/docs/rich-presence/how-to#updating-presence-update-presence-payload-fields
2018-04-08 20:29:35 +02:00
Patrick Auernig 5845632ebc Update README.md
Use small Discord badge
2018-04-08 20:27:14 +02:00
Patrick Auernig 56326618a4 Remove unused imports 2018-04-07 13:39:06 +02:00
Patrick Auernig f43c9697ae Fix Windows disconnect method 2018-04-07 13:34:00 +02:00
Patrick Auernig 4443423407 Add dummy disconnect method for Windows connection 2018-04-07 13:27:59 +02:00
Patrick Auernig 06728d21cf Update example 2018-04-07 13:24:25 +02:00
Patrick Auernig a1e77c9c35 Implement reconnection logic
Still needs some changes to handle
* Retrying message send
* Resubscribing current event subscriptions
* Make non-blocking again
2018-04-07 13:22:50 +02:00
Patrick Auernig d370cb6432 Add connection manager 2018-04-06 21:51:01 +02:00
Patrick Auernig 520da02162 Add unsubscribe command to client 2018-04-06 13:29:01 +02:00
Patrick Auernig 20044cbea4 Update example 2018-04-06 02:32:03 +02:00
Patrick Auernig 95d748f211 Model restructuring
* Remove old Command payload and replace with generic one.
* Move Rich Presence model back to src/models.
* Add Subscription command, Ready event and Error event models.
* Add subscribe method to client and implement simple error detection.
2018-04-06 02:28:14 +02:00
Patrick Auernig a585bb6495 Bump crate version
0.2.1 -> 0.2.2
2018-04-03 17:05:11 +02:00
Patrick Auernig 95ab885fb4 Update GitLab CI configuration
Add deploy stage for crates.io
2018-04-03 16:52:38 +02:00
Patrick Auernig 60c7f4762f Use default SocketConnection for current platform 2018-04-03 16:01:23 +02:00
Patrick Auernig b89fddcac4 Bump crate version
0.2.0 -> 0.2.1
2018-04-03 12:22:31 +02:00
Patrick Auernig 2b06570fa2 Fix named_pipe import and remove unused ones 2018-04-03 12:14:12 +02:00
Patrick Auernig ced34974cf Update Rich Presence example
Add Windows connection and remove version dependency from Cargo.toml
2018-04-03 12:04:14 +02:00
Patrick Auernig b8e4697555 Move some common methods into Connection trait 2018-04-03 12:03:08 +02:00
Patrick Auernig 51cd4413f7 Add AppVeyor CI configuration 2018-04-03 00:48:57 +02:00
Patrick Auernig af50e1318e Bump crate version
0.1.5 -> 0.2.0
2018-04-02 23:47:07 +02:00
tenrys 620e9a6b26 Added Windows connection support 2018-04-02 21:42:57 +00:00
Patrick Auernig 1e3e9485df Import restructuring
Use new grouping syntax from Rust 1.25
Group `use` in following order:
std, external, internal
2018-03-29 23:40:56 +02:00
Patrick Auernig 94fd95d516 Add test for opcode conversion 2018-03-29 23:11:24 +02:00
Patrick Auernig fd1dc15a29 Use Result value for OpCode conversion
Conversion could fail if integer is not in range 0...4.
2018-03-29 23:00:58 +02:00
Patrick Auernig 40be78dbd1 Add error type 2018-03-29 22:57:00 +02:00
Patrick Auernig 332dbab413 Move nonce generator to utils module 2018-03-28 23:50:25 +02:00
Patrick Auernig 185b012fc0 Bump crate version
0.1.4 -> 0.1.5
2018-03-28 22:55:33 +02:00
Patrick Auernig 3c79bb15fa Move Rich Presence code into own submodule 2018-03-28 22:55:26 +02:00
Patrick Auernig eb64564333 Update Cargo.toml
Disable GitLab badge and workspaces.
2018-03-28 16:43:59 +02:00
Patrick Auernig cbe540dcff Update tests for SetActivity
Only test full and empty object serialization.
2018-03-28 16:37:41 +02:00
Patrick Auernig 681d3d08b6 Update README.md
Add invite to support server.
2018-03-28 12:06:41 +02:00
Patrick Auernig afe1503ad9 Move getpid to utils module 2018-03-25 20:55:38 +02:00
Patrick Auernig 54ace3a5e9 Implement From<u32> trait for OpCode
And store Message.opcode as OpCode instead of u32.
2018-03-24 21:42:39 +01:00
Patrick Auernig 2635086e97 Use byteorder crate instead of byte 2018-03-24 15:15:48 +01:00
Patrick Auernig a5acb3b975 Bump crate version
0.1.3 -> 0.1.4
2018-03-23 22:57:48 +01:00
Patrick Auernig c5ae80007e Remove useless shrink_to_fit in message encoder 2018-03-23 22:55:31 +01:00
Patrick Auernig e853fa94a1 Set fixed read buffer size 2018-03-23 22:54:30 +01:00
Patrick Auernig 00c61cfa72 Represent opcodes as enum instead of u32 2018-03-23 22:54:23 +01:00
Patrick Auernig 8929bd4f96 Bump crate version
0.1.2 -> 0.1.3
2018-03-23 11:12:36 +01:00
Patrick Auernig 0e38bf634d Use libc::getpid instead of std::process::id
Until the std::process::id interface becomes stable.
2018-03-23 11:04:19 +01:00
Patrick Auernig 6d83bc0af2 Create CONTRIBUTING.md 2018-03-23 10:44:52 +01:00
Patrick Auernig 53bab6857e Add Connection trait and implement UnixConnection 2018-03-22 22:54:49 +01:00
Patrick Auernig 43c8a6af5f Privatize struct fields 2018-03-22 20:54:18 +01:00
Patrick Auernig 045d7cdf91 Add badges to Cargo.toml and bump version
0.1.1 -> 0.1.2
2018-03-22 20:21:14 +01:00
Patrick Auernig 86fa860499 Add log crate 2018-03-22 20:21:08 +01:00
Patrick Auernig f79b52f60f Add Travis CI configuration 2018-03-22 19:17:07 +01:00
Patrick Auernig 38c125945e Add LICENSE 2018-03-22 17:43:30 +00:00
Patrick Auernig 704b947729 Bump crate version
0.1.0 -> 0.1.1
2018-03-22 18:40:24 +01:00
Patrick Auernig a078b9c322 Fix alias modifier and add serialization tests 2018-03-22 18:39:09 +01:00
Patrick Auernig ca1a84eeee Make models and client modules public 2018-03-22 18:12:41 +01:00
Patrick Auernig 9a9fc504fe Add macro to build message structs and impls 2018-03-22 18:11:41 +01:00
Patrick Auernig a7e7bb8446 Add crates.io badge 2018-03-22 16:08:59 +01:00
Patrick Auernig 58af08b3f7 Add GitLab CI configuration 2018-03-22 16:03:20 +01:00
Patrick Auernig c4900b959c Update README.md
Add Unix-only notice
2018-03-22 15:40:36 +01:00
Patrick Auernig f24793d7f2 Add Discord rich presence support
Allow sending rich presence status to your Discord client.
Currently only supports setting the status once.
Only Unix systems supported for now.
2018-03-22 15:35:48 +01:00