Commit Graph
4893 Commits
Author SHA1 Message Date
ITOH 927ee42ce0 fix(rest): set the correct auth header when using proxy (#2969) 2023-04-04 22:24:20 +00:00
Skillz4KillzandJonathan Ho f8afb94aa0 feat: commandOptionsParser util (#2961)
* feat: commandOptionsParser util

* test(utils): fix missing import it

* fix: support mentionable and attachments

* fix: finish coverage

* fix: when typings fail gg

---------

Co-authored-by: Jonathan Ho <heiheiho000@gmail.com>
2023-04-04 11:47:49 +00:00
ITOH 8c9c3d53bf refactor(rest)!: make invalid bucket lazy (#2967)
* refactor(rest): make invalid bucket lazy
Instead of using timeouts we should aim to use a lazy bucket system.

* that might be better

* fix tests
2023-04-04 03:34:34 +00:00
ITOH e3549a8675 fix(rest): does not need to set the absolute url (#2966) 2023-04-03 20:00:30 +00:00
Skillz4KillzandITOH 4317550b1c feat: start reaction role guide (#2960)
* feat: start reaction role guide

* Update website/docs/examples/_category_.json

Co-authored-by: ITOH <to@itoh.at>

* Update website/docs/examples/reactionroles.md

Co-authored-by: ITOH <to@itoh.at>

* Update website/docs/examples/reactionroles.md

Co-authored-by: ITOH <to@itoh.at>

* Update website/docs/examples/reactionroles.md

Co-authored-by: ITOH <to@itoh.at>

* Update website/docs/examples/reactionroles.md

Co-authored-by: ITOH <to@itoh.at>

* Update website/docs/examples/reactionroles.md

Co-authored-by: ITOH <to@itoh.at>

* Apply suggestions from code review

Co-authored-by: ITOH <to@itoh.at>

* Update website/docs/examples/_category_.json

---------

Co-authored-by: ITOH <to@itoh.at>
2023-04-03 19:25:26 +00:00
ITOH 895db84d34 refactor(rest): add header constants (#2962)
* refactor(rest): add header constants

* spelling error

* export
2023-04-03 19:01:14 +00:00
ITOH 0b02607649 ci: do not run on website changes (#2964)
Also removed the sync repo workflow since we do not use the sites repo actively anymore.
2023-04-03 18:05:55 +00:00
Skillz4KillzandITOH 04d7db89a5 fix: export transformers na dhandler (#2959)
Co-authored-by: ITOH <to@itoh.at>
2023-04-03 17:28:11 +00:00
ITOH aff0d47acd blog: why we switched from deno to node.js (#2958) 2023-04-03 17:01:03 +00:00
ITOHandSkillz4Killz 088fd12513 fix(bot)!: rename auditLogEntryCreate to guildAuditLogEntryCreate (#2952)
* fix(bot)!: rename `auditLogEntryCreate` to `guildAuditLogEntryCreate`

* need to start small

Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>

* also remove this

* suggestions

---------

Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>
2023-04-03 15:52:34 +00:00
ITOH 7f9459b435 feat(rest): add isProxied (#2957)
Adds the `isProxied` property to rest.
This effectively removes the `startWith('https://discord.com/api')` check.
2023-04-03 15:51:47 +00:00
ITOH 50282f9190 refactor(rest)!: improve sendRequest (#2956)
* refactor(rest)!: refactor `sendRequest`
 - Removed `url` in favour of `route`. This change will effectively remove a bunch of unnecessary checks from dd. Also this changes how rest proxies have to pass the route to the `makeRequest` function. But since it will just require you to pass `req.route + req.query` it is an improvement compared to `rest.baseUrl + req.route + req.query`.
 - Introduced `HttpResponseCodes` an internal enum to remove magic numbers.
 - Improved the rate limted response handling. Made it simpler.
 - Removed unnecessary `JSON.stringify(await result.json())` since `await result.text()` does effectively the same.
 - Changed the anti memor leak `response.json()` to `response.arrayBuffer()` since latter does not do any additional processing.

* .

* forgot to fix that
2023-04-03 15:23:01 +00:00
ITOH bb92a78e6a ci: fix labeler adding style on refactor 2023-04-03 16:43:17 +02:00
Jonathan Ho fda9ef25f2 fix(bench): missing app id (#2955) 2023-04-03 03:05:20 +00:00
ITOH af64b18518 forgot to commit that 2023-04-03 00:16:25 +02:00
ITOH 1f26dd58d1 need to end with .js 2023-04-03 00:08:16 +02:00
ITOH 1aa053a29a more fixes 2023-04-03 00:04:44 +02:00
ITOH 56ae189812 ci: fix benchmarks 2023-04-02 23:58:40 +02:00
ITOH 43844571cc feat(bot): allow passing of applicationId (#2954)
* feat(bot): allow passing of applicationId

* Update packages/bot/src/bot.ts
2023-04-02 23:20:00 +02:00
ITOH 0f41cd302e ci: fix benchmarks (#2953) 2023-04-02 21:06:55 +00:00
ITOH da74ea7e55 docs(types)!: update intents (#2951)
- Added missing event docs
 - Added a note for privileged intents
 - Renamed `GuildBans` to `GuildModeration`
2023-04-02 21:05:08 +00:00
ITOH fd357aeace refactor(rest)!: move routes to their own creator function (#2950)
Currently the route definitions make `createRestManager` massive. Moving them to their own creator function makes it a bit easier to handle.

Also `sessionInfo` has been removed since it's just an alias to `gatewayBot`. Instead `gatewayBot` should be used.
It has been removed since the routes are mainly used internally in the lib. Almost no one should need to touch them outside, but if they do they should know how routes are called.
2023-04-02 21:04:33 +00:00
ITOH 7c031df875 refactor(rest)!: remove falsy token check (#2949)
* refactor(rest): remove falsy token check
This is in favour for interaction only bots, which still need rest but cannot provide a valid bot token.
If you want to use rest for your normal bot it should be your own responsibility to pass a valid token.

Further more `applicationId` is now a required property since we cannot extract the id from the token anymore.

* forgot to commit that

* fix error

* make appid optional again

* app id throw error if undefined

* fix test
2023-04-02 21:39:08 +02:00
ITOH 5e1e56146e fix: eslint no async error (#2947)
* fix: eslint no async error

* just ignore
2023-04-02 19:47:29 +02:00
ITOH 7c51f731cb refactor(rest): improve unauthorized readability (#2946)
Currently we use a double negation in the code which makes it harder to understand what it actually does.

Therefore the check has been changed to be understood easier.
2023-04-02 16:54:36 +00:00
ITOH 7b5d99e5dd refactor(rest): interaction handling (#2944)
* refactor(rest): interaction handling
Currently some interaction handling uses `sendRequest` directly.
This adds the `runThroughQueue` option, which prevents the request to be handled by a queue effectively giving the same effect as using `sendRequest` directly.
This prevents code repetition and supports future endpoints which might not have a rate limit too.

Further more all interaction related endpoints have now been set to not send the bots authorization header.

* fix invalid file

* fix eslint

* fix: followups have a rate limit

* fix awaiting
2023-04-02 16:27:48 +00:00
ITOH 66869ce00b refactor(utils)!: remove unused files utility (#2945)
Since we have changed how files get send to the rest proxy, we do not need this utility anymore.
2023-04-02 16:21:48 +00:00
ITOH 1cb1b09460 refactor!(rest): rest proxy attachment sending (#2924)
* refactor!(rest): rest proxy attachment sending
Currently attachments get encoded as base64 before being send to the proxy. This is not really necessary, instead we can just send `FormData` to the proxy.

* fix lint
2023-04-02 15:43:08 +00:00
Jonathan HoandITOH 7a69c02d13 feat(site): add back benchmark to site (also change cpu model) (#2939)
* ci: add concurrency for deploy site

* feat(site): add benchmark

* refactor(bench): overwrite old result with new

* Update packages/benchmark/src/generateMessage.ts

Co-authored-by: ITOH <to@itoh.at>

* Update scripts/generateMessage.js

Co-authored-by: ITOH <to@itoh.at>

* Update site.yml

---------

Co-authored-by: ITOH <to@itoh.at>
2023-04-02 15:39:52 +00:00
ITOH 17a52fec1b fix(rest, types)!: support auditlog reason (#2940)
* fix(rest, types)!: support auditlog reason
Improved the consistency by separating the audit log reason to an optional function parameter.
Also added support for 100% documented reason endpoints.

* missing stuff

* fix this

* fix e3e
2023-04-02 15:38:06 +00:00
ITOH 92e25959ef build: update turbo (#2942) 2023-04-02 15:29:15 +00:00
ITOH 7b0964d24a fix(README): dd logo path (#2943) 2023-04-02 15:20:26 +00:00
ITOH 56946047c1 fix(README): dd logo path (#2941) 2023-04-02 15:38:08 +02:00
ITOH bb5e15d808 trigger tests 2023-04-02 15:30:26 +02:00
Skillz4KillzandJonathan Ho dea9d1d152 fix(transformers): message transformer using different style (#2916)
* fix(transformers): message transformer using different style

* fix: more bench tests

* fix(bench): token can not be empty

* more desired props

* fix: bug on message.id props

* fix: transfomrer errors on bench

---------

Co-authored-by: Jonathan Ho <heiheiho000@gmail.com>
2023-04-01 21:26:46 -05:00
Jonathan Ho 782a778a1d ci: add git reset before store benchmark (#2938) 2023-04-02 02:25:01 +00:00
Jonathan Ho 9c7b2b832e Fix(bench): wrong location (#2932)
* Update commentBenchResult.yml

* ci: fix ext

* refactor(bench): better table
2023-04-01 23:27:54 +00:00
ITOH 6359972e38 docs(rest): webhook names cannot contain 'discord' (#2936)
Closes: https://github.com/discordeno/discordeno/issues/2928
2023-04-01 19:18:59 +00:00
ITOH bcfeb5b6ae feat(bot,types): add Guild.maxStageVideoChannelUsers (#2935)
Closes: https://github.com/discordeno/discordeno/issues/2927
2023-04-01 19:18:26 +00:00
ITOH 6890b34d84 feat(types)!: add guild expression & view monetization permissions (#2934)
Closes: https://github.com/discordeno/discordeno/issues/2926
2023-04-01 19:16:14 +00:00
ITOH 92ba532e6c style: fix helix language formatting 2023-04-01 14:16:59 +02:00
Jonathan Ho a29e45218d feat(bench): commit benchmark benchies (#2918)
* refactor(bench): better readdir

* Update retryBenchmark.yml

* Update benchmark.yml

* Update benchmark.yml

* Update benchmark.yml

* Update benchmark.yml

* ci: comment the result

* ci: fix missing data
2023-04-01 04:53:35 +00:00
ITOH 05fc3fbeba style: format (#2925) 2023-04-01 02:46:46 +02:00
Skillz 4d3a2f7665 Merge branch 'main' of https://github.com/discordeno/discordeno into main 2023-03-31 18:02:28 -05:00
Skillz 13d59a8274 feat: open api schema generator for typings 2023-03-31 18:02:26 -05:00
ITOH f6a9d96ab2 feat(types): add ApplicationFlags.ApplicationAutoModerationRuleCreateBadge (#2921)
Closes: https://github.com/discordeno/discordeno/issues/2920
2023-03-31 20:53:09 +00:00
ITOH 6120c79c3c ci: add name to labeler workflow (#2922) 2023-03-31 20:51:19 +00:00
ITOH f5abd83cc5 fix(bot,rest,types)!: attachment sending (#2917)
* fix(bot,rest,types)!: attachment sending

* apply code suggestions

* forgot to add that

* this should not be there i guess

* maybe spell it right

* actually revert the attachments rename

* Change how method gets passed

* more stuff

* improve function name
2023-03-31 20:50:53 +00:00
Jonathan Ho 18150174ae chore(all): add dev guide (#2919) 2023-03-31 16:11:27 +00:00
Jonathan Ho aba7de6e3b benchmark test (#2830)
* ci: test

* ci: add script

* ci: change to js

* ci: test

* ci: fix error

* ci: fix script

* chore: add benchmark

* ci: fix need input

* fix: read file with dir

* ci: change push to trigger on main only

* ci: try new method

* ci: fix "true"

* chore: fix set output

* fix: set output

* ci: increase number of try

* chore: clean up dir

* fix needs

* bench: add memory bench

* bench: import memory bench

* bench: fix v19 syntax

* bench: more fix

* bench: add filter

* bench: minor fix

* ci: read file in sync

* chore: yarn install

* chore: add db to ignore

* refactor(bench): use loader

* bench: only bench on one event

* bench: add type to db event

* chore(bench): better type

* bench: add rest simplifyUrl bench

* chore: add microtime

* refactor: add fall back

* Revert "ci: change push to trigger on main only"

This reverts commit 04df971025.

* chore: yarn install

* ci: trigger push event only on main branch

* chore(bench): use node-fetch

* refactor(bench): make it work with other function and event

* chore(bench): better name
2023-03-31 07:57:53 +00:00