Various issues when setting up development environment
As discussed in a recent PR, here are some issues, minor and major, as well as a few suggestions on how to resolve those. Will happily contribute with improved documentation if we can agree on the best way forward.
-
First off, I just tried to run the client, not minding the server stuff. However, without proper server setup, the steps in
/app/README.mdled to "A JavaScript error occurred in the main process", specifically "spawn poetry ENOENT", though it still kind of runs. Fair enough, the server is required to run the client application, but perhaps this should be documented in /app/README.md then? -
In
pyproject.toml, versionspython = "^3.8, !=3.9.0, <3.11"are specified. However, upon running 3.10 locally, I ran into this issue:
ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects
I'm not a python dev by trade, but a quick search indicates that this is due to 3.10 being "too new"? Either way, 3.8 works fine, and since you specify 3.8 in release.yml anyway, I don't see why not just enforce the same version in pyproject.toml for simplicity.
- In
/server/README.md, you state:
You need to download a model for speech recognition into the
../data/directory
This is slightly ambiguous and raises questions, namely:
- Does
../datamean it is a sibling directory toappandserver? - If yes, I would expect to either find the directory already present, or to find it
.gitignored, none of which is the case(?) - Finally, you suggest the alternative: "or by running the
download_models.shscript" but this script doesn't exist(?)
- Lastly (for now), the console spits out a few errors, some more alarming than others:
- "RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work" (this sounds like something a developer should have set up in their environment in advance? Can't find it documented)
- ExtensionLoadWarning: Warnings loading extension at C:\Users\joel.garplind\AppData\Roaming\Electron\extensions\lmhkpmbekcpmknklioeibfkpmmfibljd: Unrecognized manifest key 'commands'. Unrecognized manifest key 'homepage_url'. Unrecognized manifest key 'page_action'. Unrecognized manifest key 'short_name'. Unrecognized manifest key 'update_url'. Permission 'notifications' is unknown or URL pattern is malformed. Permission 'contextMenus' is unknown or URL pattern is malformed. Cannot load extension with file or directory name _metadata. Filenames starting with "_" are reserved for use by the system.
- ExtensionLoadWarning: Warnings loading extension at C:\Users\joel.garplind\AppData\Roaming\Electron\extensions\fmkadmapgofadopljbjfkapdkoienihi: Unrecognized manifest key 'browser_action'. Unrecognized manifest key 'minimum_chrome_version'. Unrecognized manifest key 'update_url'. Cannot load extension with file or directory name _metadata. Filenames starting with "_" are reserved for use by the system.
I don't care much about the last two, except that they make me as a first-time contributor feel insecure whether my environment is set up properly.
Hey, thanks for reporting this :).
but perhaps this should be documented in /app/README.md then?
exactly, will do.
ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects
I will investigate. Maybe we can just bump the numpy dependency? [1]
In /server/README.md, you state [...]
this is old and not needed anymore. since we have in-app model downloading now. I will clean up that readme.
RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
this is not an issue as we convert all files to wav on the js side. I will try to mute that warning.
ExtensionLoadWarning [...]
these are probably due to us using an electron version thats to old for the redux and electron extensions. will try to downgrade these.
We probably cant fix the ExtensionLoadWarning without updating electron, which we cant do because of https://github.com/electron/electron/issues/32160 :/
some best efford fixes are in https://github.com/audapolis/audapolis/pull/247