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
spiral
cc4e659cec
feat: import/export system config
2021-11-30 17:04:42 -05:00
spiral
9097142718
fix: wrong command help in Config
2021-11-30 15:40:00 -05:00
spiral
56d07e0f2d
feat: pk;config
2021-11-29 21:35:21 -05:00
spiral
d195c80d92
feat: set shard status to offline when starting up
2021-11-28 20:50:13 -05:00
spiral
99a9ec7928
feat: beta bot patches
2021-11-27 11:09:08 -05:00
spiral
997458c9dc
feat: show custom prefix in bot status
2021-11-27 11:08:28 -05:00
spiral
3b14d0b0d8
fix: use correct prop for ctx.Parameters
2021-11-27 10:50:01 -05:00
spiral
979ab714c3
refactor: move ContextExts to own folder, CommandTree / command defs to CommandMeta folder
2021-11-26 22:04:04 -05:00
spiral
4450ae4214
feat: go through some TODOs
2021-11-26 22:02:58 -05:00
spiral
04d78e3348
refactor: remove some unused code
2021-11-26 21:14:09 -05:00
spiral
1918c56937
feat: upgrade to .NET 6, refactor everything
2021-11-26 21:10:56 -05:00
spiral
b8e2ebd470
Merge branch 'feat/webhooks' into main
2021-11-25 17:15:42 -05:00
spiral
ece17f7470
feat(webhooks): verify that url is accessible before saving it
2021-11-25 16:45:00 -05:00
spiral
bc7e0df872
feat(webhooks): SUCCESSFUL_IMPORT event, better behaviour when creating entities
2021-11-25 15:33:02 -05:00
spiral
269646a455
fix(webhook): don't try escaping backslashes in a raw string
2021-11-22 17:05:13 -05:00
spiral
7a5ba8246e
refactor: cache own user ID in IDiscordCache
...
- remove Cluster.User
- remove Cluster.Application (it was only being used as an alternative to Cluster.User for some reason)
- move Bot.PermissionsIn to DiscordCacheExtensions
2021-11-21 19:42:35 -05:00
spiral
24ac0725af
refactor: move guildMember caching to IDiscordCache
2021-11-21 12:06:08 -05:00
spiral
99b81085ed
fix: fix 'members' string in group limit warning
2021-11-21 09:05:16 -05:00
spiral
9c95ca2ed9
fix: temporarily disable last message query in member_list
2021-11-21 09:03:47 -05:00
spiral
40dbf7dad6
fix(webhooks): don't allow Discord webhook URLs
2021-11-19 15:54:39 -05:00
spiral
75c35b7f85
fix(webhooks): CheckSystem before trying to set a webhook URL
2021-11-19 15:53:48 -05:00
spiral
1822788e4d
feat(webhooks): add message create event
2021-11-19 11:14:40 -05:00
spiral
e8beb245da
fix(webhooks): fix error when DNS entry has non-ipv4 addresses
2021-11-19 10:58:12 -05:00
spiral
b1f4253efb
fix: show correct file size in 'file too large' error message
2021-11-19 10:22:11 -05:00
spiral
0ca356eec3
feat: add support for attachment descriptions
2021-11-19 09:34:52 -05:00
spiral
36acb5bae6
feat: add correct error about guild boost file size limit
2021-11-19 08:11:23 -05:00
spiral
923ad100e5
lint
2021-11-19 07:57:01 -05:00
spiral
0efaab6d95
refactor: don't use 'out' in IDiscordCache methods
...
this change is required for async cache (.NET doesn't support async ref/out params)
2021-11-18 13:11:02 -05:00
spiral
e7f36eb31f
feat: async cache
...
this breaks logging bot permissions to Sentry.
we haven't had a need to check those recently (permissions issues were because of broken cache), so this is fine for now
this should be re-added in the future though
2021-11-17 20:41:02 -05:00
spiral
45258d519e
feat: allow proxying in guild voice channels
2021-11-17 15:55:54 -05:00
spiral
8df259a40d
feat: change member/group lookup order, add -id flag
2021-11-17 09:30:19 -05:00
spiral
19628ec400
feat: add showing avatar URL in short list
2021-11-14 11:10:19 -05:00
spiral
cb38b6809d
fix: don't spam Sentry with caught exceptions
2021-11-11 06:31:12 -05:00
spiral
f7b48ab30d
fix: FromDateTimeUtc needs, as mentioned, an UTC datetime
2021-11-10 23:50:44 -05:00
spiral
343fafe9f0
feat: respect Discord permissions in pk;message and pk;edit
2021-11-10 23:46:16 -05:00
spiral
48d4009c69
fix: fix reporting Discord response metrics to influxdb
2021-11-09 02:19:31 -05:00
spiral
24a549341e
feat: don't call GetCurrentProcess twice
2021-11-09 01:51:02 -05:00
spiral
35bbf199f6
feat: add config setting to disable sending errors
...
we've disabled/re-enabled these a few times in code now...
2021-11-09 01:50:09 -05:00
spiral
ec3795f9d0
feat: globally rate-limit sending errors, rather than per-channel
2021-11-09 01:48:47 -05:00
spiral
e5c74edd85
feat: ignore database timing out
2021-11-09 01:31:42 -05:00
spiral
b4e8dda9dd
fix: update sentry, correctly configure sentry dsn
2021-11-09 01:31:06 -05:00
spiral
6da1bbd267
feat: sort by display name in short list
2021-11-08 10:49:50 -05:00
spiral
c9e2425a67
fix: disable error reporting... again
2021-11-07 12:25:20 -05:00
spiral
be443caccf
fix: off-by-one error in switching list pages
2021-11-07 12:24:06 -05:00
spiral
d19f6456a7
feat: show full commit version hash in sentry logs
2021-11-07 03:09:45 -05:00
spiral
38cbca1b34
feat: respect guild boost file size limit when re-sending attachments
2021-11-04 14:13:43 -04:00
rladenson
b1bd563dad
feat: jump to page ( #401 )
2021-11-04 05:52:49 -04:00
spiral
a81ffc3399
feat(webhooks): add basic commands
2021-11-03 02:01:35 -04:00
spiral
c1f05eecf8
feat: rename Commands/Token to Commands/Api
2021-11-03 01:36:03 -04:00
spiral
29b28ba742
lint >:(
2021-11-02 22:47:14 -04:00
spiral
21e3e61db0
fix: correctly handle missing role cache in message embed
2021-11-02 22:36:14 -04:00
spiral
b430446171
feat: specify custom Discord base URL
...
for use with twilight_http_proxy or similar
2021-11-02 05:36:53 -04:00
spiral
14b0e98791
feat: remove DiscordRequestObserver
2021-11-02 05:34:17 -04:00
spiral
f78d4844e2
feat: add 'full' argument to pk;s frontpercent command
2021-11-01 02:35:29 -04:00
spiral
8d02af7b94
refactor: move GroupAddRemoveResponseService into GroupMemberUtils
...
(it's not a service)
2021-10-31 01:11:10 -04:00
spiral
1f2043c8ac
fix: 'pk;member commands' is too long and throws an error
2021-10-30 20:45:36 -04:00
spiral
3e2441cf3a
feat: add 'pk;s <id> avatar' command
2021-10-30 19:02:21 -04:00
spiral
d9da50c189
feat: throw exception
2021-10-30 18:49:36 -04:00
Spectralitree
e0c43a9af7
feat: add "today" argument to pk;m birthday ( #398 )
2021-10-29 17:44:51 -04:00
spiral
f897ce5a45
fix: re-enable error messages for explicit commands
2021-10-29 17:34:28 -04:00
Katrix
b998636cbe
feat: add -raw flag to pk;msg ( #399 )
2021-10-29 16:42:10 -04:00
spiral
be5bf0cfb7
feat: misc pk;log channel changes
...
- show currently set log channel if no arguments are present
- throw error if someone tries to set the log channel to an invalid channel type
- throw error if bot is missing permissions to log in the new channel
2021-10-29 13:28:27 -04:00
spiral
13fa78987c
fix: accept channel ID in MatchChannel
2021-10-29 13:04:41 -04:00
spiral
3bc451eb4b
feat: move scheduled tasks to separate project
2021-10-15 06:27:38 -04:00
Ske
071e8b0791
Disable sending internal error messages for now
2021-10-13 23:30:47 +02:00
spiral
655d0d6c44
fix: add missing await
2021-10-06 19:49:11 -04:00
spiral
92c1b4de56
feat: add reaction checkmark on command message delete in DMs
2021-10-06 19:46:49 -04:00
spiral
ecce906c99
fix: add missing await
2021-10-05 03:17:51 -04:00
spiral
0dd20c64ce
feat: update lock files
2021-10-03 05:34:33 -04:00
spiral
a546ebc888
fix: check correct length for fronthistory embed
2021-10-03 04:34:26 -04:00
spiral
c31ea56bc9
fix Discord per-guild avatars in replies
...
because Discord changed the URL format, for some reason
2021-09-30 15:36:01 -04:00
spiral
f785fa1204
feat: add HttpRequestException to IsOurProblem
2021-09-29 21:51:54 -04:00
spiral
92e45a07ff
refactor: add SqlKata for SQL generation, move connection handling into ModelRepository
2021-09-29 21:51:38 -04:00
spiral
fb4aaad19f
lint
2021-09-26 22:50:08 -04:00
spiral
0517c76abf
feat: delete command messages with pk;msg -delete
2021-09-26 22:49:43 -04:00
spiral
fa66fbe247
move admin check to ContextChecksExt, allow pk;debug proxy for staff in support server
2021-09-26 20:42:08 -04:00
Fiona
94f4f970ea
Fix <text> brackets also matching markdown
2021-09-26 20:23:59 -04:00
BeautifulPixel
7d60b3e7cf
Add switch editing functionality
2021-09-26 20:08:38 -04:00
spiral
e3fa0f3b32
fix(MatchRaw commands): don't skip matching flags when setting new value
2021-09-26 17:30:30 -04:00
spiral
d49b9f9bb7
ignore reactions added by the bot itself
2021-09-25 15:04:06 -04:00
Ske
8aa448c475
Fix executing some commands without defs
2021-09-25 20:24:16 +02:00
Ske
b6fc86d427
Collect command runtime metrics
2021-09-25 20:15:24 +02:00
spiral
db5fae0fb4
feat: edit messages in threads
2021-09-24 19:03:40 -04:00
spiral
c472a7f6df
lint/fixes, add group patch validation
2021-09-22 13:48:34 -04:00
spiral
bc2c198a82
group import/export
2021-09-21 21:42:41 -04:00
spiral
a09f819924
re-enable FixSameName (with database fix)
2021-09-18 19:14:08 -04:00
spiral
07b12f39b0
aaaaaaa
2021-09-13 08:42:51 -04:00
spiral
78ab3f8bcd
feat: don't show an error when running raw pk;commands
2021-09-13 04:39:06 -04:00
spiral
d005358acc
feat: add channel-specific permcheck
2021-09-13 04:21:03 -04:00
spiral
9914dd719c
feat: add -raw flag to servertag
2021-09-13 03:26:24 -04:00
spiral
a2bf70b395
feat: don't try to match other systems' members in switch / group add commands
2021-09-13 03:14:59 -04:00
spiral
dec228d5bd
feat: add limit reach warning to pk;group new
2021-09-13 02:46:40 -04:00
spiral
b390c8ab62
fix MatchRaw commands one more time :/
2021-09-13 02:33:34 -04:00
spiral
2973325e12
fix: don't try deleting pk;msg -delete
message in DMs
2021-09-13 02:21:39 -04:00
spiral
42422f475b
feat: allow deleting *any* message in DMs
2021-09-13 02:13:36 -04:00
spiral
fc11a7b8ee
feat: raise command message retention time to 24 hours
2021-09-13 02:13:19 -04:00
spiral
13f5b63c59
feat: add last global restart time to pk;stats card
2021-09-13 01:57:51 -04:00
spiral
b3a8432039
fix: add NormalizeLineEndSpacing to pk;edit
2021-09-13 01:57:39 -04:00
spiral
a165a42046
fix MatchRaw commands *again*
2021-09-13 01:57:31 -04:00
spiral
bae883c11f
refactor: consolidate [x]TooLongErrors into StringTooLongError
2021-09-13 01:57:15 -04:00
spiral
95e0fcc36d
fix: missing returns for pk;s tag
command
2021-09-06 20:07:46 -04:00
spiral
b71e97a5e9
fix: actually pass group actioned/not actioned count properly to GenerateResponse
...
I hope this works. This code is all a mess. Refactor when?
2021-09-06 19:26:47 -04:00