Commit graph

237 commits

Author SHA1 Message Date
s1idewhist1e
5eec5ac2ef feat: Make follower counts for remote users correct (#9705)
#9293

Not sure if this is the right approach for this

Co-authored-by: s1idewhist1e <trombonedude05@gmail.com>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9705
Co-authored-by: s1idewhist1e <s1idewhist1e@noreply.codeberg.org>
Co-committed-by: s1idewhist1e <s1idewhist1e@noreply.codeberg.org>
2023-03-17 01:16:31 +00:00
Kaity A
55b2708009 Set movedToUri & alsoKnownAs null when undefined 2023-03-04 08:24:22 +00:00
Kio-td
070ec13665 Merge branch 'develop' of https://codeberg.org/calckey/calckey into develop 2023-02-12 12:11:21 -05:00
ThatOneCalculator
1d89cc3e3d docs: 📝 custom assets 2023-02-11 13:16:45 -08:00
daikei
13af804543 Discard notes made before Fedi's existence, or after today (#9605)
This PR should kill #9531 - Safeguarding against posts that are made before 2007 (Identica being made in 2008, the 'first ever activitypub software' according to wikipedia.)

Personally, if gone unnoticed, I believe that notes from the past can be used as an attack vector to silently flood a database.

Co-authored-by: Kio-td <kio.thedev@gmail.com>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9605
Co-authored-by: daikei <daikei@noreply.codeberg.org>
Co-committed-by: daikei <daikei@noreply.codeberg.org>
2023-02-11 21:05:31 +00:00
Kio-td
7465e8461d Fix bad math 2023-02-11 07:18:56 -05:00
Kio-td
1a90496318 Merge branch 'develop' of https://codeberg.org/Daikei/calckey into develop 2023-02-11 06:26:31 -05:00
Kio-td
4ff3b39ba3 Discard if 3 days in the future 2023-02-11 06:26:05 -05:00
daikei
7c64103668 Merge branch 'develop' into develop 2023-02-11 11:18:22 +00:00
Kio-td
1104db515e Semi-Kill #9531 2023-02-11 06:13:55 -05:00
ThatOneCalculator
13238973b6 chore: Rome Formatting 2023-02-10 15:41:19 -08:00
ThatOneCalculator
76011a3f28 fix: 🔒 prevent issues 2023-02-10 11:14:33 -08:00
Kio-td
79a3aadc60 Clean up bad coding practices 2023-02-10 00:38:23 -05:00
Kio-td
cdc210f0f0 Close #9473 2023-02-10 00:19:47 -05:00
ThatOneCalculator
1da7464ee7 clean up w/ rome 2023-01-16 11:19:20 -08:00
ThatOneCalculator
bb61a9684b Remove usused eslint files 2023-01-12 22:27:17 -08:00
ThatOneCalculator
2aab2de38d refactor: 🎨 rome 2023-01-12 20:40:33 -08:00
Kainoa Kanter
d9d124cbf0 Admin set default reactions (#9404)
Co-authored-by: ThatOneCalculator <kainoa@t1c.dev>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9404
2023-01-05 04:06:48 +00:00
ThatOneCalculator
6e59319430 fix: 🐛 federate fedibird quote properly
https://codeberg.org/calckey/calckey/pulls/9399#issuecomment-758047
2023-01-04 09:43:01 -08:00
Effy Elden
e68fff9e48 Set quoteUri in rendered ActivityPub objects 2023-01-04 13:32:06 +11:00
Effy Elden
1c269ee9ac Support quotes provided as 'quoteUri' field 2023-01-04 12:08:09 +11:00
ThatOneCalculator
a6324564e2 fixes 2023-01-03 09:12:26 -08:00
Daikei!
79776677a1 add .js to the end of two type-scripts, fixing a critical error that crashes calckey 2022-12-27 15:38:05 +00:00
Johann150
6bd46b077c activitypub: block check for resolving collections 2022-12-25 15:10:44 -05:00
Francis Dinh
48f0a83016 add checks to resolver and performOneActivity 2022-12-25 15:10:33 -05:00
Francis Dinh
8ff259f573 Block subdomains of blocked hosts 2022-12-24 14:46:09 -05:00
Cleo
530664ccbc Merge pull request '[Chore] Partial translating of ActivityPub/Boot code + Formatting' (#9229) from prettykool/calckey:develop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9229
2022-12-18 21:01:22 +00:00
PK
54c3d43ccf Make indentation not completely suck 2022-12-15 18:09:00 -06:00
PK
2285812a88 Formatting 2022-12-15 16:13:48 -06:00
PK
52cc014e4d Translate portions of backend/src/remote/activitypub, the suspend-user service, and the boot process.
Some of these weren't translated so I thought I'd do 'em cause why not ¯\_(ツ)_/¯
2022-12-15 12:44:03 -06:00
cutestnekoaqua
e26724b01e fix federation of moved to to pleroma
because it expects it to be non-existant if its null.
2022-12-14 17:19:31 +01:00
cutestnekoaqua
f31bd5fe48 add local move follower migration 2022-12-12 21:09:51 +01:00
cutestnekoaqua
f91f89bd1d federation 💀 2022-12-12 21:09:51 +01:00
ThatOneCalculator
353537662b fix alsoKnownAs federation 2022-12-12 11:25:28 -08:00
ThatOneCalculator
804224f92c Bug fixes, use calckey.js 2022-12-11 19:24:12 -08:00
ThatOneCalculator
6e283ef5e6 Reserve merge conflict 2022-12-11 17:07:57 -08:00
cutestnekoaqua
7b7752fb48 fix queue?
maybe pls

debug log

fixed stupidness again

fix ??

fix import

im a idiot lol

make remote mig work
2022-12-12 01:54:41 +01:00
cutestnekoaqua
0814b60964 change move sql query 2022-12-12 01:54:41 +01:00
cutestnekoaqua
245e1bf935 fix remote move queue 2022-12-12 01:54:36 +01:00
cutestnekoaqua
d582aae655 make remote mig work 2022-12-09 01:57:15 +01:00
cutestnekoaqua
fd9c4761e5 im a idiot lol 2022-12-09 01:35:15 +01:00
cutestnekoaqua
dd3a0f2fbe fix import 2022-12-09 01:20:30 +01:00
cutestnekoaqua
8cd54ef940 fix ?? 2022-12-09 01:17:31 +01:00
cutestnekoaqua
9395ff7cfa fixed stupidness again 2022-12-09 00:11:37 +01:00
cutestnekoaqua
2ce9f10707 debug log 2022-12-09 00:08:33 +01:00
cutestnekoaqua
002d614f25 maybe pls 2022-12-08 20:02:55 +01:00
cutestnekoaqua
90a8c7135d fix queue? 2022-12-08 19:28:48 +01:00
cutestnekoaqua
85bd231a5e change move sql query 2022-12-08 15:53:37 +01:00
cutestnekoaqua
635290bd33 fix remote move queue 2022-12-07 18:16:37 +01:00
cutestnekoaqua
795a5f0760 update person model 2022-12-06 23:49:21 +01:00
cutestnekoaqua
ee78b0f115 fix ap person to db model
fixed entries of movedToUri and added entries of alsoKnownAs
2022-12-06 18:05:36 +01:00
Cleo
6141e1a723 Merge pull request 'just using merge bc easier' (#9185) from recieve_moveto into account_migration
Reviewed-on: https://codeberg.org/thatonecalculator/calckey/pulls/9185
2022-12-06 16:56:12 +00:00
cutestnekoaqua
a3011e6b8e commit 1 of 2 of fixing the Account migration to Calckey 2022-12-06 17:46:08 +01:00
ThatOneCalculator
4fb1084335 fixes 2022-12-04 17:24:27 -08:00
ThatOneCalculator
a643fefc5c fix 2022-12-04 17:23:43 -08:00
ThatOneCalculator
dbb950d0eb movedTo -> movedToUri 2022-12-04 17:20:36 -08:00
ThatOneCalculator
0e61b83460 fix import once and for all 2022-12-04 13:06:49 -08:00
ThatOneCalculator
3fbe6e02a1 ? 2022-12-04 13:03:17 -08:00
ThatOneCalculator
d2f28edbd7 more jb cleanups 2022-12-04 13:01:00 -08:00
ThatOneCalculator
dfbe7d7d5e pov: cleo uses jetbrains 2022-12-04 12:57:43 -08:00
ThatOneCalculator
bb7678fd45 fix imports 2022-12-04 12:46:10 -08:00
Kainoa Kanter
29c1b81f12 Merge pull request 'develop' (#9178) from develop into account_migration
Reviewed-on: https://codeberg.org/thatonecalculator/calckey/pulls/9178
2022-12-04 06:26:26 +00:00
cutestnekoaqua
db52926594 Implement recieve moveTo
Untested, hopefully it works..

Signed-off-by: cutestnekoaqua <waterdev@galaxycrow.de>
2022-12-03 01:23:02 +01:00
skeh
0ad0ddfee9 Merge pull request 'hotfix/misskey-forkbomb' (#8) from hotfix/misskey-forkbomb into stage
Reviewed-on: https://code.vtopia.live/Vtopia/MissV/pulls/8
2022-12-01 00:30:55 -08:00
cutestnekoaqua
ea3e13f190 Create move type 2022-11-23 21:49:52 +01:00
ThatOneCalculator
2c0cf33798 init 2022-11-17 13:54:25 -08:00
Johann150
85c584f582 server: avoid adding suspended instances to deliver queue
This should reduce the performance hit when adding large numbers of
instances to the deliver queue by making the check for suspended and
dead instances a bulk operation.

Changelog: Changed
Reviewed-on: https://akkoma.dev/FoundKeyGang/FoundKey/pulls/215
2022-11-09 17:19:29 -08:00
ThatOneCalculator
0e173ac498 change to click.self 2022-10-28 10:52:13 -07:00
ThatOneCalculator
972de1a3fd Merge remote-tracking branch 'nullobsi/secure-fetch' into develop 2022-09-13 20:23:22 -07:00
nullobsi
1fc7ad48e3 Add Secure Mode and Private Mode
- Add instance actor
- Add private mode, which uses an allowlist
- Add Secure Mode, restricts access to blocked instances
2022-09-06 20:46:41 -07:00
ThatOneCalculator
1ef1907f4b Always signToActivityPubGet 2022-08-22 23:44:26 -07:00
ThatOneCalculator
6987348062 import order 2022-08-04 18:13:56 -07:00
ThatOneCalculator
65bad44c2b thumbs up or star trggers pleroma like 2022-08-04 18:12:57 -07:00
Johann150
49686050cc backend: fix lint "no-throw-literal" 2022-08-04 13:36:37 -07:00
ThatOneCalculator
80ae73f543 Merge remote-tracking branch 'misskey/develop' into develop 2022-07-21 23:43:30 -07:00
xianon
fed327b437 リモートユーザーを正しくブロックできるように修正する (#9027) 2022-07-22 15:41:31 +09:00
ThatOneCalculator
31da3c16c3 Properly apply star is like patch 2022-07-19 15:23:26 -07:00
nullobsi
8f6605eb63 Add Secure Mode and Private Mode
- Add instance actor
- Add private mode, which uses an allowlist
- Add Secure Mode, restricts access to blocked instances
2022-07-17 15:25:39 -07:00
yzhe819
2d69600539 chore: fix lint errors (#8981) 2022-07-10 19:47:29 +09:00
Johann150
d78b20ba07 fix lints 2022-06-24 12:44:22 +02:00
Johann150
ebd33b9281 fix: render empty note content correctly
Instead of coercing to `null`, coercing to an empty string should simplify handling.
2022-06-16 12:51:44 +02:00
Johann150
efe35ea9e0 fix: correctly render note text
Fix a regression from #8787 that was previously fixed in #8440.
2022-06-16 12:32:09 +02:00
Johann150
c7a2c42cc2 enhance(federation): use ActivityPub defined property in favour of proprietary property. (#8787)
* add activitypub `source` property

* parse MFM from new `source` attribute
2022-06-10 14:31:58 +09:00
syuilo
3661d1bc33 fix bug 2022-06-04 15:15:44 +09:00
Johann150
102012aa9d fix: add id for activitypub follows (#8689)
* add id for activitypub follows

* fix lint

* fix: follower must be local, followee must be remote

Misskey will only use ActivityPub follow requests for users that are local
and are requesting to follow a remote user. This check is to ensure that
this endpoint can not be used by other services or instances.

* fix: missing import

* render block with id

* fix comment
2022-06-04 13:52:42 +09:00
Johann150
86c04c4489 fix: ensure resolver does not fetch local resources via HTTP(S) (#8733)
* refactor: parseUri types and checks

The type has been refined to better represent what it actually is. Uses of
parseUri are now also checking the parsed object type before resolving.

* cannot resolve URLs with fragments

* also take remaining part of URL into account

Needed for parsing the follows URIs.

* Resolver uses DbResolver for local

* remove unnecessary use of DbResolver

Using DbResolver would mean that the URL is parsed and handled again.
This duplicated processing can be avoided by querying the database directly.

* fix missing property name
2022-06-04 11:29:20 +09:00
Johann150
336eea9d93 fix: correctly render empty note text (#8746)
Ensure that the _misskey_content attribute will always exist. Because
the API endpoint does not require the existence of the `text` field,
that field may be `undefined`. By using `?? null` it can be ensured
that the value is at least `null`.

Furthermore, the rendered HTML of a note with empty text will also be
the empty string. From git blame it seems that this behaviour was added
because of a Mastodon bug that might have previously existed. Hoever,
this seems to be no longer the case as I can find mastodon posts that
have empty content.

The code could be made a bit more succinct by using the null coercion
operator.
2022-06-03 23:18:44 +09:00
Johann150
ec47b46423 refactor: improve code quality (#8751)
* remove unnecessary if

`Array.prototype.some` already returns a boolean so an if to return
true or false is completely unnecessary in this case.

* perf: use count instead of find

When using `count` instead of `findOneBy`, the data is not
unnecessarily loaded.

* remove duplicate null check

The variable is checked for null in the lines above and the function
returns if so. Therefore, it can not be null at this point.

* simplify `getJsonSchema`

Because the assigned value is `null` and the used keys are only
shallow, use of `nestedProperty.set` seems inappropriate. Because the
value is not read, the initial for loop can be replaced by a `for..in`
loop.

Since all keys will be assigned `null`, the condition of the ternary
expression in the nested function will always be true. Therefore the
recursion case will never happen. With this the nested function can be
eliminated.

* remove duplicate condition

The code above already checks `dragging` and returns if it is truthy.
Checking it again later is therefore unnecessary.

To make this more obvious the `return` is removed in favour of using
an if...else construct.

* remove impossible "unknown" time

The `ago` variable will always be a number and all non-negative numbers
are already covered by other cases, the negative case is handled with
`future` so there is no case when `unkown` could be achieved.
2022-05-29 15:15:52 +09:00
Johann150
fef27a1e92 chore: remove unused imports 2022-05-28 21:17:23 +02:00
Johann150
d6046c75aa fix: wrong type for isVisibleForMe 2022-05-24 10:12:42 +02:00
Johann150
848ac5a75d fix(activitypub): add authorization checks (#8534)
* fix spelling

* fix(activitypub): add authorization checks
2022-05-19 20:40:16 +09:00
syuilo
8609c11944 refactor 2022-04-17 21:01:02 +09:00
syuilo
b2bc3a020f refactor
Resolve #8467
2022-04-17 20:58:37 +09:00
syuilo
1c12f0e16c refactor: fix type 2022-04-17 20:44:21 +09:00
syuilo
c905bb6cbf refactor: fix type 2022-04-17 13:26:31 +09:00
syuilo
264fd9f4af refactor: fix type 2022-04-17 13:14:29 +09:00
syuilo
3a2a9e3031 refactor: fix type 2022-04-17 12:59:41 +09:00
syuilo
343555038f lint 2022-04-16 17:18:51 +09:00
syuilo
457286ad2b fix type 2022-04-03 16:40:47 +09:00
syuilo
2dca8fef31 fix type 2022-04-03 16:35:36 +09:00
syuilo
2e9afc526d fix types 2022-04-03 16:30:22 +09:00
syuilo
f4f6a76ecc chore: fix lint 2022-04-03 15:33:22 +09:00
syuilo
23053d812d fix syntax error 2022-04-02 15:31:11 +09:00
Johann150
ec9e0db07a fix(federation): avoid duplicate activity delivery (#8429)
* prefer shared inbox over individual inbox

* no new shared inbox for direct recipes

* fix type error
2022-04-02 15:16:35 +09:00
syuilo
54e1c7f60e perf(server): use cached user info in getUserFromApId 2022-03-26 19:09:57 +09:00
syuilo
1dfee2467a refactor 2022-03-26 18:42:37 +09:00
syuilo
3b54ff4173 perf(server): improve deliver performance 2022-03-26 17:43:08 +09:00
syuilo
523ee14a73 refactor: migrate to typeorm 3.0 (#8443)
* wip

* wip

* wip

* Update following.ts

* wip

* wip

* wip

* Update resolve-user.ts

* maxQueryExecutionTime

* wip

* wip
2022-03-26 15:34:00 +09:00
syuilo
921299b02f perf(server): refactor and performance improvements 2022-03-25 16:27:41 +09:00
Johann150
37486e7ba6 recognize null in _misskey_content for notes (#8440) 2022-03-23 03:16:04 +09:00
MeiMei
d35101c12b Use unique id for Undo (#8434) 2022-03-22 00:39:00 +09:00
syuilo
161461f352 perf(server): reduce db query 2022-03-21 05:42:11 +09:00
syuilo
c1ce301d24 perf(server): reduce db query 2022-03-20 15:44:49 +09:00
xianon
db64fe0ef2 リレーが動作するように修正する (#8396) 2022-03-12 13:21:04 +09:00
syuilo
02f4d97987 fix esm 2022-03-01 01:26:32 +09:00
syuilo
218e756555 fix esm 2022-03-01 01:24:50 +09:00
tamaina
13cc69fe1c Fix avatar/banner proxy (#8346)
* Fix avatar/banner proxy

Co-authored-by: mei23 <m@m544.net>

* use getAvatarUrl

* fix

* join avatar and banner to improve performance

* join

* Update hybrid-timeline.ts

* fix

Co-authored-by: mei23 <m@m544.net>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-02-27 13:59:10 +09:00
syuilo
94228778c9 refactor: Use ESM (#8358)
* wip

* wip

* fix

* clean up

* Update tsconfig.json

* Update activitypub.ts

* wip
2022-02-27 11:07:39 +09:00
syuilo
036c9571e2 refacator: fix typw 2022-02-19 14:53:33 +09:00
nullobsi
92e94d688c feat: Option to show replies in timeline (rebase #7685) (#8202)
* Add an option for timeline replies. Credit to Emilis (puffaboo)

* update db on request
2022-02-06 16:02:48 +09:00
syuilo
71f817d9aa refactor 2022-02-04 11:10:53 +09:00
syuilo
7868d202f8 refactor 2022-02-03 21:43:53 +09:00
syuilo
591f53fd06 refactor 2022-02-03 21:20:25 +09:00
syuilo
5414944b21 refactor: fix type 2022-01-26 18:42:14 +09:00
MeiMei
3150708d7a refactor, enhance: ドライブ引数のオブジェクト化, 追加時のcomment指定 (#8180)
* refactor: ドライブの引数をオブジェクト化する Resolve #8177

* Resolve #8181

* fix

* archivePath
2022-01-23 22:52:35 +09:00
MeiMei
988f34f77d Unifying Misskey-specific IRIs in JSON-LD @context Resolve #8116 (#8178)
* Unifying Misskey-specific IRIs in JSON-LD `@context` Resolve #8116

* CHANGELOG
2022-01-23 01:52:35 +09:00
syuilo
e1b9c22874 enhance: convert svg to png of custom emojis 2022-01-21 18:47:02 +09:00
Johann150
627e3c07b9 enhance: Forward report (#8001)
* implement sending AP Flag object

Optionally allow a user to select to forward a report about a remote
user to the other instance. This is added in a backwards-compatible way.

* add locale string

* forward report only for moderators

* add switch to moderator UI to forward report

* fix report note url

* return forwarded status from API

apparently forgot to carry this over from my testing environment

* object in Flag activity has to be an array

For correct interoperability with Pleroma the "object" property of the Flag
activity has to be an array.

This array will in the future also hold the link to respective notes, so it
makes sense to correct this on our side.

* Update get-note-menu.ts

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-01-21 03:06:38 +09:00
syuilo
21a7cb9546 refactor(server): use insert instead of save 2022-01-03 02:20:30 +09:00
syuilo
9b8d526ed0 fix lint 2021-12-09 23:58:30 +09:00
syuilo
ba06b44bff refactoring
https: //github.com/misskey-dev/misskey/pull/7901
Co-Authored-By: MeiMei <30769358+mei23@users.noreply.github.com>
2021-12-03 11:43:05 +09:00
nullobsi
d6f087495e feat: Undo Accept (#7980)
* allow breaking of follow

* send undo

* delete by using reject follow
2021-12-03 11:14:44 +09:00
syuilo
30a7f8bad1 fix for lint 2021-11-13 19:10:14 +09:00
syuilo
a39c964847 viaMobileフラグ廃止
Close #7965
2021-11-12 15:11:20 +09:00
syuilo
713ff43e9b fix lint errors 2021-11-12 10:52:10 +09:00
syuilo
edb3f09bdd use eslint 2021-11-12 10:35:41 +09:00
syuilo
14148f6c4a refactoring
Resolve #7779
2021-11-12 02:02:25 +09:00