Skip to content
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

Add display_text to LinkColumn #7741

Merged

Conversation

sfc-gh-bhay
Copy link
Contributor

@sfc-gh-bhay sfc-gh-bhay commented Nov 20, 2023

Describe your changes

This adds an extra property display_text on the st.column_confg.LinkColumn api. This property will be used to display a more readable string value in the link column cell. A user can set display_text to be a regex string pattern that can match a substring from the url. For example, if the dataframe's uri value is "https://issues.streamlit.app", a user can set display_text to be "https://(.*?).streamlit.app" and the resulting displayed value in the cell would be "issues".

Demo

https://github.com/streamlit/streamlit/assets/123410431/91ae7c2a-5256-490d-b968-fbbd8457f434
Editing:

Screen.Recording.2023-11-20.at.2.33.56.PM.mov

GitHub Issue Link (if applicable)

Closes #6787

Implementation Details

To achieve this without waiting for glide data frame to update functionality on their UriCell, I created the LinkCell as a custom kind. To draw the cell, I check if the cell is hovered, and if so draw a simple line under the text. If the user clicks on the link text it will open the link in a new tab. If they click outside of the text (but within the cell), it will show the edit pencil to allow them to edit the href/uri.

To determine if the display_text value is a regex, we do a simple check for if the chars ( and ) are included in the string. This is the bare minimum needed for extraction, so that's what we ended up going with. This will have the downside of incorrectly thinking that (click here) is a regex pattern, but that's the risk we are willing to take (hopefully users won't need to bracket their displayed text in parenthesis!).

This meant also reimplementing (copy/pasting) the <UriOverlayEditor> to provide editing functionality. When the user edits a cell, they will only be modifying/updating the underlying href value, not the display_text value.

I also modified the validate logic by removing the auto correct functionality. Previously, if the max_chars property was defined and the cell value was greater than the limit, we would trim the url text down. I pointed out to @lukasmasuch that this would probably break user's urls so he agreed we should simply return false from the validation check and not mutate the urls.

Testing Plan

  • Unit Tests (JS and/or Python) ✅
  • E2E Tests
    TBD?
  • Any manual testing needed?
    Yes, I tested copy and paste functionality and normal editing functionality.

Contribution License Agreement

By submitting this pull request you agree that all contributions to this project are made under the Apache 2.0 license.

@lukasmasuch
Copy link
Collaborator

@sfc-gh-bhay Big thanks for this contribution 👍 This is awesome! I added a couple of comments above, but I think the main structural change I'm proposing is to 1) Have the getCell only work on a single href value (like the other column types), to be aligned with the other column types 2) construct the display value within the LinkColumn like format for number and datetime column and not within the custom LinkCell.

@sfc-gh-bhay
Copy link
Contributor Author

@sfc-gh-bhay Big thanks for this contribution 👍 This is awesome! I added a couple of comments above, but I think the main structural change I'm proposing is to 1) Have the getCell only work on a single href value (like the other column types), to be aligned with the other column types 2) construct the display value within the LinkColumn like format for number and datetime column and not within the custom LinkCell.

Thanks! Appreciate the feedback. I believe I made the modifications you requested here. There's still a couple of things hanging that I'll get to tomorrow.

Copy link
Collaborator

@lukasmasuch lukasmasuch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍 🎉 just a couple of remaining nits.

lib/streamlit/elements/lib/column_types.py Outdated Show resolved Hide resolved
lib/streamlit/elements/lib/column_types.py Outdated Show resolved Hide resolved
e2e_playwright/st_dataframe_config.py Outdated Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one seems to have been maybe flaky. The deleted screenshot should be the correct one here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like it is still failing on the latest run. The images look identical to me.

sfc-gh-bhay and others added 4 commits December 4, 2023 11:19
Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
@sfc-gh-bhay
Copy link
Contributor Author

sfc-gh-bhay commented Dec 4, 2023

Thanks @lukasmasuch ! I believe I committed all of your suggestions there. If you think it's all good, can you try running the workflows again?

@sfc-gh-bhay
Copy link
Contributor Author

Thanks @lukasmasuch ! I believe I committed all of your suggestions there. If you think it's all good, can you try running the workflows again?

I see there is still one screenshot mismatch error. I'll update it locally and push up again

@lukasmasuch lukasmasuch merged commit c0176ea into streamlit:develop Dec 4, 2023
43 checks passed
@nickocreator0
Copy link

Hey guys can we use this feature yet?

@lukasmasuch
Copy link
Collaborator

This will be available in the 1.30 release.

zyxue pushed a commit to zyxue/streamlit that referenced this pull request Apr 16, 2024
…values (streamlit#7741)

* Add display_text to LinkColumn

* reference display_text within column parameters instead of passing it into column functions

* updated pencil icon

* flatten the nesting of LinkCell data property

* fix link cell test file and remove unused editpencil file

* add kind to link cell template

* remove is regex check and assume displayText is a regex

* only compute text measurement for underline when cell is hovered

* move getLinkDisplayValue to the LinkColumn file

* fix js linter errors

* check if href is undefined or null when returning the missing value link cell

* add back regex check in getLinkDisplayValue

* add `cursor: pointer` to link column getCell output

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove unnecessary setting of displayText

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* move overlay editor style file into cells folder

* check if href and displayTest are null or undefined

* remove padding from text width calculation in the isHover logic

* check if display_text is a regex in the column to improve rendering performance

* optimize the regex check  on the column a bit more

* add escape char before .google.com to pass codeql failure

* revert yarn.lock file

* fix the escape char for the regex pattern

* Fix bug with edit mode on the overlay editor

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* add noopener and noreferrer

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove the hack around underline spacing

* add more link cell tests and fix styling

* add another test

* Updated docstring

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* add updated e2e screenshots

* Update lib/streamlit/elements/lib/column_types.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove extra space

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* Update e2e_playwright/st_dataframe_config.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* Update lib/streamlit/elements/lib/column_types.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* try adding updated screenshot

---------

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
sawyerh pushed a commit to sawyerh/highlights that referenced this pull request Jun 1, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [streamlit](https://streamlit.io)
([source](https://togithub.com/streamlit/streamlit),
[changelog](https://docs.streamlit.io/library/changelog)) | `1.25.0` ->
`1.35.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/streamlit/1.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/streamlit/1.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/streamlit/1.25.0/1.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/streamlit/1.25.0/1.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>streamlit/streamlit (streamlit)</summary>

###
[`v1.35.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.35.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.34.0...1.35.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.35.0 -->

#### What's Changed

##### New Features 🎉

- Add support for selections to `st.plotly_chart` by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/8191](https://togithub.com/streamlit/streamlit/pull/8191)
- feat: support set mysql connection query from secrets.toml by
[@&#8203;LucianLiu6](https://togithub.com/LucianLiu6) in
[https://github.com/streamlit/streamlit/pull/8581](https://togithub.com/streamlit/streamlit/pull/8581)
- Feature: `st.logo` by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/8554](https://togithub.com/streamlit/streamlit/pull/8554)
- Material icon for st.page_link by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/8593](https://togithub.com/streamlit/streamlit/pull/8593)
- Add dataframe row and column selections by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8411](https://togithub.com/streamlit/streamlit/pull/8411)
- Add support for selections to `st.altair_chart` & `st.vega_lite_chart`
by [@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/8302](https://togithub.com/streamlit/streamlit/pull/8302)

##### Bug Fixes 🐛

- Fix standalone custom-component execution by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8620](https://togithub.com/streamlit/streamlit/pull/8620)
- Clear stale elements when st.rerun() is used by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8599](https://togithub.com/streamlit/streamlit/pull/8599)
- Focus chat input after the submit button is pressed by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8637](https://togithub.com/streamlit/streamlit/pull/8637)
- fix:
[#&#8203;8500](https://togithub.com/streamlit/streamlit/issues/8500)
bypass StrEnum 'index' to make position-indexable by
[@&#8203;97k](https://togithub.com/97k) in
[https://github.com/streamlit/streamlit/pull/8622](https://togithub.com/streamlit/streamlit/pull/8622)
- Update scroll-margin-top by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8641](https://togithub.com/streamlit/streamlit/pull/8641)
- Fix cell error when data editor gets reconstructed by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8640](https://togithub.com/streamlit/streamlit/pull/8640)
- Ensure that column config is cloned by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8677](https://togithub.com/streamlit/streamlit/pull/8677)
- Add fallback method for CSV download by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8452](https://togithub.com/streamlit/streamlit/pull/8452)

##### Other Changes

- Bump mheap/github-action-required-labels from 5.4.0 to 5.4.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/streamlit/streamlit/pull/8582](https://togithub.com/streamlit/streamlit/pull/8582)
- Remove fullscreen button for `st.table` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8621](https://togithub.com/streamlit/streamlit/pull/8621)
- Improve typing for query params `.update` and `.from_dict` by
[@&#8203;Asaurus1](https://togithub.com/Asaurus1) in
[https://github.com/streamlit/streamlit/pull/8614](https://togithub.com/streamlit/streamlit/pull/8614)
- Improve anchor button visualization for titles and headings by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8587](https://togithub.com/streamlit/streamlit/pull/8587)
- Allow protobuf v5 by [@&#8203;mark-thm](https://togithub.com/mark-thm)
in
[https://github.com/streamlit/streamlit/pull/8624](https://togithub.com/streamlit/streamlit/pull/8624)
- Stabilize the vega-lite spec for altair-based charts by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8628](https://togithub.com/streamlit/streamlit/pull/8628)
- Update address output in headless mode by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8647](https://togithub.com/streamlit/streamlit/pull/8647)
- Revert "Allow protobuf v5" by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8701](https://togithub.com/streamlit/streamlit/pull/8701)

#### New Contributors

- [@&#8203;LucianLiu6](https://togithub.com/LucianLiu6) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8581](https://togithub.com/streamlit/streamlit/pull/8581)
- [@&#8203;mark-thm](https://togithub.com/mark-thm) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8624](https://togithub.com/streamlit/streamlit/pull/8624)
- [@&#8203;97k](https://togithub.com/97k) made their first contribution
in
[https://github.com/streamlit/streamlit/pull/8622](https://togithub.com/streamlit/streamlit/pull/8622)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.34.0...1.35.0

###
[`v1.34.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.34.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.33.0...1.34.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.34.0 -->

#### What's Changed

##### New Features 🎉

- Add st.experimental_dialog by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8040](https://togithub.com/streamlit/streamlit/pull/8040)
- from_dict for query params by
[@&#8203;Asaurus1](https://togithub.com/Asaurus1) in
[https://github.com/streamlit/streamlit/pull/8470](https://togithub.com/streamlit/streamlit/pull/8470)
- Improve period type support in `st.dataframe` and `st.data_editor` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7987](https://togithub.com/streamlit/streamlit/pull/7987)
- Add ability to clear cache for specific function arguments by passing
args to `<cached_func>.clear()` by
[@&#8203;OscarSaharoy](https://togithub.com/OscarSaharoy) in
[https://github.com/streamlit/streamlit/pull/8297](https://togithub.com/streamlit/streamlit/pull/8297)
- Add support for autoplaying `st.audio` and `st.video` media by
[@&#8203;snehankekre](https://togithub.com/snehankekre) in
[https://github.com/streamlit/streamlit/pull/8481](https://togithub.com/streamlit/streamlit/pull/8481)
- Support background colors for text by
[@&#8203;snehankekre](https://togithub.com/snehankekre) in
[https://github.com/streamlit/streamlit/pull/8435](https://togithub.com/streamlit/streamlit/pull/8435)
- Non-emoji icons by [@&#8203;kajarenc](https://togithub.com/kajarenc)
in
[https://github.com/streamlit/streamlit/pull/8307](https://togithub.com/streamlit/streamlit/pull/8307)
- Add support for Modin and Snowpark Pandas by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8506](https://togithub.com/streamlit/streamlit/pull/8506)
- Enable the usage of the pydeck-carto package with st.pydeck_chart by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8422](https://togithub.com/streamlit/streamlit/pull/8422)

##### Bug Fixes 🐛

- Offset dates in vega if no timezone information is attached. by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8278](https://togithub.com/streamlit/streamlit/pull/8278)
- Fix issues with fragments writing to containers and the sidebar by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8408](https://togithub.com/streamlit/streamlit/pull/8408)
- Produce python error for slider min=max by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8413](https://togithub.com/streamlit/streamlit/pull/8413)
- Make check for component ready dynamic by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8434](https://togithub.com/streamlit/streamlit/pull/8434)
- Update Auto Theme after print dialog if necessary by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8469](https://togithub.com/streamlit/streamlit/pull/8469)
- Reset widget state on page change by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8425](https://togithub.com/streamlit/streamlit/pull/8425)
- Switch back to using undeprecated pillow constant by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8492](https://togithub.com/streamlit/streamlit/pull/8492)
- Fix double script/callback run when replacing a file by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8493](https://togithub.com/streamlit/streamlit/pull/8493)
- Handle Altair vconcat with use_container_width by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8498](https://togithub.com/streamlit/streamlit/pull/8498)
- Fix empty state for `st.status` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8369](https://togithub.com/streamlit/streamlit/pull/8369)
- Fix `st.multiselect` usage with empty sets or tuples by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8471](https://togithub.com/streamlit/streamlit/pull/8471)
- Handle Altair resolve_scale by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8497](https://togithub.com/streamlit/streamlit/pull/8497)
- Adjust default date for st.date_input if today's date is out of bounds
by [@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8519](https://togithub.com/streamlit/streamlit/pull/8519)
- Handle setting session state keys to None for supported widgets by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8529](https://togithub.com/streamlit/streamlit/pull/8529)
- Fix empty generator usage with `st.write_stream` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8560](https://togithub.com/streamlit/streamlit/pull/8560)

##### Other Changes

- Update modal styles by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8274](https://togithub.com/streamlit/streamlit/pull/8274)
- Move toasts to top right and make them prettier by
[@&#8203;sfc-gh-tteixeira](https://togithub.com/sfc-gh-tteixeira) in
[https://github.com/streamlit/streamlit/pull/8433](https://togithub.com/streamlit/streamlit/pull/8433)
- Fix escaping in docstrings by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8510](https://togithub.com/streamlit/streamlit/pull/8510)
- Fix blank space print by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8502](https://togithub.com/streamlit/streamlit/pull/8502)
- Remove snowflake extras python restriction by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8538](https://togithub.com/streamlit/streamlit/pull/8538)

#### New Contributors

- [@&#8203;Lundez](https://togithub.com/Lundez) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8520](https://togithub.com/streamlit/streamlit/pull/8520)
- [@&#8203;OscarSaharoy](https://togithub.com/OscarSaharoy) made their
first contribution in
[https://github.com/streamlit/streamlit/pull/8297](https://togithub.com/streamlit/streamlit/pull/8297)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.33.0...1.34.0

###
[`v1.33.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.33.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.32.2...1.33.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.33.0 -->

#### What's Changed

##### Breaking Changes 🛠

- Require explicit suggestion of unsafe_allow_html in st.write by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8238](https://togithub.com/streamlit/streamlit/pull/8238)

##### New Features 🎉

- explicit update() method for query_params by
[@&#8203;Asaurus1](https://togithub.com/Asaurus1) in
[https://github.com/streamlit/streamlit/pull/8205](https://togithub.com/streamlit/streamlit/pull/8205)
- Add `AreaChartColumn` to column config by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8237](https://togithub.com/streamlit/streamlit/pull/8237)
- Associate label with input to make label click focus input by
[@&#8203;filiptammergard](https://togithub.com/filiptammergard) in
[https://github.com/streamlit/streamlit/pull/8155](https://togithub.com/streamlit/streamlit/pull/8155)
- Media elements improvements by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/8203](https://togithub.com/streamlit/streamlit/pull/8203)
- Page switching in AppTest by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8280](https://togithub.com/streamlit/streamlit/pull/8280)
- Add ability to use timedelta and stings to `start_time` and
`end_time`. by [@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/8348](https://togithub.com/streamlit/streamlit/pull/8348)
- st.experimental_fragment decorator by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8343](https://togithub.com/streamlit/streamlit/pull/8343)
- Feature: `st.html` by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/8366](https://togithub.com/streamlit/streamlit/pull/8366)

##### Bug Fixes 🐛

- AppTest format_func by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8189](https://togithub.com/streamlit/streamlit/pull/8189)
- Url decode link column display values if regex is used by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8258](https://togithub.com/streamlit/streamlit/pull/8258)
- Fix infinite loop when `rerun` and triggered widgets are used together
in AppTest by [@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8264](https://togithub.com/streamlit/streamlit/pull/8264)
- Use the button width as minimum for `st.popover` container by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8266](https://togithub.com/streamlit/streamlit/pull/8266)
- Revert "Expire session storage cache on an async timer
([#&#8203;8083](https://togithub.com/streamlit/streamlit/issues/8083))"
by [@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8281](https://togithub.com/streamlit/streamlit/pull/8281)
- Allow custom themes to override embed options query parameter by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8021](https://togithub.com/streamlit/streamlit/pull/8021)
- Fix issue with not correctly waiting for connections by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8294](https://togithub.com/streamlit/streamlit/pull/8294)
- Fix initial iframe height for custom component by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8290](https://togithub.com/streamlit/streamlit/pull/8290)
- Fullscreen Button Overflow Horizontally by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8279](https://togithub.com/streamlit/streamlit/pull/8279)
- Fix white components backgrounds when OS is using dark theme by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8242](https://togithub.com/streamlit/streamlit/pull/8242)
- Add simple fix to update container status after llm complete by
[@&#8203;KedoKudo](https://togithub.com/KedoKudo) in
[https://github.com/streamlit/streamlit/pull/8311](https://togithub.com/streamlit/streamlit/pull/8311)
- Simplify toast message truncation to use character limit directly by
[@&#8203;snehankekre](https://togithub.com/snehankekre) in
[https://github.com/streamlit/streamlit/pull/8337](https://togithub.com/streamlit/streamlit/pull/8337)
- resolve path when registering watcher for module paths by
[@&#8203;zyxue](https://togithub.com/zyxue) in
[https://github.com/streamlit/streamlit/pull/8372](https://togithub.com/streamlit/streamlit/pull/8372)
- Readd mistakenly removed line and add explanatory comment by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8392](https://togithub.com/streamlit/streamlit/pull/8392)

##### Other Changes

- Allow packaging 24.x by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8338](https://togithub.com/streamlit/streamlit/pull/8338)

#### New Contributors

- [@&#8203;filiptammergard](https://togithub.com/filiptammergard) made
their first contribution in
[https://github.com/streamlit/streamlit/pull/8155](https://togithub.com/streamlit/streamlit/pull/8155)
- [@&#8203;KedoKudo](https://togithub.com/KedoKudo) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8311](https://togithub.com/streamlit/streamlit/pull/8311)
- [@&#8203;zyxue](https://togithub.com/zyxue) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8372](https://togithub.com/streamlit/streamlit/pull/8372)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.32.2...1.33.0

###
[`v1.32.2`](https://togithub.com/streamlit/streamlit/releases/tag/1.32.2)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.32.1...1.32.2)

<!-- Release notes generated using configuration in .github/release.yml
at 1.32.2 -->

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.32.1...1.32.2

###
[`v1.32.1`](https://togithub.com/streamlit/streamlit/releases/tag/1.32.1)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.32.0...1.32.1)

<!-- Release notes generated using configuration in .github/release.yml
at 1.32.1 -->

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.32.0...1.32.1

###
[`v1.32.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.32.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.31.1...1.32.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.32.0 -->

#### What's Changed

##### New Features 🎉

- Support markdown links in`st.radio` options by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8028](https://togithub.com/streamlit/streamlit/pull/8028)
- Improve error handling in `st.write_stream` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8036](https://togithub.com/streamlit/streamlit/pull/8036)
- Add support for PIL images in `st.write` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8039](https://togithub.com/streamlit/streamlit/pull/8039)
- add: Supprt for HTTP <Head> method to /healthz endpoint by
[@&#8203;rahulmistri1997](https://togithub.com/rahulmistri1997) in
[https://github.com/streamlit/streamlit/pull/8145](https://togithub.com/streamlit/streamlit/pull/8145)
- Add support for AzureOpenAI chat stream by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8107](https://togithub.com/streamlit/streamlit/pull/8107)
- Add `st.popover` layout container by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7908](https://togithub.com/streamlit/streamlit/pull/7908)
- AppTest `from_function` args by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8183](https://togithub.com/streamlit/streamlit/pull/8183)
- Subtitles changes for `st.video` by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/8057](https://togithub.com/streamlit/streamlit/pull/8057)
- Expander and Status AppTest wrappers by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8187](https://togithub.com/streamlit/streamlit/pull/8187)

##### Bug Fixes 🐛

- Add support for converting `st.query_params` to string by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8030](https://togithub.com/streamlit/streamlit/pull/8030)
- Fix custom dataframe scrollbars in Chrome by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8034](https://togithub.com/streamlit/streamlit/pull/8034)
- Fix `time_input` menu colors in dark mode by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8056](https://togithub.com/streamlit/streamlit/pull/8056)
- Make shallow copies of options returned from ensure_indexable by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8064](https://togithub.com/streamlit/streamlit/pull/8064)
- Fix memory leak in runtime coroutine loop by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8068](https://togithub.com/streamlit/streamlit/pull/8068)
- Prevent pandas keyerror when checking color column format in st.map by
[@&#8203;awhazell](https://togithub.com/awhazell) in
[https://github.com/streamlit/streamlit/pull/8079](https://togithub.com/streamlit/streamlit/pull/8079)
- Fix
[#&#8203;7954](https://togithub.com/streamlit/streamlit/issues/7954) by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/8054](https://togithub.com/streamlit/streamlit/pull/8054)
- Fix issue using a local path with `st.image` on windows. by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8092](https://togithub.com/streamlit/streamlit/pull/8092)
- Fix: `st.page_link` & `st.switch_page` handling / prefixed paths by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/8085](https://togithub.com/streamlit/streamlit/pull/8085)
- Fix script runner stack overflow by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8100](https://togithub.com/streamlit/streamlit/pull/8100)
- Normalize main script path in `st.switch_page` and `st.page_link` by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/8103](https://togithub.com/streamlit/streamlit/pull/8103)
- Fix: `st.page_link` URL preview shows file path by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/8086](https://togithub.com/streamlit/streamlit/pull/8086)
- Support multiple path characteristics for switch_page and page_link by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8127](https://togithub.com/streamlit/streamlit/pull/8127)
- Fix chart exception where color-handling code expected DF index to
start at 0 by
[@&#8203;sfc-gh-tteixeira](https://togithub.com/sfc-gh-tteixeira) in
[https://github.com/streamlit/streamlit/pull/8158](https://togithub.com/streamlit/streamlit/pull/8158)
- Fix: Alert element overflow by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/8194](https://togithub.com/streamlit/streamlit/pull/8194)
- Fully clear App State on page change by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8208](https://togithub.com/streamlit/streamlit/pull/8208)
- Make st.help more resilient with conditional members by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/8228](https://togithub.com/streamlit/streamlit/pull/8228)

##### Other Changes

- Expire session storage cache on an async timer by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/8083](https://togithub.com/streamlit/streamlit/pull/8083)
- Lazy-load emoji module to improve performance by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8109](https://togithub.com/streamlit/streamlit/pull/8109)
- Lazy-load pandas and pyarrow to improve performance by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8125](https://togithub.com/streamlit/streamlit/pull/8125)
- Miscellaneous docstring edits and argument names by
[@&#8203;sfc-gh-dmatthews](https://togithub.com/sfc-gh-dmatthews) in
[https://github.com/streamlit/streamlit/pull/8118](https://togithub.com/streamlit/streamlit/pull/8118)
- Deprecate the `deprecation.showPyplotGlobalUse` config option by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8133](https://togithub.com/streamlit/streamlit/pull/8133)
- Use env variable to configure matplotlib backend by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8113](https://togithub.com/streamlit/streamlit/pull/8113)
- Lazy-load numpy and pillow to improve performance by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8134](https://togithub.com/streamlit/streamlit/pull/8134)
- Show a warning when server port `3000` is used by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8152](https://togithub.com/streamlit/streamlit/pull/8152)
- Fixed typos in example documentation by
[@&#8203;t1emp0](https://togithub.com/t1emp0) in
[https://github.com/streamlit/streamlit/pull/8162](https://togithub.com/streamlit/streamlit/pull/8162)
- Increase time until timeout warning is shown for a custom component by
[@&#8203;raethlein](https://togithub.com/raethlein) in
[https://github.com/streamlit/streamlit/pull/8179](https://togithub.com/streamlit/streamlit/pull/8179)
- Update glide-data-grid to version 6.0.4 by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7779](https://togithub.com/streamlit/streamlit/pull/7779)

#### New Contributors

- [@&#8203;awhazell](https://togithub.com/awhazell) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8079](https://togithub.com/streamlit/streamlit/pull/8079)
- [@&#8203;SidVer312](https://togithub.com/SidVer312) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8017](https://togithub.com/streamlit/streamlit/pull/8017)
- [@&#8203;rahulmistri1997](https://togithub.com/rahulmistri1997) made
their first contribution in
[https://github.com/streamlit/streamlit/pull/8145](https://togithub.com/streamlit/streamlit/pull/8145)
- [@&#8203;t1emp0](https://togithub.com/t1emp0) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/8162](https://togithub.com/streamlit/streamlit/pull/8162)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.31.1...1.32.0

###
[`v1.31.1`](https://togithub.com/streamlit/streamlit/releases/tag/1.31.1)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.31.0...1.31.1)

<!-- Release notes generated using configuration in .github/release.yml
at 1.31.1 -->

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.31.0...1.31.1

###
[`v1.31.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.31.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.30.0...1.31.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.31.0 -->

#### What's Changed

##### New Features 🎉

- Allow inline usage of `st.chat_input` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7896](https://togithub.com/streamlit/streamlit/pull/7896)
- Feature: `st.page_link` by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/7965](https://togithub.com/streamlit/streamlit/pull/7965)
- Add `st.write_stream` command to handle generators or OpenAI output by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7906](https://togithub.com/streamlit/streamlit/pull/7906)

##### Bug Fixes 🐛

- Reuse style element for theme injection into custom components by
[@&#8203;Tom-Julux](https://togithub.com/Tom-Julux) in
[https://github.com/streamlit/streamlit/pull/7914](https://togithub.com/streamlit/streamlit/pull/7914)
- Handle out of order blocks when parsing element tree by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7923](https://togithub.com/streamlit/streamlit/pull/7923)
- Fix progress bar float input bug by
[@&#8203;notiona](https://togithub.com/notiona) in
[https://github.com/streamlit/streamlit/pull/7953](https://togithub.com/streamlit/streamlit/pull/7953)
- Don't pass query parameters from parent page into iframes by
[@&#8203;eric-skydio](https://togithub.com/eric-skydio) in
[https://github.com/streamlit/streamlit/pull/7951](https://togithub.com/streamlit/streamlit/pull/7951)
- Fix period type support for Pandas 2.2.0 by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7988](https://togithub.com/streamlit/streamlit/pull/7988)
- Only ignore hiding required columns in dynamic mode by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7996](https://togithub.com/streamlit/streamlit/pull/7996)
- Disable watchdog suggestion for `none` or `poll` watcher type by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/8024](https://togithub.com/streamlit/streamlit/pull/8024)

##### Other Changes

- Support latest importlib-metadata v7 by
[@&#8203;elgalu](https://togithub.com/elgalu) in
[https://github.com/streamlit/streamlit/pull/7925](https://togithub.com/streamlit/streamlit/pull/7925)
- Make Snowpark dependency truly optional for SnowflakeConnection by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7919](https://togithub.com/streamlit/streamlit/pull/7919)

#### New Contributors

- [@&#8203;Tom-Julux](https://togithub.com/Tom-Julux) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7914](https://togithub.com/streamlit/streamlit/pull/7914)
- [@&#8203;elgalu](https://togithub.com/elgalu) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7925](https://togithub.com/streamlit/streamlit/pull/7925)
- [@&#8203;notiona](https://togithub.com/notiona) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7953](https://togithub.com/streamlit/streamlit/pull/7953)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.30.0...1.31.0

###
[`v1.30.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.30.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.29.0...1.30.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.30.0 -->

#### What's Changed

##### New Features 🎉

- Add support for scroll container via the `height` parameter by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7697](https://togithub.com/streamlit/streamlit/pull/7697)
- Add display_text to LinkColumn by
[@&#8203;sfc-gh-bhay](https://togithub.com/sfc-gh-bhay) in
[https://github.com/streamlit/streamlit/pull/7741](https://togithub.com/streamlit/streamlit/pull/7741)
- st.query_params by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7774](https://togithub.com/streamlit/streamlit/pull/7774)
- Add Pandas styler support to `LinkColumn` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7784](https://togithub.com/streamlit/streamlit/pull/7784)
- Config - MPA Sidebar Page Navigation by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/7852](https://togithub.com/streamlit/streamlit/pull/7852)
- Feature - `st.switch_page` by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/7853](https://togithub.com/streamlit/streamlit/pull/7853)

##### Bug Fixes 🐛

- Fix handling of ordinal columns for builtin-charts by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7771](https://togithub.com/streamlit/streamlit/pull/7771)
- Fix `st.toggle` background color by
[@&#8203;sfc-gh-jgarcia](https://togithub.com/sfc-gh-jgarcia) in
[https://github.com/streamlit/streamlit/pull/7788](https://togithub.com/streamlit/streamlit/pull/7788)
- Don't send command used to start streamlit to frontend by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7787](https://togithub.com/streamlit/streamlit/pull/7787)
- Fix iframe background for dark color scheme by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7821](https://togithub.com/streamlit/streamlit/pull/7821)
- Prevent incompatible column config serialization by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7887](https://togithub.com/streamlit/streamlit/pull/7887)
- Prevent hiding required editable columns by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7888](https://togithub.com/streamlit/streamlit/pull/7888)
- Disable the ability to submit form if a submit button is disabled by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7827](https://togithub.com/streamlit/streamlit/pull/7827)
- Fix flickering effect when changing tabs by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7904](https://togithub.com/streamlit/streamlit/pull/7904)
- Fix shrunk icon size in st.expander by
[@&#8203;matiboux](https://togithub.com/matiboux) in
[https://github.com/streamlit/streamlit/pull/7596](https://togithub.com/streamlit/streamlit/pull/7596)
- Add check that individual elements are "python comparable" by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/7840](https://togithub.com/streamlit/streamlit/pull/7840)
- Use commonpath rather than common prefix for more secure access by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/7901](https://togithub.com/streamlit/streamlit/pull/7901)
- Don't disable tab on stale flag by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7905](https://togithub.com/streamlit/streamlit/pull/7905)
- Fix embed params being dropped in page swaps by
[@&#8203;sfc-gh-wihuang](https://togithub.com/sfc-gh-wihuang) in
[https://github.com/streamlit/streamlit/pull/7918](https://togithub.com/streamlit/streamlit/pull/7918)

##### Other Changes

- Fix parenthesis error messaging by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7770](https://togithub.com/streamlit/streamlit/pull/7770)
- Update SECURITY.md by
[@&#8203;sfc-gh-hpathak](https://togithub.com/sfc-gh-hpathak) in
[https://github.com/streamlit/streamlit/pull/7783](https://togithub.com/streamlit/streamlit/pull/7783)
- Speed up plotly figures by 8x for users with "orjson" by
[@&#8203;eric-skydio](https://togithub.com/eric-skydio) in
[https://github.com/streamlit/streamlit/pull/7860](https://togithub.com/streamlit/streamlit/pull/7860)

#### New Contributors

- [@&#8203;sfc-gh-bhay](https://togithub.com/sfc-gh-bhay) made their
first contribution in
[https://github.com/streamlit/streamlit/pull/7741](https://togithub.com/streamlit/streamlit/pull/7741)
- [@&#8203;sfc-gh-jkinkead](https://togithub.com/sfc-gh-jkinkead) made
their first contribution in
[https://github.com/streamlit/streamlit/pull/7843](https://togithub.com/streamlit/streamlit/pull/7843)
- [@&#8203;sfc-gh-jdaly](https://togithub.com/sfc-gh-jdaly) made their
first contribution in
[https://github.com/streamlit/streamlit/pull/7842](https://togithub.com/streamlit/streamlit/pull/7842)
- [@&#8203;matiboux](https://togithub.com/matiboux) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7596](https://togithub.com/streamlit/streamlit/pull/7596)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.29.0...1.30.0

###
[`v1.29.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.29.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.28.2...1.29.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.29.0 -->

#### What's Changed

##### Breaking Changes 🛠

- Remove old app test api by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7657](https://togithub.com/streamlit/streamlit/pull/7657)

##### New Features 🎉

- Add ability to add empty query params by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7601](https://togithub.com/streamlit/streamlit/pull/7601)
- Add Enum coercion to options elements, if input Enum classes
"identical" but redefined on script run by
[@&#8203;Asaurus1](https://togithub.com/Asaurus1) in
[https://github.com/streamlit/streamlit/pull/7408](https://togithub.com/streamlit/streamlit/pull/7408)
- Remove Recording Feature Menu Item when unsupported by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/7604](https://togithub.com/streamlit/streamlit/pull/7604)
- Improved AppTest/ElementTree formatting by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7658](https://togithub.com/streamlit/streamlit/pull/7658)
- Add support for timedelta type to `st.dataframe`, `st.data_editor` and
`st.table`. by [@&#8203;LukasMasuch](https://togithub.com/LukasMasuch)
in
[https://github.com/streamlit/streamlit/pull/7689](https://togithub.com/streamlit/streamlit/pull/7689)
- Add border parameter to container and form by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7455](https://togithub.com/streamlit/streamlit/pull/7455)
- Use "loading skeletons" throughout Streamlit by
[@&#8203;sfc-gh-tteixeira](https://togithub.com/sfc-gh-tteixeira) in
[https://github.com/streamlit/streamlit/pull/7598](https://togithub.com/streamlit/streamlit/pull/7598)

##### Bug Fixes 🐛

- Make the outline for expanders appear on focus-visible and not focus
by [@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/7592](https://togithub.com/streamlit/streamlit/pull/7592)
- Use `NoReturn` annotation for stop and rerun by
[@&#8203;kongzii](https://togithub.com/kongzii) in
[https://github.com/streamlit/streamlit/pull/7422](https://togithub.com/streamlit/streamlit/pull/7422)
- Fix SVG scaling on fullscreen mode for `st.graphviz_chart` by
[@&#8203;snehankekre](https://togithub.com/snehankekre) in
[https://github.com/streamlit/streamlit/pull/7398](https://togithub.com/streamlit/streamlit/pull/7398)
- Fix top padding when embedding an app with a sidebar by
[@&#8203;sfc-gh-jgarcia](https://togithub.com/sfc-gh-jgarcia) in
[https://github.com/streamlit/streamlit/pull/7630](https://togithub.com/streamlit/streamlit/pull/7630)
- Fix app testing repr bug for `st.container` by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7644](https://togithub.com/streamlit/streamlit/pull/7644)
- Ensure file_uploader doesn't trigger needless reruns by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7641](https://togithub.com/streamlit/streamlit/pull/7641)
- Fix trigger value regression with `st.rerun` by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7643](https://togithub.com/streamlit/streamlit/pull/7643)
- Fix: MPA Nav expand arrow by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/7634](https://togithub.com/streamlit/streamlit/pull/7634)
- Greatly narrow errors that we retry in SnowflakeConnection by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7645](https://togithub.com/streamlit/streamlit/pull/7645)
- Fix how connection is declared for typing purposes by
[@&#8203;thezanke](https://togithub.com/thezanke) in
[https://github.com/streamlit/streamlit/pull/7671](https://togithub.com/streamlit/streamlit/pull/7671)
- Enforce pyarrow version for arrow-based custom components by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7695](https://togithub.com/streamlit/streamlit/pull/7695)
- Allow to access external server IP via https. by
[@&#8203;LarsHill](https://togithub.com/LarsHill) in
[https://github.com/streamlit/streamlit/pull/7712](https://togithub.com/streamlit/streamlit/pull/7712)
- Move dg_stack into a ContextVar to support with blocks in separate
threads by [@&#8203;eric-skydio](https://togithub.com/eric-skydio) in
[https://github.com/streamlit/streamlit/pull/7715](https://togithub.com/streamlit/streamlit/pull/7715)
- Improve st.connection caching behavior by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/7730](https://togithub.com/streamlit/streamlit/pull/7730)
- Don't use hash on floats in hashing.py by
[@&#8203;BlackHC](https://togithub.com/BlackHC) in
[https://github.com/streamlit/streamlit/pull/7754](https://togithub.com/streamlit/streamlit/pull/7754)

##### Other Changes

- Deprecate unused config options by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7584](https://togithub.com/streamlit/streamlit/pull/7584)
- Remove "Made by Streamlit" footer by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7583](https://togithub.com/streamlit/streamlit/pull/7583)
- Tweak "forgot config" SnowflakeConnection error message by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7652](https://togithub.com/streamlit/streamlit/pull/7652)
- Release Streamlit version 1.28.1 by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7666](https://togithub.com/streamlit/streamlit/pull/7666)
- Poll for script completion much more often in AppTest by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7691](https://togithub.com/streamlit/streamlit/pull/7691)
- Add Python 3.12 support by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/7663](https://togithub.com/streamlit/streamlit/pull/7663)
- Release Streamlit version 1.28.2 by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7716](https://togithub.com/streamlit/streamlit/pull/7716)
- fix: component dev url typo by
[@&#8203;ObservedObserver](https://togithub.com/ObservedObserver) in
[https://github.com/streamlit/streamlit/pull/7746](https://togithub.com/streamlit/streamlit/pull/7746)
- Fix another url typo by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7764](https://togithub.com/streamlit/streamlit/pull/7764)

#### New Contributors

- [@&#8203;kongzii](https://togithub.com/kongzii) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7422](https://togithub.com/streamlit/streamlit/pull/7422)
- [@&#8203;Asaurus1](https://togithub.com/Asaurus1) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7408](https://togithub.com/streamlit/streamlit/pull/7408)
- [@&#8203;thezanke](https://togithub.com/thezanke) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7671](https://togithub.com/streamlit/streamlit/pull/7671)
- [@&#8203;LarsHill](https://togithub.com/LarsHill) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7712](https://togithub.com/streamlit/streamlit/pull/7712)
- [@&#8203;eric-skydio](https://togithub.com/eric-skydio) made their
first contribution in
[https://github.com/streamlit/streamlit/pull/7715](https://togithub.com/streamlit/streamlit/pull/7715)
- [@&#8203;sfc-gh-pfinnigan](https://togithub.com/sfc-gh-pfinnigan) made
their first contribution in
[https://github.com/streamlit/streamlit/pull/7682](https://togithub.com/streamlit/streamlit/pull/7682)
- [@&#8203;samueldg](https://togithub.com/samueldg) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7762](https://togithub.com/streamlit/streamlit/pull/7762)
- [@&#8203;ObservedObserver](https://togithub.com/ObservedObserver) made
their first contribution in
[https://github.com/streamlit/streamlit/pull/7746](https://togithub.com/streamlit/streamlit/pull/7746)
- [@&#8203;BlackHC](https://togithub.com/BlackHC) made their first
contribution in
[https://github.com/streamlit/streamlit/pull/7754](https://togithub.com/streamlit/streamlit/pull/7754)

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.28.2...1.29.0

###
[`v1.28.2`](https://togithub.com/streamlit/streamlit/releases/tag/1.28.2)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.28.1...1.28.2)

<!-- Release notes generated using configuration in .github/release.yml
at 1.28.2 -->

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.28.1...1.28.2

###
[`v1.28.1`](https://togithub.com/streamlit/streamlit/releases/tag/1.28.1)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.28.0...1.28.1)

<!-- Release notes generated using configuration in .github/release.yml
at 1.28.1 -->

**Full Changelog**:
https://github.com/streamlit/streamlit/compare/1.28.0...1.28.1

###
[`v1.28.0`](https://togithub.com/streamlit/streamlit/releases/tag/1.28.0)

[Compare
Source](https://togithub.com/streamlit/streamlit/compare/1.27.2...1.28.0)

<!-- Release notes generated using configuration in .github/release.yml
at 1.28.0 -->

#### What's Changed

##### Breaking Changes 🛠

- Remove legacy dataframe serialization by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7429](https://togithub.com/streamlit/streamlit/pull/7429)

##### New Features 🎉

- Add overrideable default timeout for script tests by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7327](https://togithub.com/streamlit/streamlit/pull/7327)
- Fluent asserts and type narrowing for widgets in tests by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7325](https://togithub.com/streamlit/streamlit/pull/7325)
- Teach st.write how to not set unsafe_allow_html when possible by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7432](https://togithub.com/streamlit/streamlit/pull/7432)
- Add datetime index editing support for `st.data_editor` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7483](https://togithub.com/streamlit/streamlit/pull/7483)
- Support Graphviz layout engines by
[@&#8203;snehankekre](https://togithub.com/snehankekre) in
[https://github.com/streamlit/streamlit/pull/7505](https://togithub.com/streamlit/streamlit/pull/7505)
- Better input/output visibility in Langchain callback by
[@&#8203;pokidyshev](https://togithub.com/pokidyshev) in
[https://github.com/streamlit/streamlit/pull/7478](https://togithub.com/streamlit/streamlit/pull/7478)
- New test framework api structure by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7413](https://togithub.com/streamlit/streamlit/pull/7413)
- Arrow dataframe test wrapper by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7519](https://togithub.com/streamlit/streamlit/pull/7519)
- Columns and tabs in script testing by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7524](https://togithub.com/streamlit/streamlit/pull/7524)
- Chat input and messages for app testing by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7535](https://togithub.com/streamlit/streamlit/pull/7535)
- Update `st.spinner` by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/7488](https://togithub.com/streamlit/streamlit/pull/7488)
- Alert classes in app testing by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7542](https://togithub.com/streamlit/streamlit/pull/7542)
- Query params and secrets in app tests by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7561](https://togithub.com/streamlit/streamlit/pull/7561)
- De-experimentalize st.connection by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7536](https://togithub.com/streamlit/streamlit/pull/7536)
- Minor st.connection tweaks by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7562](https://togithub.com/streamlit/streamlit/pull/7562)
- Basic app test repr cleanup by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7573](https://togithub.com/streamlit/streamlit/pull/7573)
- Add toolbar to `st.dataframe` and `st.data_editor` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7345](https://togithub.com/streamlit/streamlit/pull/7345)
- Implement many remaining AppTest elements by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7576](https://togithub.com/streamlit/streamlit/pull/7576)

##### Bug Fixes 🐛

- Remove autosizer so we don't have weird flickering and weird layout
issues by [@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7281](https://togithub.com/streamlit/streamlit/pull/7281)
- Better dataframe hashing by
[@&#8203;kajarenc](https://togithub.com/kajarenc) in
[https://github.com/streamlit/streamlit/pull/7331](https://togithub.com/streamlit/streamlit/pull/7331)
- Fix bokeh slider by adding in side effects to package json by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7441](https://togithub.com/streamlit/streamlit/pull/7441)
- Fix vertical button regression in toolbar actions by
[@&#8203;willhuang1997](https://togithub.com/willhuang1997) in
[https://github.com/streamlit/streamlit/pull/7470](https://togithub.com/streamlit/streamlit/pull/7470)
- Upgrade plotly.js version by
[@&#8203;sfc-gh-wihuang](https://togithub.com/sfc-gh-wihuang) in
[https://github.com/streamlit/streamlit/pull/7449](https://togithub.com/streamlit/streamlit/pull/7449)
- Avoid confusion about file extensions: keep inner dots by
[@&#8203;mo42](https://togithub.com/mo42) in
[https://github.com/streamlit/streamlit/pull/7362](https://togithub.com/streamlit/streamlit/pull/7362)
- Configure non-range indices as required for editing with
`st.data_editor` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7481](https://togithub.com/streamlit/streamlit/pull/7481)
- Widget style fixes by
[@&#8203;sfc-gh-jgarcia](https://togithub.com/sfc-gh-jgarcia) in
[https://github.com/streamlit/streamlit/pull/7486](https://togithub.com/streamlit/streamlit/pull/7486)
- Support for non-string column names in `st.data_editor` by
[@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7485](https://togithub.com/streamlit/streamlit/pull/7485)
- Add user-friendly exception if dataframe exceeds max config of Pandas
Styler by [@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7497](https://togithub.com/streamlit/streamlit/pull/7497)
- Only use get_active_session when running in SiS by
[@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7502](https://togithub.com/streamlit/streamlit/pull/7502)
- Call matplotlib crash fix for scripts run in tests by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7511](https://togithub.com/streamlit/streamlit/pull/7511)
- Improve decimal type support for `st.dataframe` and `st.data_editor`
by [@&#8203;LukasMasuch](https://togithub.com/LukasMasuch) in
[https://github.com/streamlit/streamlit/pull/7475](https://togithub.com/streamlit/streamlit/pull/7475)
- Fix: Foreign language anchors by
[@&#8203;mayagbarnes](https://togithub.com/mayagbarnes) in
[https://github.com/streamlit/streamlit/pull/7454](https://togithub.com/streamlit/streamlit/pull/7454)
- Fix Chat Message container to align and manage the autosizer handling
by [@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/7504](https://togithub.com/streamlit/streamlit/pull/7504)
- Added permission to use Clipboard API in IFrame by
[@&#8203;dilipthakkar](https://togithub.com/dilipthakkar) in
[https://github.com/streamlit/streamlit/pull/7487](https://togithub.com/streamlit/streamlit/pull/7487)
- Move label attribute to only widgets that have it by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7560](https://togithub.com/streamlit/streamlit/pull/7560)
- Fix select slider value setting with non-strings by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7566](https://togithub.com/streamlit/streamlit/pull/7566)
- Fix attr access of session state in app tests by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7543](https://togithub.com/streamlit/streamlit/pull/7543)
- Added FIPS compliance by
[@&#8203;DueViktor](https://togithub.com/DueViktor) in
[https://github.com/streamlit/streamlit/pull/7527](https://togithub.com/streamlit/streamlit/pull/7527)
- Enlarge sidebar left and right padding to match MPA spacing by
[@&#8203;sfc-gh-jgarcia](https://togithub.com/sfc-gh-jgarcia) in
[https://github.com/streamlit/streamlit/pull/7531](https://togithub.com/streamlit/streamlit/pull/7531)
- Convert Expander to Details/Summary Element by
[@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https://github.com/streamlit/streamlit/pull/7247](https://togithub.com/streamlit/streamlit/pull/7247)
- Fix chat_input repr and add repr tests by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7574](https://togithub.com/streamlit/streamlit/pull/7574)

##### Other Changes

- Release 1.27.0 by [@&#8203;vdonato](https://togithub.com/vdonato) in
[https://github.com/streamlit/streamlit/pull/7402](https://togithub.com/streamlit/streamlit/pull/7402)
- Allow pillow 10.0.1 by
[@&#8203;AnOctopus](https://togithub.com/AnOctopus) in
[https://github.com/streamlit/streamlit/pull/7442](https://togithub.com/streamlit/streamlit/pull/7442)
- Release 1.27.1 by [@&#8203;kmcgrady](https://togithub.com/kmcgrady) in
[https:/

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on the first day of the
month" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/sawyerh/highlights).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNzcuOCIsInVwZGF0ZWRJblZlciI6IjM3LjM3Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
sfc-gh-pchiu pushed a commit to sfc-gh-pchiu/streamlit that referenced this pull request Sep 3, 2024
…values (streamlit#7741)

* Add display_text to LinkColumn

* reference display_text within column parameters instead of passing it into column functions

* updated pencil icon

* flatten the nesting of LinkCell data property

* fix link cell test file and remove unused editpencil file

* add kind to link cell template

* remove is regex check and assume displayText is a regex

* only compute text measurement for underline when cell is hovered

* move getLinkDisplayValue to the LinkColumn file

* fix js linter errors

* check if href is undefined or null when returning the missing value link cell

* add back regex check in getLinkDisplayValue

* add `cursor: pointer` to link column getCell output

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove unnecessary setting of displayText

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* move overlay editor style file into cells folder

* check if href and displayTest are null or undefined

* remove padding from text width calculation in the isHover logic

* check if display_text is a regex in the column to improve rendering performance

* optimize the regex check  on the column a bit more

* add escape char before .google.com to pass codeql failure

* revert yarn.lock file

* fix the escape char for the regex pattern

* Fix bug with edit mode on the overlay editor

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* add noopener and noreferrer

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove the hack around underline spacing

* add more link cell tests and fix styling

* add another test

* Updated docstring

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* add updated e2e screenshots

* Update lib/streamlit/elements/lib/column_types.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove extra space

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* Update e2e_playwright/st_dataframe_config.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* Update lib/streamlit/elements/lib/column_types.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* try adding updated screenshot

---------

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
sfc-gh-pchiu pushed a commit to sfc-gh-pchiu/streamlit that referenced this pull request Sep 3, 2024
…values (streamlit#7741)

* Add display_text to LinkColumn

* reference display_text within column parameters instead of passing it into column functions

* updated pencil icon

* flatten the nesting of LinkCell data property

* fix link cell test file and remove unused editpencil file

* add kind to link cell template

* remove is regex check and assume displayText is a regex

* only compute text measurement for underline when cell is hovered

* move getLinkDisplayValue to the LinkColumn file

* fix js linter errors

* check if href is undefined or null when returning the missing value link cell

* add back regex check in getLinkDisplayValue

* add `cursor: pointer` to link column getCell output

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove unnecessary setting of displayText

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* move overlay editor style file into cells folder

* check if href and displayTest are null or undefined

* remove padding from text width calculation in the isHover logic

* check if display_text is a regex in the column to improve rendering performance

* optimize the regex check  on the column a bit more

* add escape char before .google.com to pass codeql failure

* revert yarn.lock file

* fix the escape char for the regex pattern

* Fix bug with edit mode on the overlay editor

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* add noopener and noreferrer

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove the hack around underline spacing

* add more link cell tests and fix styling

* add another test

* Updated docstring

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* add updated e2e screenshots

* Update lib/streamlit/elements/lib/column_types.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* remove extra space

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* Update e2e_playwright/st_dataframe_config.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* Update lib/streamlit/elements/lib/column_types.py

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>

* try adding updated screenshot

---------

Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add link-format and anchor-text configuration to LinkColumn
4 participants