-
Notifications
You must be signed in to change notification settings - Fork 4k
Frontend: split into app + lib #6492
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Frontend: split into app + lib #6492
Conversation
# By Kamil Breguła # Via GitHub * develop: Add config option to control the hamburger menu (streamlit#6174) Restrict the setting of sensitive options by the CLI flag (streamlit#6376) # Conflicts: # frontend/src/app/App.test.tsx # frontend/src/app/App.tsx # frontend/src/app/components/MainMenu/MainMenu.test.tsx # frontend/src/app/components/MainMenu/MainMenu.tsx
* develop: Create tag with constraints files for new releases (streamlit#6495) Autoformat yaml in .github dir and enforce formatting (streamlit#6497) Update metadata description (streamlit#6503) Update CODEOWNERS (streamlit#6496)
* develop: Fix issue with deprecated asyncio test variable (streamlit#6517) No longer send unnecessary identify calls from frontend (streamlit#6464)
* develop: Add Bokeh as a side effect import to modify globals instead of having it in index.html(streamlit#6512)
* develop: Dont use constraints file in scheduled builds (streamlit#6470) Reorganize tests from streamlit_test.py (streamlit#6481) Date and Time test classes (streamlit#6501)
* develop: Removing viz-1.8.0.min.js (streamlit#6520) st.experimental_connection: The big merge (streamlit#6487) Add additional attributions (streamlit#6536) Fix code block font change (streamlit#6535) Fully remove email from new session message (streamlit#6516) Clarify what telemetry data our backend stores (streamlit#6463) Update emojis to latest state (streamlit#6532) Add support for pandas 2.0 (streamlit#6507) Fix regression in visibility of `st.code`'s copy-to-clipboard button (streamlit#6498) Fix E2E image (streamlit#6524) Add tenacity as dependency (streamlit#6529)
|
This LGTM. I think one thing that I don't really love is the |
cc: @lukasmasuch for thoughts too. |
|
Re: the dataframe folder name - We can also just move these files up to the root lib directory and get rid of the folder altogether - I don't feel strongly about it. (I don't follow the "dataframeProto.ts is used by VegaLite and then the legacyDataframe things so it's slightly misleading" concern.) |
We can also just move these files up to the root lib directory and get rid of the folder altogether - I don't feel strongly about it. I like no folder and just having the files by itself! However, I would be curious as to what Lukas says and I think we can just wait to see what Lukas says? However, if Lukas is too busy to view this then we can just merge this and I think it looks good.
|
|
|
* develop: Decouple MetricsManager from AppNode (streamlit#6557) Fix top padding on sidebar when embed is true (streamlit#6565) Add support for cell and column header tooltips in the dataframe component (streamlit#6561) Update dataframe column properties on frontend (streamlit#6554) Show warning for unsafe integer cells in `st.dataframe` (streamlit#6549) Add icon for editable columns in `st.data_editor` (streamlit#6550) Unify missing values to None in the returned datastructure by `st.data_editor`. (streamlit#6544) Clean up and reorganize element tree module (streamlit#6522) ESLint: use `--cache` flag (30x speedup!) (streamlit#6555) Replace `st.connection` with `st.experimental_connection` in docstring examples (streamlit#6553) Improve editing on touch devices for `st.data_editor` (streamlit#6548) Move pandas styler logic to dedicated module (streamlit#6543)
|
btw. I think I missed the conversation in my Github inbox :( I think the folder structure is fine for now, but might benefit from some small restructuring once we remove legacy serialization |
Splits the frontend into two parts:
lib(everything necessary for rendering Blocks and Elements). This code can be used by third parties rendering Streamlit content without a connection to the Streamlit backend.app(everything else: MainMenu and the rest of the chrome around the app view; everything related to Streamlit backend communication)Other stuff:
validate_frontend_lib_imports.py, that errors if alibsource file imports anything fromapp. (The script runs as part ofmake jslint, so import issues will cause CI to fail).src/lib