ViewTube / viewtube

▶️ ViewTube: The open source, privacy-conscious way to enjoy your favorite YouTube content. Docs: https://viewtube.wiki, Status: https://uptime.viewtube.io
https://viewtube.io
GNU Affero General Public License v3.0
1.31k stars 75 forks source link

[BUG] Cannot read properties of undefined (reading 'match') #2988

Open wes1993 opened 1 week ago

wes1993 commented 1 week ago

Describe the Bug

When search somethig the error "Cannot read properties of undefined (reading 'match')" appear. I have see that chosing in filter some value make the search working again

Steps to Reproduce the Bug

  1. Search Something
  2. Click enter

Expected Behaviour

Should search using some predefined filter, example all

Screenshot/Screen recording

image

Device Info

Additional Context

gareins commented 1 day ago

This generates errors in logs:

viewtube-main       | [ViewTube] 1      - 10/18/2024, 11:23:06 AM   ERROR [ExceptionsHandler] Package subpath './dist/protos/generated/misc/params' is not defined by "exports" in /home/app/server/node_modules/youtubei.js/package.json - {"stack":["Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './dist/protos/generated/misc/params' is not defined by \"exports\" in /home/app/server/node_modules/youtubei.js/package.json\n    at exportsNotFound (node:internal/modules/esm/resolve:304:10)\n    at packageExportsResolve (node:internal/modules/esm/resolve:651:9)\n    at resolveExports (node:internal/modules/cjs/loader:634:36)\n    at Module._findPath (node:internal/modules/cjs/loader:724:31)\n    at Module._resolveFilename (node:internal/modules/cjs/loader:1211:27)\n    at Module._load (node:internal/modules/cjs/loader:1051:27)\n    at Module.require (node:internal/modules/cjs/loader:1311:19)\n    at require (node:internal/modules/helpers:179:18)\n    at /home/app/server/dist/core/search/search.service.js:80:229\n    at async SearchService.getSearch (/home/app/server/dist/core/search/search.service.js:80:156)"]}
viewtube-main       | [ViewTube] 1      - 10/18/2024, 11:23:06 AM   ERROR [ExceptionsHandler] Package subpath './dist/protos/generated/misc/params' is not defined by "exports" in /home/app/server/node_modules/youtubei.js/package.json - {"stack":["Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './dist/protos/generated/misc/params' is not defined by \"exports\" in /home/app/server/node_modules/youtubei.js/package.json\n    at exportsNotFound (node:internal/modules/esm/resolve:304:10)\n    at packageExportsResolve (node:internal/modules/esm/resolve:651:9)\n    at resolveExports (node:internal/modules/cjs/loader:634:36)\n    at Module._findPath (node:internal/modules/cjs/loader:724:31)\n    at Module._resolveFilename (node:internal/modules/cjs/loader:1211:27)\n    at Module._load (node:internal/modules/cjs/loader:1051:27)\n    at Module.require (node:internal/modules/cjs/loader:1311:19)\n    at require (node:internal/modules/helpers:179:18)\n    at /home/app/server/dist/core/search/search.service.js:80:229\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)"]}
gareins commented 1 day ago

Seems like there was some proto generation changed in 10.0.4 -> 10.0.5 of youtubei.js dependency: https://github.com/LuanRT/YouTube.js/commit/94bc59604852dc624eae2aa07f0e8fe2f5f75a53

Then two weeks ago in 8979b7a7acbc5b7b2f0d1da6a1e4cb10e850b09c it looks to me like @moisout somehow used code from those generated files, but the code does not seem to be exported by the dependency. I have no idea how this crazy ts/js build world works, but I'll dig on to see if I can get to the root problem here.

Also later in 44606cfd5daf3d6f64c1c7899b1d1d58f8d47c61 some fixes were made to import stuff at runtime.

wes1993 commented 12 hours ago

@gareins Thanks a lot for your reply!!!