After upgrade to the latest version now this error id showing up **ArrowInvalid**

I see. There might be an issue with Windows. Let’s get your app running first, and then we’ll fix the issue with the configuration file.

Try running your script with

streamlit run app.py --global.dataFrameSerialization="legacy"
1 Like

I tried you suggestion but the system crash and display the below error:

(AIenv) PS F:\AIenv\streamlit> streamlit run app2.py --global.dataFrameSerialization="legacy"
Usage: streamlit run [OPTIONS] TARGET [ARGS]...
Try 'streamlit run --help' for help.

Error: no such option: --global.dataFrameSerialization

What version of streamlit are you using? That config option is only available after 0.85. Try upgrading to the latest version and rerunning the command.

i did upgrade to the latest version and rerun the command it works

but when i added the line to the config.toml file it crash and display the below error:

Traceback (most recent call last):
  File "c:\users\lt gm\appdata\local\programs\python\python37\Lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\lt gm\appdata\local\programs\python\python37\Lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "F:\AIenv\lib\site-packages\streamlit\__main__.py", line 23, in <module>
    main()
  File "F:\AIenv\lib\site-packages\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "F:\AIenv\lib\site-packages\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "F:\AIenv\lib\site-packages\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "F:\AIenv\lib\site-packages\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "F:\AIenv\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "F:\AIenv\lib\site-packages\streamlit\cli.py", line 160, in main_run
    bootstrap.load_config_options(flag_options=kwargs)
  File "F:\AIenv\lib\site-packages\streamlit\bootstrap.py", line 318, in load_config_options
    config.get_config_options(force_reparse=True, options_from_flags=options_from_flags)
  File "F:\AIenv\lib\site-packages\streamlit\config.py", line 1087, in get_config_options
    file_contents = input.read()
  File "F:\AIenv\lib\codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

Hello.
I read the whole thread. The issue is still persistent even now. I am using the latest version of streamlit as of writing this reply. What can I do?

1 Like

I still have the same issue
streamlit==1.0
pyarrow==8.0.0

anaconda3/lib/python3.7/site-packages/pyarrow/table.pxi in pyarrow.lib.Table.from_pydict()

/anaconda3/lib/python3.7/site-packages/pyarrow/table.pxi in pyarrow.lib._from_pydict()

/anaconda3/lib/python3.7/site-packages/pyarrow/array.pxi in pyarrow.lib.asarray()

/anaconda3/lib/python3.7/site-packages/pyarrow/array.pxi in pyarrow.lib.array()

/anaconda3/lib/python3.7/site-packages/pyarrow/array.pxi in pyarrow.lib._sequence_to_array()

/anaconda3/lib/python3.7/site-packages/pyarrow/error.pxi in pyarrow.lib.pyarrow_internal_check_status()

/anaconda3/lib/python3.7/site-packages/pyarrow/error.pxi in pyarrow.lib.check_status()

ArrowInvalid: Could not convert 'good' with type str: tried to convert to double```

All you have to do is to put the following line before printing out
df = df.astype(str)
st.dataframe(df)
good luck

2 Likes

Thanks, this worked for me!!!

(post deleted by author)

Hi @thiago , I added [global]
dataFrameSerialization = “legacy” to config.toml file and issue was resolved for local
but while hosting the app from GitHub on share.streamlit.io the issue is still persistent. Not able to read the config file or is there a way around for while hosting the app. I’m using the same code that runs well on local.

@Deepansh_Soni we have implemented a few fixes on the problem with the arrow serialization which will be released with the upcoming version (1.14). I assume this will resolve your problem with arrow, so you don’t have to use legacy serialization anymore.