chore(release): v2.3.8

This commit is contained in:
March 7th
2022-07-16 16:37:41 +07:00
parent 427ea92b88
commit f0b45f981e
8 changed files with 43 additions and 11 deletions

View File

@@ -814,6 +814,24 @@ class Client extends BaseClient {
} else {
options.intents = Intents.resolve(options.intents);
}
if (options && typeof options.checkUpdate !== 'boolean') {
throw new TypeError('CLIENT_INVALID_OPTION', 'checkUpdate', 'a boolean');
}
if (options && typeof options.readyStatus !== 'boolean') {
throw new TypeError('CLIENT_INVALID_OPTION', 'readyStatus', 'a boolean');
}
if (options && typeof options.autoCookie !== 'boolean') {
throw new TypeError('CLIENT_INVALID_OPTION', 'autoCookie', 'a boolean');
}
if (options && typeof options.autoRedeemNitro !== 'boolean') {
throw new TypeError('CLIENT_INVALID_OPTION', 'autoRedeemNitro', 'a boolean');
}
if (options && typeof options.DMSync !== 'boolean') {
throw new TypeError('CLIENT_INVALID_OPTION', 'DMSync', 'a boolean');
}
if (options && typeof options.patchVoice !== 'boolean') {
throw new TypeError('CLIENT_INVALID_OPTION', 'patchVoice', 'a boolean');
}
if (typeof options.shardCount !== 'number' || isNaN(options.shardCount) || options.shardCount < 1) {
throw new TypeError('CLIENT_INVALID_OPTION', 'shardCount', 'a number greater than or equal to 1');
}

View File

@@ -117,14 +117,23 @@ module.exports = (client, { d: data }, shard) => {
client.user._patchNote(data.notes);
const syncTime = Date.now();
for (const private_channel of data.private_channels) {
const PrivateChannel = client.channels._add(private_channel);
client.ws.broadcast({
op: Opcodes.DM_UPDATE,
d: {
channel_id: PrivateChannel.id,
},
});
const channel = client.channels._add(private_channel);
// Rate limit warning
if (client.options.DMSync) {
client.ws.broadcast({
op: Opcodes.DM_UPDATE,
d: {
channel_id: channel.id,
},
});
}
}
if (client.options.DMSync) {
console.warn(
`Gateway Rate Limit Warning: Sending ${data.private_channels.length} Requests / ${Date.now() - syncTime || 1} ms`,
);
}
// Remove event because memory leak

View File

@@ -490,6 +490,7 @@ class GuildMemberManager extends CachedManager {
x += 200;
}
}
const sendTime = Date.now();
for (const l of list) {
this.guild.shard.send({
op: type,
@@ -506,6 +507,7 @@ class GuildMemberManager extends CachedManager {
},
});
}
console.warn(`Gateway Rate Limit Warning: Sending ${list.length} Requests / ${Date.now() - sendTime || 1} ms`);
}
const fetchedMembers = new Collection();
let i = 0;

View File

@@ -41,6 +41,7 @@ const JSONBig = require('json-bigint');
* @property {boolean} [autoCookie=true] Automatically add Cookies to Request on startup
* @property {boolean} [patchVoice=true] Automatically patch @discordjs/voice module (support for call)
* @property {boolean} [autoRedeemNitro=false] Automaticlly redeems nitro codes <NOTE: there is no cooldown on the auto redeem>
* @property {boolean} [DMSync=false] Automatically synchronize call status (DM and group) at startup (event synchronization) [Warning: May cause rate limit to gateway)
* @property {number} [shardCount=1] The total amount of shards used by all processes of this bot
* (e.g. recommended shard count, shard count of the ShardingManager)
* @property {CacheFactory} [makeCache] Function to create a cache.
@@ -146,6 +147,7 @@ class Options extends null {
readyStatus: true,
autoCookie: true,
autoRedeemNitro: false,
DMSync: false,
patchVoice: true,
waitGuildTimeout: 15_000,
shardCount: 1,