Classification not working in streamlit frontend
The repex will cause the following error when computed via the frontend:
frontend_1 | 2022-08-09 14:09:47.462 Uncaught app exception
frontend_1 | Traceback (most recent call last):
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/streamlit/scriptrunner/script_runner.py", line 554, in _run_script
frontend_1 | self._session_state.on_script_will_rerun(rerun_data.widget_states)
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/streamlit/state/safe_session_state.py", line 73, in on_script_will_rerun
frontend_1 | self._state.on_script_will_rerun(latest_widget_states)
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/streamlit/state/session_state.py", line 544, in on_script_will_rerun
frontend_1 | self._call_callbacks()
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/streamlit/state/session_state.py", line 557, in _call_callbacks
frontend_1 | self._new_widget_state.call_callback(wid)
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/streamlit/state/session_state.py", line 279, in call_callback
frontend_1 | callback(*args, **kwargs)
frontend_1 | File "src/osm_element_vectorisation/web/frontend/frontend.py", line 44, in vectorise_frontend
frontend_1 | geodata = vectorise_opt_args(opt_args,
frontend_1 | File "/oev/oev/src/osm_element_vectorisation/vectorisation.py", line 118, in vectorise_opt_args
frontend_1 | geodata, indicators_df, indicators_norm_df, predictions_df = vectorise(settings)
frontend_1 | File "/oev/oev/src/osm_element_vectorisation/vectorisation.py", line 80, in vectorise
frontend_1 | classify(ac_settings)
frontend_1 | File "/oev/oev/src/osm_element_vectorisation/classification/classify.py", line 41, in classify
frontend_1 | overall, geom_err, sem_dist = _predict_quality(predictors, settings.db_conns)
frontend_1 | File "/oev/oev/src/osm_element_vectorisation/classification/classify.py", line 77, in _predict_quality
frontend_1 | base, stats, recipes = _prepare_r_env()
frontend_1 | File "/oev/oev/src/osm_element_vectorisation/classification/classify.py", line 89, in _prepare_r_env
frontend_1 | utils = importr("utils")
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/rpy2/robjects/packages.py", line 496, in importr
frontend_1 | pack = InstalledSTPackage(env, name,
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/rpy2/robjects/packages.py", line 203, in __init__
frontend_1 | self.__fill_rpy2r__(on_conflict=on_conflict)
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/rpy2/robjects/packages.py", line 329, in __fill_rpy2r__
frontend_1 | (super(SignatureTranslatedPackage, self)
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/rpy2/robjects/packages.py", line 264, in __fill_rpy2r__
frontend_1 | rpyobj = cv.rpy2py(riobj)
frontend_1 | File "/usr/local/lib/python3.8/functools.py", line 875, in wrapper
frontend_1 | return dispatch(args[0].__class__)(*args, **kw)
frontend_1 | File "/home/oev/.cache/pypoetry/virtualenvs/osm-element-vectorisation-S7_AxX7I-py3.8/lib/python3.8/site-packages/rpy2/robjects/conversion.py", line 252, in _rpy2py
frontend_1 | raise NotImplementedError(
frontend_1 | NotImplementedError: Conversion 'rpy2py' not defined for objects of type '<class 'rpy2.rinterface.SexpClosure'>'