nextcloud / social

🎉 Social can be used for work, or to connect to the fediverse!
https://apps.nextcloud.com/apps/social
GNU Affero General Public License v3.0
491 stars 59 forks source link

Profiles will not open in NC-28 #1883

Open teledyn opened 4 months ago

teledyn commented 4 months ago

Describe the bug requests to display profiles shows a spinning circle (ie 'waiting') that just continues to spin

To Reproduce Steps to reproduce the behavior: Either select the menu item to see my own profile, or click on a toot author

Expected behavior Prior to NC-28, this would display the standard ActivityPub profile for the given username.

Screenshots nothing to see, just the spinning circle

Client details:

Server details **Social app version:** Using the current git repo ``` nothing to commit, working tree clean /var/www/nextcloud /var/www/nextcloud/apps/social /var/www/nextcloud On branch master Your branch is up to date with 'origin/master'. ``` **Operating system**: Debian GNU/Linux 12. 6.1.21-v8+ (aarch64) **Web server:** Apache2 2.4.57-2 **Database:** MariaDB 1:10.11.4-1~deb12u1 **PHP version:** 8.3.3 **Nextcloud version:** (see Nextcloud admin page) 28.0.3.2
Logs #### Nextcloud log (data/nextcloud.log) ``` {"reqId":"S8rO73lrIOnIlxSD3cdw","level":1,"time":"2024-03-11T17:24:03+00:00","remoteAddr":"","user":"--","app":"mail","method":"","url":"--","message":"No iMIP messages to process.","userAgent":"--","version":"28.0.3.2","data":{"app":"mail"}} {"reqId":"Ze8-3-STvE_-3UnG-BOWNAAAAAc","level":2,"time":"2024-03-11T17:27:06+00:00","remoteAddr":"31.172.31.214","user":"--","app":"no app in context","method":"POST","url":"/index.php/apps/social/inbox","message":"500 - {\"status\":-1,\"exception\":\"OCA\\\\Social\\\\Tools\\\\Exceptions\\\\RequestNetworkException\",\"message\":\"28 - Operation timed out after 10000 milliseconds with 16 bytes received - {\\\"protocols\\\":[\\\"https\\\"],\\\"used_protocol\\\":\\\"https\\\",\\\"port\\\":0,\\\"host\\\":\\\"nerdculture.de\\\",\\\"url\\\":\\\"\\/users\\/iam_ovie\\\",\\\"timeout\\\":10,\\\"type\\\":0,\\\"cookies\\\":[],\\\"headers\\\":{\\\"user-agent\\\":\\\"Nextcloud Social 0.7.0\\\",\\\"Accept\\\":\\\"application\\/ld+json; profile=\\\\\\\"https:\\/\\/www.w3.org\\/ns\\/activitystreams\\\\\\\"\\\"},\\\"params\\\":[],\\\"data\\\":[],\\\"userAgent\\\":\\\"Nextcloud Social 0.7.0\\\",\\\"followLocation\\\":true,\\\"verifyPeer\\\":true,\\\"binary\\\":false,\\\"clientOptions\\\":[],\\\"localAddressAllowed\\\":true}\"}","userAgent":"http.rb/5.1.1 (Mastodon/4.2.8; +https://nerdculture.de/)","version":"28.0.3.2","data":[]} ``` #### Browser log ``` a) The javascript console log You are running Vue in development mode. Make sure to turn on production mode when deploying for production. See more tips at https://vuejs.org/guide/deployment.html [vue.runtime.esm.js:8793](webpack:///social/node_modules/vue/dist/vue.runtime.esm.js) Contacts Array(26) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ] [UnifiedSearchModal.vue:259](webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue) Search providers Array(25) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ] [UnifiedSearchModal.vue:255](webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue) [DEBUG] core: this browser is officially supported ! 🚀 Object { app: "core", uid: "garym", level: "1" } [ConsoleLogger.js:65:18](webpack:///nextcloud/node_modules/@nextcloud/logger/dist/ConsoleLogger.js) Got notification data, restoring default polling interval. [NotificationsApp.vue:376](webpack:///notifications/src/NotificationsApp.vue) [Vue warn]: Error in render: "TypeError: _vm.currentAccount is undefined" found in ---> at src/views/Profile.vue at src/App.vue [vue.runtime.esm.js:4605](webpack:///social/node_modules/vue/dist/vue.runtime.esm.js) TypeError: _vm.currentAccount is undefined render Profile.vue:15 VueJS 13 addAccount account.js:61 addAccount account.js:89 wrappedMutationHandler vuex.esm.js:844 commitIterator vuex.esm.js:466 commit vuex.esm.js:465 _withCommit vuex.esm.js:624 commit vuex.esm.js:464 boundCommit vuex.esm.js:409 _callee$ account.js:241 tryCatch account.js:2 makeInvokeMethod account.js:2 defineIteratorMethods account.js:2 asyncGeneratorStep account.js:3 _next account.js:4 promise callback*asyncGeneratorStep account.js:3 _next account.js:4 _asyncToGenerator account.js:4 _asyncToGenerator account.js:4 fetchAccountInfo account.js:259 wrappedActionHandler vuex.esm.js:851 dispatch vuex.esm.js:516 boundDispatch vuex.esm.js:406 _callee$ Profile.vue:60 tryCatch Profile.vue:2 makeInvokeMethod Profile.vue:2 defineIteratorMethods Profile.vue:2 asyncGeneratorStep Profile.vue:3 _next Profile.vue:4 _asyncToGenerator Profile.vue:4 _asyncToGenerator Profile.vue:4 beforeMount Profile.vue:72 VueJS 24 init vue-router.esm.js:3005 init vue-router.esm.js:3004 updateRoute vue-router.esm.js:2414 transitionTo vue-router.esm.js:2263 confirmTransition vue-router.esm.js:2402 step vue-router.esm.js:2084 step vue-router.esm.js:2091 step vue-router.esm.js:2091 step vue-router.esm.js:2091 runQueue vue-router.esm.js:2095 confirmTransition vue-router.esm.js:2397 step vue-router.esm.js:2084 step vue-router.esm.js:2088 iterator vue-router.esm.js:2384 resolve vue-router.esm.js:2127 once vue-router.esm.js:2203 [vue.runtime.esm.js:3049](webpack:///social/node_modules/vue/dist/vue.runtime.esm.js) ```

(Also the issue form here recommends using the Issue Template app, but that app says it requires NC-20 or earlier.)

Thatoo commented 3 months ago

Same issue here

teledyn commented 2 months ago

Problem persists in Nextcloud-29; I have attached the Firefox console output for first just loading the Social app, and then clicking on a remote profile. Hopefully it's helpful.

social-console.txt

teledyn commented 4 weeks ago

I did get a little further making this change with the current sources, based on someone else having the issue of this.$refs being undefined, I moved the line from the method to the mount, with no idea what any of this means!

--- a/src/components/MediaAttachment.vue
+++ b/src/components/MediaAttachment.vue
@@ -37,6 +37,7 @@ export default {
        },
        mounted() {
                this.drawBlurhash()
+               const ctx = this.$refs.canvas.getContext('2d')
        },
        methods: {
                drawBlurhash() {
@@ -44,7 +45,6 @@ export default {
                                return
                        }

-                       const ctx = this.$refs.canvas.getContext('2d')
                        const imageData = ctx.createImageData(this.attachment.meta.small.width, this.attachment.meta.small.height)

Does this make sense? I still do not get profiles in 29.0.2, the next puzzle is TypeError: _vm.currentAccount is undefined