Commit graph

305 commits

Author SHA1 Message Date
Jesse Wierzbinski 04651746bb
refactor(plugin): 🚚 Move SSO login callback route to OpenID plugin 2024-10-11 15:15:06 +02:00
Jesse Wierzbinski f26ab0f0e6
feat(plugin): Add override settings to plugin loading 2024-10-06 15:55:15 +02:00
Jesse Wierzbinski c0805ff125
fix(config): 🐛 Make some default config values more sensible 2024-10-04 18:36:32 +02:00
Jesse Wierzbinski b53307c824
refactor: 🚚 Explicitely add extensions to all imports 2024-10-04 15:22:48 +02:00
Jesse Wierzbinski 5ec19f037a
refactor: 🚨 Remove unnecessary function overloads 2024-10-03 13:54:09 +02:00
Jesse Wierzbinski 835cdc3f18
refactor: 🚨 Make class methods that don't use this static 2024-10-03 13:51:19 +02:00
Jesse Wierzbinski 3fade63567
refactor: 🚨 Use shortand property syntax for object literals 2024-10-03 13:41:58 +02:00
Jesse Wierzbinski 076e930369
refactor: 🚨 Remove process.exit usage 2024-10-03 11:59:26 +02:00
Jesse Wierzbinski b1d8595a7c
refactor: 🚨 Remove unnecessary async keywords 2024-10-03 11:43:16 +02:00
Jesse Wierzbinski 3879763971
refactor(plugin): ♻️ Add more exports to @versia/kit for database behaviour 2024-09-30 14:34:43 +02:00
Jesse Wierzbinski 19213ec29e
refactor(api): ♻️ Move token endpoint to OpenID plugin, add revoke endpoint 2024-09-30 13:42:12 +02:00
Jesse Wierzbinski 74ec563ba5
refactor(api): ♻️ Move all SSO account linking endpoint logic to OpenID plugin 2024-09-25 12:31:35 +02:00
Jesse Wierzbinski 96d1805925
refactor(api): ♻️ Move /api/v1/sso to OpenID plugin 2024-09-24 14:42:39 +02:00
Jesse Wierzbinski c7221ae9d1
refactor(plugin): ♻️ Remove mandatory manifest inside Plugin constructor 2024-09-23 11:54:42 +02:00
Jesse Wierzbinski d224d7b9b8
feat(plugin): Add dynamic plugin and manifest loader 2024-09-23 11:51:15 +02:00
Jesse Wierzbinski f623f2c1a0
refactor(plugin): ♻️ Move plugin manifests to json file, add JSON schema 2024-09-23 10:34:14 +02:00
Jesse Wierzbinski b755fc5d62
refactor(api): ♻️ Move more API routes to new OpenAPI format 2024-09-15 14:28:47 +02:00
Jesse Wierzbinski 2e41bfeee4
chore: ⬆️ Upgrade dependencies 2024-09-14 17:32:32 +02:00
Jesse Wierzbinski 5d2aa82247
feat(api): Add response logging 2024-09-04 22:52:43 +02:00
Jesse Wierzbinski d51bae52c6
refactor(plugin): ♻️ Move parts of OpenID logic to plugin 2024-08-29 20:32:04 +02:00
Jesse Wierzbinski 69d7d50239
refactor(api): ♻️ Remove old redirect() and response() in favour of Hono's builtins 2024-08-28 17:01:56 +02:00
Jesse Wierzbinski f9023893af
refactor: 🚚 Point everything to the new GitHub org 2024-08-27 21:40:42 +02:00
Jesse Wierzbinski bcbc9e6bf1
refactor(api): ♻️ Refactor more routes into OpenAPI-compatible formats 2024-08-27 18:55:02 +02:00
Jesse Wierzbinski b0b750c05d
refactor(api): ♻️ Convery more routes to use OpenAPI 2024-08-27 17:40:58 +02:00
Jesse Wierzbinski 1ab1c68d36
refactor(api): 🚚 Refactor authentication middleware and implement some OpenAPI routes 2024-08-27 17:20:36 +02:00
Jesse Wierzbinski bec60fbf96
refactor(api): 🔥 Remove Glitch-FE explicit support 2024-08-27 16:45:05 +02:00
Jesse Wierzbinski cea0544686
fix(federation): 🏷️ Correctly make InstanceMetadata description a string 2024-08-27 15:51:41 +02:00
Jesse Wierzbinski fbb845f7f8
refactor(federation): 🚚 Move old function to User 2024-08-27 15:50:14 +02:00
Jesse Wierzbinski fbe86043b7
refactor(api): ♻️ Replace old client library with new version (@versia/client) 2024-08-26 19:40:15 +02:00
Jesse Wierzbinski 42e198ca0e
chore(federation): 👽 Finish initial Versia Working Draft 4 update 2024-08-26 19:27:40 +02:00
Jesse Wierzbinski c3fa867e74
chore(federation): 👽 Initial Versia Working Draft 4.0 support 2024-08-26 19:06:49 +02:00
Jesse Wierzbinski bc0943c569
feat(database): Implement read replicas for database 2024-08-26 18:04:22 +02:00
Jesse Wierzbinski 832f72160f
refactor: 🚚 Use more Versia branding and assets 2024-08-24 15:34:49 +02:00
Jesse Wierzbinski 771097d037
refactor: 🚚 Begin rebranding to Versia Server 2024-08-19 15:16:01 +02:00
Jesse Wierzbinski 64cef5c6d6
fix: 🐛 Fix incorrect path in import 2024-08-19 14:49:36 +02:00
Jesse Wierzbinski 4a1ad9dd96
refactor: 🔥 Remove old config-manager symlink 2024-08-19 14:43:54 +02:00
DevMiner d2113e349f fix(federation): unfollows don't send Undos to the followee 2024-08-02 17:53:29 +02:00
Jesse Wierzbinski 3baac85cf7
refactor: ♻️ Rewrite relationship system 2024-07-27 20:46:19 +02:00
Jesse Wierzbinski 627afffdb2
fix(federation): ✏️ Correct typo causing incorrect URIs 2024-07-26 21:29:37 +02:00
Jesse Wierzbinski 903415161e
fix(federation): 🐛 Fix issues with note federation URIs 2024-07-26 21:19:41 +02:00
Jesse Wierzbinski 92a80d97c2
fix(federation): 🐛 Force add content-type http header 2024-07-26 20:35:26 +02:00
Jesse Wierzbinski 385bdc13da
fix(federation): 🐛 Send correct headers in inbox requests 2024-07-26 19:51:08 +02:00
Jesse Wierzbinski 558ae72c82
fix(federation): 🐛 Fix new notes being federated to ALL remote users, regardless of visibility 2024-07-26 19:21:03 +02:00
Jesse Wierzbinski 2f823317c2
refactor(federation): 🔥 Remove old code and simplify federation requests 2024-07-26 18:51:39 +02:00
Jesse Wierzbinski ad9ed2598c
refactor(federation): ⬆️ Refactor code to use v2.2 of federation SDK 2024-07-26 18:07:11 +02:00
Jesse Wierzbinski 1216e278e8
fix(federation): 🐛 Fix some errors not being ignored properly 2024-07-26 17:20:37 +02:00
Jesse Wierzbinski 6ae13265fa
feat(federation): Make server actor available on /users/actor 2024-07-26 00:32:33 +02:00
Jesse Wierzbinski bc25896ed8
feat(config): 🧑‍💻 Add custom tracing URL support to Sentry config 2024-07-26 00:02:48 +02:00
Jesse Wierzbinski 7d1522cc1e
feat(config): Add JSON schema for config 2024-07-25 23:51:00 +02:00
Jesse Wierzbinski 5a52ac005b
fix(federation): 🚑 Don't re-parse response as JSON when FederationRequester has done so already 2024-07-24 19:25:14 +02:00
Jesse Wierzbinski 0bc6a89706
feat(api): Add more Sentry logging 2024-07-24 19:04:00 +02:00
Jesse Wierzbinski daba8e8178
refactor(federation): ♻️ Refactor code to use less fetch calls and instead use FederationRequester 2024-07-24 18:52:30 +02:00
Jesse Wierzbinski 833f261392
fix(config): 🚑 Add default value for Sentry config 2024-07-24 18:15:33 +02:00
Jesse Wierzbinski 5061735da7
feat: Add Sentry support 2024-07-24 18:10:29 +02:00
Jesse Wierzbinski 8213ca62e0
chore: ⬆️ Upgrade @lysand-org/federation to latest 2024-07-23 00:13:46 +02:00
Jesse Wierzbinski 42ff591e48
fix(federation): 🐛 Fix fetching of ActivityPub users not working anymore 2024-07-17 15:37:36 +02:00
Jesse Wierzbinski be881f18cd
feat(api): Add new endpoint to get a user by its username 2024-07-17 14:02:29 +02:00
Jesse Wierzbinski cc8a97ae79
fix(config): 🐛 Make bridge url default to undefined, not "" 2024-07-16 23:36:36 +02:00
Jesse Wierzbinski f2c9814171
fix(config): 🐛 Ensure bridge config is optional 2024-07-16 23:33:11 +02:00
Jesse Wierzbinski aae99c804a
fix(federation): 🐛 Don't try to fetch from ActivityPub instances if no bridge is configured 2024-07-16 23:30:52 +02:00
Jesse Wierzbinski ff315af230
feat(federation): Add ActivityPub bridge support with CLI command 2024-07-16 23:29:20 +02:00
Jesse Wierzbinski 57b295ccf2
fix(cli): 🐛 Don't federate changes to remote users, initialize search indexer on all CLI commands 2024-06-29 22:55:50 -10:00
Jesse Wierzbinski cea9452127
refactor(federation): ♻️ Replace WebFinger code with @lysand-org/federation logic, add new debug command 2024-06-29 22:24:10 -10:00
Jesse Wierzbinski 38c8ea24a9
refactor(federation): 🔥 Remove some old SQL queries for Instances 2024-06-29 21:08:03 -10:00
Jesse Wierzbinski f2b0de779b
refactor: ♻️ Store instance federation protocol in database, refactor fetcher 2024-06-29 20:58:39 -10:00
Jesse Wierzbinski 19c15f7e96
refactor: ♻️ Replace Meilisearch with Sonic 2024-06-28 23:40:44 -10:00
Jesse Wierzbinski 106e34848a
refactor(api): 🏷️ Replace API types with those from @lysand-org/client 2024-06-28 20:36:15 -10:00
Jesse Wierzbinski faf829437d
refactor: ♻️ Rewrite media management code 2024-06-28 20:10:02 -10:00
Jesse Wierzbinski d09f74e58a
refactor: 🚚 Rename functions, move getUrl to Attachment 2024-06-28 17:50:56 -10:00
Jesse Wierzbinski bc8220c8f9
refactor: ♻️ Replace logging system with @logtape/logtape 2024-06-26 13:11:39 -10:00
Jesse Wierzbinski 51cbb22eb0
fix(config): 🐛 Allow empty proxy address (in case config value isn't set) 2024-06-25 18:00:03 -10:00
Jesse Wierzbinski b8b822e553
feat(config): Add support for HTTP proxies on outgoing requests 2024-06-25 17:13:40 -10:00
Jesse Wierzbinski 0ecb65de29
refactor: ♻️ Move config checker code into its own file 2024-06-25 16:30:51 -10:00
Jesse Wierzbinski 8a774fa05d
refactor(plugin): ♻️ Use enum instead of strings 2024-06-21 23:44:21 -10:00
Jesse Wierzbinski 98f8ec071c
feat(plugin): Initialize new plugin system 2024-06-21 18:22:53 -10:00
Jesse Wierzbinski 70cd00cfa8
refactor(federation): ⬆️ Use @lysand-org/federation v2.0.0 2024-06-19 13:21:02 -10:00
Jesse Wierzbinski de9dca5735
feat(config): Add option to never convert vector images 2024-06-16 01:39:16 -10:00
Jesse Wierzbinski 6ef3a854d9
feat(api): Allow animated media to be uploaded 2024-06-16 01:15:49 -10:00
Jesse Wierzbinski c764cc044d
fix: 🚑 Sleep process instead of exiting it on error
Avoids Docker's auto-restart policy from causing infinite reboots and hanging the system
2024-06-13 23:44:46 -10:00
Jesse Wierzbinski b7f8f6689e
fix(config): 🐛 Fix crashes with default config values 2024-06-13 23:29:41 -10:00
Jesse Wierzbinski edbe6e45b2
fix: 🐛 Fix incorrect docs, make exit code 0 instead of 1 2024-06-13 23:26:20 -10:00
Jesse Wierzbinski 99f14ba114
feat(api): Automatically register user when connecting with OIDC profile not already existing 2024-06-13 23:05:04 -10:00
Jesse Wierzbinski 8f9472b221
feat(api): Implement Challenges API 2024-06-13 22:03:51 -10:00
Jesse Wierzbinski 00fd751c2a
fix(federation): 🐛 Fix mention URIs in Lysand Notes being empty string for local users 2024-06-13 11:53:41 -10:00
Jesse Wierzbinski 0359ba13c4
fix(api): 🛂 Don't automatically remove trailing slashes from OIDC issuer URLs 2024-06-13 11:33:07 -10:00
Jesse Wierzbinski c3271ba264
docs: 📝 More work on JSDoc 2024-06-12 22:52:03 -10:00
Jesse Wierzbinski 527137f279
chore: ⬆️ Upgrade dependencies 2024-06-12 20:39:53 -10:00
Jesse Wierzbinski 83275be536
refactor: ⚰️ Remove dead code and useless files 2024-06-12 20:34:17 -10:00
Jesse Wierzbinski d301d4da09
refactor(api): 🎨 Don't use node:crypto for random strings 2024-06-12 19:38:26 -10:00
Jesse Wierzbinski d8cb1d475b
refactor(api): 🎨 Refactor emojis into their own class 2024-06-12 18:52:01 -10:00
Jesse Wierzbinski c61f519a34
refactor(api): 🎨 Refactor complex functions into smaller ones 2024-06-12 18:16:59 -10:00
Jesse Wierzbinski a1e02d0d78
refactor: 🚨 Turn every linter rule on and fix issues (there were a LOT :3) 2024-06-12 16:26:43 -10:00
Jesse Wierzbinski 2e98859153
refactor(database): ♻️ Move Attachment into its own class 2024-06-12 15:03:57 -10:00
Jesse Wierzbinski 5565bf00de
refactor(database): 🎨 Improve database handlers to have more consistent naming and methods 2024-06-12 14:45:07 -10:00
Jesse Wierzbinski b17b2be683
fix(api): 🔒 Properly proxy role icons through media proxy 2024-06-11 18:57:04 -10:00
Jesse Wierzbinski efe202ea27
feat(api): Add Lysand roles to user accounts 2024-06-11 14:29:59 -10:00
Jesse Wierzbinski ffcf01e3cd
feat(api): Add TOS and Privacy Policy support 2024-06-11 09:55:40 -10:00
Jesse Wierzbinski b3bace4d53
fix(api): 🛂 Fix incorrect redirect URI passed to external OIDC providers, normalize issuer URL 2024-06-10 15:58:51 -10:00
Jesse Wierzbinski d2f5aaf114
fix(api): 🐛 Add default role with default permissions in roles API 2024-06-09 16:14:36 -10:00
Jesse Wierzbinski 11369649c0
fix(api): 🐛 Give correct URI/URL values for notes in API 2024-06-09 15:17:03 -10:00