Commit Graph

1210 Commits

Author SHA1 Message Date
spiral
5c055871e3
feat(bot): store command message info in redis 2022-06-19 20:28:55 -04:00
spiral
9848b88d5b
feat(bot): don't query db message context when running commands 2022-06-15 19:28:34 -04:00
spiral
7cb3a3ea0f
feat(bot): remove hacky fix for extremely slow system deletes
they are no longer extremely slow
2022-06-15 18:52:50 -04:00
spiral
65e2bb0234
feat(bot): remove cluster-local DM channel cache 2022-06-14 23:11:55 -04:00
spiral
f0b5749d5c
feat(bot): clean up / paginate help command 2022-06-14 19:05:15 -04:00
spiral
f3c02a4254
feat(bot): remove deprecated commands 2022-06-14 15:55:08 -04:00
spiral
13efdbee83
typo 2022-06-14 14:41:32 -04:00
spiral
c4726f358b
feat(bot): get cluster config from Nomad node index env variable 2022-06-14 14:18:37 -04:00
spiral
5833e7644d
fix: don't crash when trying to log edited message with no old content 2022-06-13 21:18:24 -04:00
spiral
9dd3fba7e6
fix: show correct error in 'pk;debug proxy' when autoproxy is disabled for discord account 2022-06-13 14:52:07 -04:00
spiral
b30e2a01e3
feat: add '-raw' flag to color commands 2022-06-13 14:35:18 -04:00
spiral
6ed066de29
Merge branch 'main' of ssh://github.com/pluralkit/pluralkit 2022-06-11 00:48:21 -04:00
spiral
2fbd5cf6c1
chore: remove unused files from repo 2022-06-11 00:46:37 -04:00
spiral
1c9a68cb53
chore: lint 2022-06-10 18:49:36 -04:00
spiral
1b5a90f612
feat(bot): add stats tracking for dm channel cache hits/misses 2022-06-10 18:08:56 -04:00
Ske
51fb561841 fix: a couple more minor reproxy fixes 2022-06-06 00:59:53 +02:00
Ske
6511c04c6c fix: don't fetch non-thread channels twice 2022-06-05 23:27:54 +02:00
Ske
995fddf929 fix: include guild member in reproxy permission check 2022-06-05 23:27:54 +02:00
Ske
9cbbd220ac crimes 2022-06-05 20:42:27 +02:00
spiral
a18fd9bd0d
chore: update github repo URL 2022-06-05 12:57:10 -04:00
spiral
8027527055
merge pull request #450
add official PluralKit web dashboard
2022-06-05 12:39:42 -04:00
spiral
614059c79f
fix: correct error text on pk;unlink 2022-06-03 01:15:15 -04:00
spiral
a95fd34881
feat: add dashboard links to system/member/group cards 2022-06-03 01:09:02 -04:00
spiral
0ee0e75e02
feat: add 'pk;log show' command 2022-06-02 22:36:42 -04:00
Iris System
d500aacd2d feat: make pk;reproxy handle keepproxy correctly 2022-05-27 11:08:32 +12:00
spiral
799279054d
fix: include shard_id in redis channel 2022-05-10 07:32:14 -04:00
Iris System
4c8e5d9aec feat: add aliases: pk;ap l (latch), pk;ap f (front) 2022-05-08 17:12:09 -04:00
Iris System
f25b967a36 feat: add aliases: pk;h (help) and pk;m <member> kp (keepproxy) 2022-05-08 17:12:09 -04:00
Iris System
a66d459756 feat: add "rn" as alias for "rename" for systems+members+groups 2022-05-08 17:12:09 -04:00
Iris System
b8fda734e2 feat: add more systemtag-related command aliases
- `pk;s t` for tag
- `pk;s st` for servertag (taken from a Notion suggestion)
2022-05-08 17:12:09 -04:00
the iris system
ee17fcb11f
feat: add pk;reproxy (#447) 2022-05-08 21:10:07 +00:00
spiral
fe69b1b320
chore: lint 2022-05-07 17:27:12 -04:00
Iris System
1008032171 feat: auto-export system on deletion
Refuses to delete system unless a DM can be sent with the export file,
use `-no-export` (`-ne`) to override
2022-05-08 09:16:20 +12:00
spiral
430a33ccf0
fix: don't ignore flags in pk;system color 2022-05-02 15:54:49 -04:00
spiral
1b5efb6669
feat: add Context.CommandPrefix 2022-05-02 14:53:08 -04:00
spiral
bc2cfbeba3
fix: check if member target is 5-length alpha before trying to search by HID (#441) 2022-04-24 14:51:47 -04:00
spiral
183779e055
fix: don't show discord user's guild nickname if not allowed to see message content 2022-04-24 14:43:27 -04:00
spiral
1e86c2d6c4
chore: lint 2022-04-20 10:47:15 -04:00
spiral
aa896de3af
fix: ignore nirn-proxy timeouts in IsOurProblem 2022-04-20 10:45:35 -04:00
spiral
6faed635fa
fix: parse some stuff correctly when using Redis gateway 2022-04-13 08:50:04 -04:00
spiral
c2094e3b7a
feat(bot): add Redis cache 2022-04-13 08:44:53 -04:00
spiral
fadf007abc
feat(gateway): initial commit 2022-04-11 15:55:10 -04:00
spiral
9314ce672a
fix: don't query /gateway/bot if we already have the info from cluster config 2022-04-10 10:41:26 -04:00
spiral
36873e08ee
chore: PR lint 2022-04-07 03:47:38 -04:00
UsernameNotAvalible
8d50ae55e7
feat: add prepend and append switches to Pk;edit (#436) 2022-04-07 03:43:46 -04:00
rladenson
576b23bca5
fix: try getting own-system members first even when matching hid (#439)
this is a bandaid fix for an issue where queries matching only the hid index would get stuck forever
2022-04-06 02:19:35 -04:00
spiral
e0ed5b528e
fix: get thread parent from API instead of cache for cross-cluster message edit 2022-03-31 07:23:31 -04:00
spiral
6a213fa694
feat: dispatch new bot status to clusters via Redis 2022-03-30 20:42:57 -04:00
spiral
973d6d883c
fix: get guild from REST for pk;proxy across clusters
also closes #330.
2022-03-30 05:54:21 -04:00
Jake Fulmine
494f93d629
feat: add some aliases (pk;ls and -wprns) (#432) 2022-03-30 05:42:34 -04:00
spiral
dce29ec933
fix: show correct error when mentioned account doesn't have a system 2022-03-30 05:27:15 -04:00
spiral
ec6d4865cb
fix: show displayname field even when member name is private 2022-03-30 05:21:26 -04:00
spiral
36e242986d
fix: fail-fast if we don't have Send Messages permissions in the current channel 2022-03-30 05:11:55 -04:00
spiral
233d0341a2
fix: don't crash in autoproxy status if targeted member was deleted (again) 2022-03-30 05:06:47 -04:00
spiral
a23108f24b
fix: actually use REST guild instead of returning no permissions 2022-03-30 04:51:33 -04:00
spiral
7afba4ea95
chore: code cleanup (mostly whitespace / remove unused imports) 2022-03-30 04:36:22 -04:00
spiral
56155782c3
fix: don't crash if user tries to add a reaction on a page before the reactions are done filling up
this is kinda a hacky fix since it just ignores the user input, but it's the best that can be done until Paginate is moved to interactions (buttons)
2022-03-30 03:06:21 -04:00
spiral
b25d5f1b67
lint 2022-03-30 02:36:39 -04:00
spiral
be89f907a0
feat: block running commands / proxying when system is being deleted
Large systems take way too long to delete, which causes any insert for that system to block a connection, which exhausts the connection pool
2022-03-23 21:32:18 -04:00
spiral
0bad2e8ff9
Revert "refactor: run InfluxDB reporter through AppMetrics instead of per-minute task"
This reverts commit 38a3683fca.
2022-03-23 19:28:51 -04:00
spiral
38a3683fca
refactor: run InfluxDB reporter through AppMetrics instead of per-minute task 2022-03-23 14:41:55 -04:00
Jake Fulmine
7efe6f1f97
feat: system pronouns (#429) 2022-03-23 14:20:16 -04:00
spiral
982812333b
feat: rewrite database schema for localized autoproxy 2022-03-21 23:43:33 -04:00
spiral
ca108813b7
fix: don't spam errors when postgres is restarting 2022-03-19 21:57:58 -04:00
spiral
1a38635a12
fix: don't crash when autoproxy member is deleted 2022-03-19 21:55:59 -04:00
spiral
8909330db2
feat: aggregate cluster statistics and send to influx with scheduled tasks worker 2022-03-14 23:33:22 -04:00
spiral
857e20b601
feat: show total shards from cluster configuration if present 2022-03-11 17:51:04 -05:00
spiral
ae543b9c18
feat: fetch from REST instead of cache for cross-cluster lookups 2022-03-09 20:06:53 -05:00
spiral
d0ad7abb03
feat: add the rest of the Dynos to logclean 2022-03-03 06:01:23 -05:00
spiral
034258f050
feat: add 'prns' alias to pronouns command 2022-02-26 16:32:53 -05:00
spiral
32a73eef09
feat: update to Discord API v10 2022-02-26 16:28:20 -05:00
spiral
6a4033b2a9
feat: add blue diamond documentation and 'clear' command to pk;config 2022-02-11 12:25:56 -05:00
spiral
d0e9ad7193
fix: PKMessage.Member can be null 2022-02-11 12:09:58 -05:00
spiral
c958307698
refactor: rename discord.proto to state.proto 2022-02-07 11:07:45 -05:00
spiral
1ec3663f63
feat: add cluster ID to shard state 2022-02-07 11:05:55 -05:00
spiral
375758206e
fix: show correct name in entityReference when base name is private 2022-02-05 09:26:14 -05:00
spiral
8a9148cd32
fix: remove LastConnection check in shardUpTotal 2022-02-04 14:54:29 -05:00
spiral
fc8f1b7cd3
fix: don't require Redis for startup 2022-02-04 14:53:56 -05:00
spiral
8964d7f623
chore: lint 2022-02-04 14:52:06 -05:00
Ske
0977088753 feat: when the myriad is sys-- er, sus 2022-02-04 03:12:14 +01:00
Ske
ce546bd2d4 feat: dem of crassy (don't mind me) 2022-01-31 09:00:40 -05:00
Autumn Meadow
7dd88effb3
fix: emojis not showing up correctly in help embed 2022-01-27 18:45:44 -08:00
spiral
efaf814e12
fix: check if system exists in HandleSystemCommandsTargeted 2022-01-26 06:20:26 -05:00
spiral
c38ca2e7fa
feat: add git commit hash to Serilog context 2022-01-24 08:13:59 -05:00
spiral
8ce7465177
fix: don't crash in lists when searching for a string longer than 256 characters 2022-01-23 01:47:55 -05:00
spiral
84e7e71f88
fix(logclean): use application ID rather than bot user ID when needed 2022-01-23 01:47:04 -05:00
spiral
0419ced0d2
feat: store shard status in Redis 2022-01-22 03:52:52 -05:00
spiral
22faa47d00
refactor: make Help.cs content static 2022-01-22 03:22:15 -05:00
spiral
df6a6fcf12
refactor: don't DI IDatabase and ModelRepository into bot command classes 2022-01-22 03:05:01 -05:00
spiral
89c44a3482
feat: cache Discord DM channels in database 2022-01-22 02:47:47 -05:00
spiral
ddbf0e8691
Revert "feat: remove 2000-character limit for proxied messages"
This reverts commit 7cc2aab1f0.
2022-01-21 18:24:55 -05:00
spiral
31a129dabf
fix: check HasNext after matching message in EditMessage, use PKSyntaxError instead of PKError 2022-01-21 17:10:00 -05:00
spiral
4a739c2d61
feat: better error reporting settings 2022-01-21 00:10:51 -05:00
spiral
f9aba1f129
feat: move a couple of commands to MatchToggle 2022-01-21 00:00:54 -05:00
spiral
e42002b754
fix: add missing return in pk;debug proxy 2022-01-21 00:00:26 -05:00
spiral
aad9f04b6f
feat: add 'enabled' phrasing and MatchFlag to MatchToggle, clean up 2022-01-20 23:59:04 -05:00
spiral
84529f6f32
fix: put Serilog event ID / shard ID in same scope as Sentry error ID 2022-01-20 23:38:58 -05:00
spiral
7aae41c080
feat: clean up log cleanup
- fix Carl-bot's user ID
- remove Logger#6278 (has been offline since 2020)
- remove webhook name checks, and rely on application ID instead
- add premium version of some bots
2022-01-20 23:37:32 -05:00
spiral
c6e4c862b8
feat: update Discord status only on identify
See <https://github.com/discord/discord-api-docs/issues/4073#issuecomment-1016762755>

We still update status when restarting cluster, because it doesn't really matter if the session dies in that case (we're already restarting / going to reidentify)
2022-01-20 05:52:40 -05:00
spiral
b586ef5d0a
feat: add true/false to MatchToggle 2022-01-20 05:24:28 -05:00
spiral
1626e0f548
feat: better command parsing for pk;config 2022-01-19 18:59:44 -05:00
spiral
c7851f6f5a
fix: merge system/group frontpercent code, fix flags 2022-01-19 17:59:01 -05:00
spiral
bf122f1046
feat: update command help for pk;autoproxy 2022-01-19 17:40:27 -05:00
spiral
d19242b89d
feat: add 'sa' alias to serveravatar command 2022-01-19 17:23:10 -05:00
rladenson
c62b9c2d40
feat: add -with-displayname flag to lists 2022-01-19 17:21:37 -05:00
spiral
2e17522de6
refactor: reorganize a few lines in Misc.cs 2022-01-19 17:18:31 -05:00
spiral
a16903037f
fix: don't try to re-send stickers and activity invites 2022-01-14 23:22:12 -05:00
spiral
2639989183
fix git merge from #412 2022-01-14 23:16:10 -05:00
rladenson
f3869dbcbe
feat: rework group list into member list 2022-01-14 22:30:02 -05:00
spiral
0afe031284
fix build error in Misc.cs 2022-01-14 21:51:43 -05:00
spiral
f08524ee19
fix: don't leak the existence of private info in lists (#412) 2022-01-14 19:44:44 -05:00
spiral
50a24f03a7
refactor: only pass shard ID to event handlers instead of full shard object 2022-01-14 18:39:03 -05:00
spiral
bf80dd0988
refactor: don't get user from cache in ReactionAdded 2022-01-14 15:29:15 -05:00
spiral
8e119d0d42
refactor: don't pass through channel ID to LogMessage 2022-01-14 15:12:10 -05:00
spiral
df9e7c3eb9
fix: correctly check log blacklist for messages edited outside the target guild 2022-01-14 15:11:42 -05:00
spiral
7cc2aab1f0
feat: remove 2000-character limit for proxied messages 2022-01-14 15:08:39 -05:00
spiral
d58cc216c0
fix: unbreak error reporting for @mention prefix 2022-01-14 15:05:46 -05:00
spiral
dfc9f8fcfb
feat: add cluster ID to Serilog enricher 2022-01-13 12:28:08 -05:00
spiral
a507883dda
fix: add CheckOwnGroup in Random.GroupMember 2022-01-13 12:27:00 -05:00
spiral
2aead40449
feat: add Redis identify ratelimiter 2022-01-13 12:26:25 -05:00
spiral
34df19c551
fix: don't delete rows from messages table when the associated member is deleted 2022-01-11 09:43:55 -05:00
spiral
54830fd264
feat: add ProBot log cleanup 2022-01-11 08:13:01 -05:00
Spectralitree
93f1158d33 fix: display correct color when looking up other systems' groups 2022-01-09 13:21:22 +01:00
spiral
6eda5c4229
feat: only run migrations in single-process mode 2022-01-07 14:26:41 -05:00
spiral
39c8590bce
refactor: move ExtractNodeIndex to BotConfig.Cluster class 2022-01-07 14:25:08 -05:00
spiral
0d42328694
fix: check for ReadMessageHistory in pk;debug permissions 2022-01-07 14:22:44 -05:00
spiral
d3682b94b2
feat: add attachment icon to reply card if referenced message has embeds 2022-01-07 14:21:52 -05:00
spiral
91213faa50
fix: correctly throw missing content error in pk;edit 2022-01-07 14:06:37 -05:00
spiral
50f9465826
fix: missing checkownsystem in pk;s icon 2021-12-24 19:28:46 -05:00
spiral
2c4fbf249f
fix: check own system in pk;s description, pk;s icon 2021-12-24 19:19:50 -05:00
spiral
4d04f859e6
feat: revert system/group card member count privacy 2021-12-23 23:23:16 -05:00
spiral
67ed03067a
fix: missing return in pk;system colour 2021-12-23 23:17:25 -05:00
spiral
391d6de6e4
fix: show group member count in group card, rather than system member count 2021-12-23 23:16:29 -05:00
spiral
cc0779e0e8
fix: use direct lookup context for pk;member <name> groups 2021-12-23 23:11:55 -05:00
spiral
546cdc93c4
fix: change use target everywhere in SystemConfig instead of ctx.System 2021-12-23 23:02:21 -05:00
spiral
816dfaafb6
fix: re-add privacy checks to SystemConfig
... oops
2021-12-23 22:50:16 -05:00
spiral
ec027f0366
fix: check for attachments in pk;system banner 2021-12-23 22:49:15 -05:00
spiral
91256368f5
fix: throw error when pk;edit message is too long 2021-12-07 02:02:22 -05:00
spiral
cb1d4c98c7
fix: incorrect pk;config private <target> command parsing 2021-12-07 01:58:05 -05:00
spiral
ad6addc2fd
refactor: move command parse errors to own file 2021-12-07 01:36:54 -05:00
spiral
9926bbbd8b
feat: don't hide information from own system when directly requested
in lists, pk;m <ref> <prop>, etc
2021-12-07 01:32:29 -05:00
spiral
56e266190f
fix: create guild config in log cleanup command 2021-12-06 04:02:25 -05:00
spiral
32bea51e18
feat: config setting to default show/hide private info 2021-12-06 04:01:42 -05:00
spiral
455830a2b5
feat: public/private lookup flags, consistency 2021-12-06 00:32:54 -05:00
spiral
aacf5909a9
feat: clean up command parsing for pk;system 2021-12-05 17:21:31 -05:00
spiral
0110a0b53f
fix MatchMultiple parsing 2021-12-04 18:15:26 -05:00
spiral
59f0a5ec3e
fix: parse default privacy config commands correctly 2021-12-01 17:18:38 -05:00
spiral
4064078309
fix: document member/group default privacy correctly 2021-12-01 17:09:32 -05:00
spiral
1ff6bb76cd
feat: config setting to automatically set members/groups to private when creating 2021-12-01 11:48:49 -05:00
spiral
7c37726afb
fix: replace broken private IP checker with IPNetwork library 2021-12-01 11:48:14 -05:00