Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"No valid root folder found (.nomedia?)" in browser when selecting folder for timeline #1329

Open
JitteryDoodle opened this issue Oct 29, 2024 · 0 comments
Labels
needs triage To be triaged

Comments

@JitteryDoodle
Copy link

Describe the bug

I've been trying to get both this app and Recognize to work properly. Luckily, memories does scan all of my photos, unlike Recongize which only seems to want to scan my Photos folder. That being said, I'm getting a "No valid root folder found (.nomedia?)" error in my browser's console when I try to select the root folder for my timeline. Because of this, I cannot use memories even on mobile, where I assume I run into the same issue. I have double and triple checked that the root folder does not have .nomedia, and I even went as far as removing all of my .nomedia files, to no avail.

Steps To Reproduce

  1. Setup Memories on Nextcloud following the configuration steps
  2. Finish a complete scan of my photos
  3. Attempt to select root folder by clicking "Click here to start"
  4. After selecting, the folder selection panel goes away and nothing happens.
  5. Look in the console and see a 500 error with the message "No valid root folder found (.nomedia?)"

Platform

- OS: Ubuntu, Bazzite, Android
- Browser: Firefox Nightly
- Memories Version: 7.4.1
- Nextcloud Version: 30.0.1 (Docker)
- PHP Version: 8.3.13

Screenshots

No response

Additional context

  • Any errors in the JS console?
    Yes:
{
  "stack": "J@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1577784\nFe@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1589190\nv@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1593866\nEventHandlerNonNull*64917/We</<@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1594125\n64917/We<@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1593454\nmt@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1600571\npromise callback*_request@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1603261\nrequest@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1601925\n64917/</At.prototype[e]@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1603693\n64917/i/<@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1572082\nbegin@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:2137680\nasync*us@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:434503\ns@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:427193\nus@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:434503\n27507/e.prototype.$emit@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:456370\nclick@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:1026324\nus@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:434503\ns@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:427193\n27507/ji/a._wrapper@https://192.168.1.11/apps/memories/js/memories-main.js?v=34001c27-2:2:467415\n",
  "message": "Request failed with status code 500",
  "name": "AxiosError",
  "code": "ERR_BAD_RESPONSE",
  "config": {
    "transitional": {
      "silentJSONParsing": true,
      "forcedJSONParsing": true,
      "clarifyTimeoutError": false
    },
    "adapter": [
      "xhr",
      "http",
      "fetch"
    ],
    "transformRequest": [
      null
    ],
    "transformResponse": [
      null
    ],
    "timeout": 0,
    "xsrfCookieName": "XSRF-TOKEN",
    "xsrfHeaderName": "X-XSRF-TOKEN",
    "maxContentLength": -1,
    "maxBodyLength": -1,
    "env": {},
    "headers": {
      "Accept": "application/json, text/plain, */*",
      "requesttoken": "xxxx",
      "X-Requested-With": "XMLHttpRequest"
    },
    "method": "get",
    "url": "/apps/memories/api/days?folder=%2F&recursive=1",
    "axios-retry": {
      "retries": 0,
      "shouldResetTimeout": false,
      "validateResponse": null,
      "retryCount": 0,
      "lastRequestTime": 1730230018764
    }
  },
  "request": {},
  "response": {
    "data": {
      "message": "No valid root folder found (.nomedia?)"
    },
    "status": 500,
    "statusText": "",
    "headers": {
      "cache-control": "no-cache, no-store, must-revalidate",
      "content-length": "52",
      "content-security-policy": "default-src 'none';base-uri 'none';manifest-src 'self';frame-ancestors 'none'",
      "content-type": "application/json; charset=utf-8",
      "date": "Tue, 29 Oct 2024 19:26:58 GMT",
      "feature-policy": "autoplay 'none';camera 'none';fullscreen 'none';geolocation 'none';microphone 'none';payment 'none'",
      "referrer-policy": "no-referrer",
      "server": "nginx",
      "x-content-type-options": "nosniff",
      "x-firefox-spdy": "h2",
      "x-frame-options": "SAMEORIGIN",
      "x-permitted-cross-domain-policies": "none",
      "x-request-id": "51awdeO1WYgdarEd77Ol",
      "x-robots-tag": "noindex, nofollow, noindex, nofollow",
      "x-xss-protection": "1; mode=block"
    },
    "config": {
      "transitional": {
        "silentJSONParsing": true,
        "forcedJSONParsing": true,
        "clarifyTimeoutError": false
      },
      "adapter": [
        "xhr",
        "http",
        "fetch"
      ],
      "transformRequest": [
        null
      ],
      "transformResponse": [
        null
      ],
      "timeout": 0,
      "xsrfCookieName": "XSRF-TOKEN",
      "xsrfHeaderName": "X-XSRF-TOKEN",
      "maxContentLength": -1,
      "maxBodyLength": -1,
      "env": {},
      "headers": {
        "Accept": "application/json, text/plain, */*",
        "requesttoken": "xxxxx",
        "X-Requested-With": "XMLHttpRequest"
      },
      "method": "get",
      "url": "/apps/memories/api/days?folder=%2F&recursive=1",
      "axios-retry": {
        "retries": 0,
        "shouldResetTimeout": false,
        "validateResponse": null,
        "retryCount": 0,
        "lastRequestTime": 1730230018764
      }
    },
    "request": {}
  },
  "status": 500
}
  • Any errors in the Nextcloud server logs?
    No, weirdly enough. No errors are in nginx, php, or docker logs.

Possibly related to #1028, although unlike that issue I don't have errors in my server logs, which is why I'm creating a new issue.

Whatever this issue is, it's probably the same reason Recongize doesn't scan all of my files.

@JitteryDoodle JitteryDoodle added the needs triage To be triaged label Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs triage To be triaged
Projects
None yet
Development

No branches or pull requests

1 participant