# viresclient dev notes ## Resolve bad behaviour with tqdm The `IN_JUPYTER` flag in `_client.py` (and likewise in `_config.py`) will not always work. https://github.com/tqdm/tqdm/issues/1098 explains that this is by design (`tqdm.auto` tries something similar and has the same problem). This results in broken output of html in some situations, like the QtConsole used in Spyder's IPython. ```python # Use auto tqdm, which tries to use tqdm.notebook only when in Jupyter notebook # NB: doesn't play nice with QtConsole (e.g. in Spyder) # https://github.com/tqdm/tqdm/issues/1098 from tqdm.auto import tqdm # Allow user to choose between them from tqdm import tqdm as tqdm_classic from tqdm.notebook import tqdm as tqdm_notebook ``` Resolve this by 1) tidying up the `IN_JUPYTER` flag setting in `_config.py` and 2) adding `IN_JUPYTER` as an optional setting in the config file. Users can then set it to `False` if it is causing problems. ## Nicer intial configuration from terminal Implement new CLI tool, `viresclient init`, which walks the user through setting the access token (pointing to the token management page) and any other settings like above.