audapolis icon indicating copy to clipboard operation
audapolis copied to clipboard

Various issues when setting up development environment

Open jgarplind opened this issue 4 years ago • 3 comments

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.

  1. First off, I just tried to run the client, not minding the server stuff. However, without proper server setup, the steps in /app/README.md led 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?

  2. In pyproject.toml, versions python = "^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.

  1. 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 ../data mean it is a sibling directory to app and server?
  • 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.sh script" but this script doesn't exist(?)
  1. 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.

jgarplind avatar Jan 17 '22 18:01 jgarplind

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.

anuejn avatar Jan 17 '22 20:01 anuejn

We probably cant fix the ExtensionLoadWarning without updating electron, which we cant do because of https://github.com/electron/electron/issues/32160 :/

anuejn avatar Jan 17 '22 21:01 anuejn

some best efford fixes are in https://github.com/audapolis/audapolis/pull/247

anuejn avatar Jan 17 '22 21:01 anuejn