pycord-v3
pycord-v3 copied to clipboard
Pycord v3 Rewrite
Summary
This rewrite's Pycord v3 for the final time to be more flexible, extensible, and faster.
This new version of v3 follows a very strict set of guidelines and goals set by me and many other people part of the wider Pycord Development Community, including developers of large bots, and core developers.
The guideline aims for a stricter, fancier, and more functional way of creating Discord bots in Python as opposed to our predecessors. While it may be harder for beginners, in the long run the goal is to make it so developers can make bots lightning fast, and more efficient than other libraries.
MyPy(c)
A former goal of the v3 Guidelines were to achieve full strict type-safety to compile with mypyc. That, at least for 3.0.x, won't be the goal. While we will still aim for type-safety to lessen bugs, for the near future the majority of Pycord v3 won't be compiled into C using MyPy.
Rust in Pycord
The part of Pycord that utilizes Discord's Voice & Video features will be written mostly in Rust. This allows us to:
- Get really low level, while staying safe
- Easily integrate with encryption tools (incl. Opus)
However, Voice & Video is going to be added after this PR. This PR aims to add all the basic low-level parts of the Discord API & Gateway, as well as every API endpoint. Models (Guild, Member, User, etc,) after, then Voice & Video.
Information
- [ ] This PR fixes an issue.
- [x] This PR adds something new (e.g. new method or parameters).
- [x] This PR is a breaking change (e.g. methods or parameters removed/renamed).
- [ ] This PR is not a code change (e.g. documentation, README, typehinting, examples, ...).
Checklist
- [x] I have searched the open pull requests for duplicates.
- [x] If code changes were made then they have been tested.
- [ ] I have updated the documentation to reflect the changes.
- [x] If
type: ignorecomments were used, a comment is also left explaining why. - [ ] I have updated the changelog to include these changes.
hola, would you like api endpoints (again)
hola, would you like api endpoints (again)
Maybe a reverse uno, I do all the endpoints and you help out with the models lol, the models are what I struggle with the most, I don't know why, I think it's just because of how repetitive it is. To finish v3, I would probably need someone else to do the bulk of the impl for models
hola, would you like api endpoints (again)
Maybe a reverse uno, I do all the endpoints and you help out with the models lol, the models are what I struggle with the most, I don't know why, I think it's just because of how repetitive it is. To finish v3, I would probably need someone else to do the bulk of the impl for models
So how are the models made and where do I put them
Woke up planning on doing homework, made routes instead: 7cf6a6c
Update: I still did my homework