No requirement and parameters problems


#1

Hi,

I’m writing a simple app with a code snippet.
All 0.60.1 up to date

  1. once deployed, the snippet cause error due to hermes_python not installed.
    After sudo pip install fermes_python, all works, but then I guess every new user adding this app in his console won’t be able to use it … As apart for github we can’t set a requirement.txt. I use only standard python librairies, but no, snips doesn’t install its own hermes_python library, so it won’t work out of the box.

  2. I have some end_users parameters in the app, that I read inside my snippet. All works nice, but why the hell each time I do an update-assistant, it ask me for these value for each parameter ? Should I put them in global to not have this behavior ? I know my parameters are correct in my console, I didn’t ask anywhere to ask for them, so why the … ??

  3. my app name have accents into, so I guess this why I got:

Generating virtual environment for kiboostTest.Météo_fr done
:heavy_multiplication_x: Error setting up virtualenv, one or more actions might not be able to run. Reason :
Traceback (most recent call last):
File “”, line 1, in
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xc3 in position 35: ordinal not in range(128)
setup.sh: 18: .: Can’t open venv/bin/activate

I know this is never a good idea to put accents, but as this is the public name of the app, taken into files naming, I guess it should handle this.

Seems one more app I won’t publish …


#2

For your hermes problem did you add the requirment.txt file ? witch look like this :slight_smile:

# Bindings for the hermes protocol
hermes-python>=0.1

# More dependency goes here..

and a seupt.sh file ?

#/usr/bin/env bash -e

VENV=venv

if [ ! -d "$VENV" ]
then

    PYTHON=`which python2`

    if [ ! -f $PYTHON ]
    then
        echo "could not find python"
    fi
    virtualenv -p $PYTHON $VENV

fi

. $VENV/bin/activate

pip install -r requirements.txt

#3

We can’t add anything on the console.

And I don’t want to force people to install github stuff to have an app working.

Also, each time I update my assistant, it ask me for the six app parameters. Even if I just have to press enter six times, it’s just not appropriate. So I have deleted all app parameters and put them in my snippet code.

Another app I won’t publish, maybe in the future we can publish app with code that are working as standalone , without editing files, install github stuff etc… Indeed, the store is actually made for makers, no problem for us, but not for users.


#4

OK. So I was coming here to ask about end user / ‘secret’ parameters.

Are the values you put in for secret default? For example I have an API password as one of my secret parameters. I assume I should leave that blank if I publish the App? I’m not quite sure what the point of a default on a secret parameter is.

Also - as KiboOst says - having to enter these everytime you update is not very graceful. A better behaviour would be caching the secret params when first installed with perhaps a switch on the sam assistant-update command to allow you to re-enter params if needed. When developing I update every 5 minutes or so and it’s already tedious…