Direct messages no longer work
-
Hello
@nebulon @atrilahiji
Would you mind providing me a short explanation I went through this site >> pixelfed.social signed up checked direct messages it works fine including editing post works fine too this site pixelfed.social has less error than what i installed through cloudron it has the same version as mine which I’m running the updated version I wonder why isn’t direct messages working on my install??im not sure whether it was a cloudron install or a direct install but why does features lack?
-
On to your consideration https://pixelfed.social works fine with its desired features but pixelfed instance installed through cloudron lacks features like direct messaging and gif post preview , post color filters any idea why ?
-
-
@onlybro I setup an instance for our company at https://pixelfed.cloudron.io/ to test things out. gif animation does work for me but after applying any effect it loses the animation.
I can also see the filters:
I can see the DM screen but there is some app error when I try to see the messages:
Overall, most of the bugs are just app bugs, please do report them upstream: https://github.com/pixelfed/pixelfed . I think you reported some already. Note that we don't develop the app itself, we only packaged it.
-
Like counts of image post are also not visible you can try my site like counts don’t work on iPhone behavior that can be produced is
Here’s my site https://spacemag.xyz
I have to like the post to see the count if someone else had liked it I cannot view it and even then if I like it and view most of the time I can only see my name on it it’s very rare I see the total profiles of those who had liked.
This moreover seems to be a conflict with ui or java from cloudron I guess ? It all works fine at pixelfed.social though, which is a raw installation of pixelfed.
I’m not certain but all i can say is there is something that’s not right
-
Latest dev seems to throw an exception with direct messages.
17:25:36 - [2021-05-11 00:25:36] production.ERROR: Trying to get property 'private_key' of non-object {"userId":1,"exception":"[object] (ErrorException(code: 0): Trying to get property 'private_key' of non-object at /app/code/app/Util/ActivityPub/HttpSignature.php:40) 17:25:36 - [stacktrace] 17:25:36 - #0 /app/code/app/Util/ActivityPub/HttpSignature.php(40): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError() 17:25:36 - #1 /app/code/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(420): App\\Util\\ActivityPub\\HttpSignature::App\\Util\\ActivityPub\\{closure}() 17:25:36 - #2 /app/code/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(418): Illuminate\\Cache\\Repository->rememberForever() 17:25:36 - #3 /app/code/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(261): Illuminate\\Cache\\CacheManager->__call() 17:25:36 - #4 /app/code/app/Util/ActivityPub/HttpSignature.php(41): Illuminate\\Support\\Facades\\Facade::__callStatic() 17:25:36 - #5 /app/code/app/Services/ActivityPubFetchService.php(20): App\\Util\\ActivityPub\\HttpSignature::instanceActorSign() 17:25:36 - #6 /app/code/app/Util/ActivityPub/Helpers.php(230): App\\Services\\ActivityPubFetchService::get() 17:25:36 - #7 /app/code/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(385): App\\Util\\ActivityPub\\Helpers::App\\Util\\ActivityPub\\{closure}() 17:25:36 - #8 /app/code/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(418): Illuminate\\Cache\\Repository->remember() 17:25:36 - #9 /app/code/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(261): Illuminate\\Cache\\CacheManager->__call() 17:25:36 - #10 /app/code/app/Util/ActivityPub/Helpers.php(237): Illuminate\\Support\\Facades\\Facade::__callStatic() 17:25:36 - #11 /app/code/app/Util/ActivityPub/Helpers.php(242): App\\Util\\ActivityPub\\Helpers::fetchFromUrl() 17:25:36 - #12 /app/code/app/Util/ActivityPub/Helpers.php(474): App\\Util\\ActivityPub\\Helpers::fetchProfileFromUrl() 17:25:36 - #13 /app/code/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(385): App\\Util\\ActivityPub\\Helpers::App\\Util\\ActivityPub\\{closure}() 17:25:36 - #14 /app/code/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(418): Illuminate\\Cache\\Repository->remember() 17:25:36 - #15 /app/code/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(261): Illuminate\\Cache\\CacheManager->__call() 17:25:36 - #16 /app/code/app/Util/ActivityPub/Helpers.php(536): Illuminate\\Support\\Facades\\Facade::__callStatic() 17:25:36 - #17 /app/code/app/Util/ActivityPub/Helpers.php(542): App\\Util\\ActivityPub\\Helpers::profileFirstOrNew() 17:25:36 - #18 /app/code/app/Services/WebfingerService.php(40): App\\Util\\ActivityPub\\Helpers::profileFetch() 17:25:36 - #19 /app/code/app/Services/WebfingerService.php(20): App\\Services\\WebfingerService->run() 17:25:36 - #20 /app/code/app/Http/Controllers/DirectMessageController.php(608): App\\Services\\WebfingerService::lookup() 17:25:36 - #21 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\DirectMessageController->composeLookup() 17:25:36 - #22 /app/code/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\\Routing\\Controller->callAction() 17:25:36 - #23 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Route.php(254): Illuminate\\Routing\\ControllerDispatcher->dispatch() 17:25:36 - #24 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Route.php(197): Illuminate\\Routing\\Route->runController() 17:25:36 - #25 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Router.php(695): Illuminate\\Routing\\Route->run() 17:25:36 - #26 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}() 17:25:36 - #27 /app/code/app/Http/Middleware/AccountInterstitial.php(42): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #28 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\AccountInterstitial->handle() 17:25:36 - #29 /app/code/app/Http/Middleware/Localization.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #30 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\Localization->handle() 17:25:36 - #31 /app/code/app/Http/Middleware/TwoFactorAuth.php(33): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #32 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\TwoFactorAuth->handle() 17:25:36 - #33 /app/code/app/Http/Middleware/EmailVerificationCheck.php(34): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #34 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\EmailVerificationCheck->handle() 17:25:36 - #35 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #36 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle() 17:25:36 - #37 /app/code/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(44): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #38 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Auth\\Middleware\\Authenticate->handle() 17:25:36 - #39 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #40 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle() 17:25:36 - #41 /app/code/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #42 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle() 17:25:36 - #43 /app/code/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #44 /app/code/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest() 17:25:36 - #45 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Session\\Middleware\\StartSession->handle() 17:25:36 - #46 /app/code/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #47 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle() 17:25:36 - #48 /app/code/app/Http/Middleware/FrameGuard.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #49 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\FrameGuard->handle() 17:25:36 - #50 /app/code/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #51 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle() 17:25:36 - #52 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #53 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Router.php(697): Illuminate\\Pipeline\\Pipeline->then() 17:25:36 - #54 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Router.php(672): Illuminate\\Routing\\Router->runRouteWithinStack() 17:25:36 - #55 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Router.php(636): Illuminate\\Routing\\Router->runRoute() 17:25:36 - #56 /app/code/vendor/laravel/framework/src/Illuminate/Routing/Router.php(625): Illuminate\\Routing\\Router->dispatchToRoute() 17:25:36 - #57 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(166): Illuminate\\Routing\\Router->dispatch() 17:25:36 - #58 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}() 17:25:36 - #59 /app/code/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #60 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\\Proxy\\TrustProxies->handle() 17:25:36 - #61 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #62 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle() 17:25:36 - #63 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle() 17:25:36 - #64 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #65 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle() 17:25:36 - #66 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle() 17:25:36 - #67 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #68 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle() 17:25:36 - #69 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #70 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle() 17:25:36 - #71 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() 17:25:36 - #72 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(141): Illuminate\\Pipeline\\Pipeline->then() 17:25:36 - #73 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter() 17:25:36 - #74 /app/code/public/index.php(57): Illuminate\\Foundation\\Http\\Kernel->handle() 17:25:36 - #75 {main} 17:25:36 - "}
-
Reported here - https://github.com/pixelfed/pixelfed/issues/2752 . @onlybro I will stop debugging since I don't think I can do anything to fix this without having a stable release where DM is known to work. You will have to reach out to the upstream author.
-
Reporting from GitHub
“
I was able to reproduce the direct message issue within a docker container, and I think I know why it is happening.Line
in the account controller, the following SQL query is generated:
[2021-05-10 21:41:58] local.DEBUG: array (
0 =>
array (
'query' => 'select * fromprofiles
whereid
!= ? andprofiles
.id
= ? andprofiles
.deleted_at
is null limit 1',
'bindings' =>
array (
0 => 297440899045134336,
1 => '297465207490482176',
),
'time' => 37.91,
),
)As you can see, the id in the URL gets treated as string and that's why the query does not return any results.
“ -
Reporting from GitHub
“
I was able to reproduce the direct message issue within a docker container, and I think I know why it is happening.
In these lines in the account controller, the following SQL query is generated:
[2021-05-10 21:41:58] local.DEBUG: array (
0 =>
array (
'query' => 'select * fromprofiles
whereid
!= ? andprofiles
.id
= ? andprofiles
.deleted_at
is null limit 1',
'bindings' =>
array (
0 => 297440899045134336,
1 => '297465207490482176',
),
'time' => 37.91,
),
)
As you can see, the id in the URL gets treated as string and that's why the query does not return any results.
I made a preliminary patch on this branch with int casts wherever necessary and it resolves the issue locally, but there must be some sort of underlying issue that needs to be investigated to tell why this stopped working
“ -