Ske
d0d3579b17
Add server-specific member avatars
2020-02-12 17:42:12 +01:00
Ske
6d5004bf54
Large refactor and project restructuring
2020-02-12 15:16:19 +01:00
Ske
30ed293dc6
Change no-year sentinel value to 0004
...
This allows setting the date "Feb 29" with no year, since the year 0004 is a leap year in the Gregorian calendar, while the year 0001 isn't.
2020-02-09 22:36:02 +01:00
Ske
951b089c97
Handle imports from other systems/instances with different HIDs
2020-02-03 15:16:57 +01:00
Ske
7bdc3020b0
Handle malformed proxy tag importing correctly
2020-02-03 15:05:05 +01:00
Ske
026932049a
Properly invalidate account caches when unlinking
2020-02-03 15:04:53 +01:00
Ske
de427d8bfe
Properly invalidate account caches when deleting systems
2020-02-03 14:47:29 +01:00
Ske
82dfe43d5a
Rework caching
...
This does a *lot* of things. Essentially, it replaces the existing
individual proxy- and autoproxy caches on the bot end with a
global cache (in Core) that handles all the caching at once, and
automatically invalidates the cache once something changes in the
datastore.
This allows us to do proxying and autoproxying with *zero database
queries* (best-case).
2020-02-01 14:40:57 +01:00
Ske
a60be64551
Ensure metrics instance is a singleton
2020-02-01 12:33:43 +01:00
Ske
3b2167e16f
Shuffle dependencies around
2020-01-26 01:30:39 +01:00
Ske
1ea0526ef8
Migrate DI container to Autofac
2020-01-26 01:27:45 +01:00
Ske
b371c2f34d
Fix Npgsql deprecation error
2020-01-25 16:46:34 +01:00
Ske
83cfb3eb46
Add autoproxy functionality
2020-01-24 20:28:48 +01:00
Ske
57bc576de6
Add autoproxy management commands
2020-01-23 21:20:22 +01:00
Ske
ca37c7e6ca
Put the autoproxy settings in the correct class 👀
2020-01-23 20:29:22 +01:00
Ske
bf70a6e3e1
Add schema changes for autoproxy
2020-01-23 20:19:50 +01:00
Ske
b347d2d557
Add front history pagination; upgrade more store methods
2020-01-18 00:58:35 +01:00
Ske
8a689ac0f2
Upgrade various store methods to IAsyncEnumerable
2020-01-18 00:02:17 +01:00
Ske
0dd8988c08
Fix member count including private members in system card
2020-01-17 17:54:07 +01:00
Ske
991c00a4e6
Increase precision in exported timestamps
2020-01-17 17:43:06 +01:00
Ske
98613c4287
Add system and member privacy support
2020-01-11 16:51:13 +01:00
Ske
66eb012e4a
Fix database errors on first startup
2020-01-07 16:31:46 +01:00
Ske
64b633e6b4
Fix member avatar URL not showing up in API responses
2020-01-07 15:52:32 +01:00
Ske
54aa9fb7d7
Change handling of Tupperbox per-member tags
2019-12-28 15:53:11 +01:00
Ske
0f22285824
Upgrade API serialisation code to enable potential context-based serialisation
2019-12-28 15:52:59 +01:00
Ske
73b2631280
Optimize database queries for proxy filtering
2019-12-28 12:00:52 +01:00
Ske
4a30e56298
Add basic database schema migration system
2019-12-26 21:43:05 +01:00
Ske
4d07886ec8
Add server-specific display names
2019-12-26 20:39:47 +01:00
Ske
6a4c131d6d
Upgrade every dependency to latest compatible version
2019-12-23 15:53:20 +01:00
Ske
f2ce09d467
Upgrade to Npgsql 4.1.2
2019-12-23 13:55:56 +01:00
Ske
b4ad1e5041
Use asynchronous logging
2019-12-23 00:29:30 +01:00
Ske
d2205ea7e6
Update documentation with new features
2019-12-22 14:26:53 +01:00
Ske
639c813ce7
Add per-server per-system proxy enable toggle
2019-12-22 14:15:56 +01:00
Ske
d4c1a6b1fc
Add beginnings of new export/data system
2019-12-22 00:41:53 +01:00
Ske
9c9e48a799
Upgrade to .NET Core 3.1
2019-12-22 00:40:57 +01:00
Ske
5fc654b758
Add index to message table to speed up count querying
2019-12-21 21:42:34 +01:00
Ske
3b72fa720b
Add warning when setting proxy tags conflicting with another member's
2019-12-21 21:42:06 +01:00
Ske
530e3aa697
Fix null normalising utility
2019-12-02 16:56:35 +01:00
Ske
378cba09e5
Add channel blacklists for logging and proxying
...
Necessary database migrations for this commit:
alter table servers add column log_blacklist bigint[] not null default array[]::bigint[];
alter table servers add column blacklist bigint[] not null default array[]::bigint[];
2019-11-03 19:15:50 +01:00
Ske
53124776d4
Fix proxy tag field default type in schema
2019-11-02 23:38:25 +01:00
Ske
7c3b4b9af9
Add command to delete all switches
2019-11-02 22:46:51 +01:00
Ske
f259beae90
Fix importing members with no proxy tags
2019-11-02 20:45:47 +01:00
Ske
1a79d52bfb
Add importing of Tupperbox multibrackets
2019-10-30 14:11:24 +01:00
Ske
49dc25ee02
Allow keeping proxy tags when proxying messages.
...
Required database migration:
Closes #75 .
2019-10-30 09:26:50 +01:00
Ske
8604d25ffe
Fix legacy prefix/suffix API fields
2019-10-30 09:19:49 +01:00
Ske
5d63181cac
Fix exporting
2019-10-30 09:09:09 +01:00
Ske
393ee16c1b
Add support for multiple proxy tags
...
Tangentially closes #103 .
2019-10-30 08:18:59 +01:00
Noko
96b03495a4
Fix import from Tupperbox regression defect ( #137 )
...
* Fix bulk importer parameter and remove unused method
-Fixes AddSwitchesBulk post-refactor by passing in the switch timestamp instead of a set of PKMembers
-Removes unused RegisterSwitches method which was replaced by AddSwitchesBulk
* Fix import from Tupperbox regression defect
When converting a Tupperbox import file to the PluralKit format on import, this sets the Tupper's name as the member ID which seems like a reasonable default. I'm also initializing the switches collection (even though it's going to be empty in this case).
This fixes a regression defect introduced when switch import was implemented.
* Making converted Tupper DataFileMember Id a GUID instead
Member names aren't necessarily unique (even if they should be), and no reason not to use something we know will be unique...
2019-10-29 08:41:44 +01:00
Ske
545e8df6a7
Reduce the log level of various common events
2019-10-27 23:44:27 +01:00
Ske
46672d264c
Refactor log channel storage
2019-10-27 23:01:20 +01:00