We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
pandas 2.0 support
### Checklist

- [X] I have searched the [existing issues](https://github.com/streamlit/streamlit/issues) for similar issues.
- [X] I added a very descriptive title to this issue.
- [X] I have provided sufficient information below to help reproduce this issue.

### Summary

```
The conflict is caused by:
    The user requested pandas==2.0.0
    streamlit 1.20.0 depends on pandas<2 and >=0.25
```

### Reproducible Code Example

```Python
pip install pandas==2.0.0
pip install streamlit==1.20.0
```


### Steps To Reproduce

_No response_

### Expected Behavior

_No response_

### Current Behavior

_No response_

### Is this a regression?

- [ ] Yes, this used to work in a previous version.

### Debug info

- Streamlit version: 1.20.0
- Python version: 3.11.1
- Operating System:
- Browser:
- Virtual environment:


### Additional Information

the following line should be updated
[https://github.com/streamlit/streamlit/blob/11950acfa537475109b421fea6da43c9d410542c/lib/setup.py#L40](url)

### Are you willing to submit a PR?

- [ ] Yes, I am willing to submit a PR!

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `lib/setup.py`
Content:
```
1 # Copyright (c) Streamlit Inc. (2018-2022) Snowflake Inc. (2022)
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #     http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 
15 import os
16 import sys
17 from pathlib import Path
18 
19 import setuptools
20 from setuptools.command.install import install
21 
22 THIS_DIRECTORY = Path(__file__).parent
23 
24 VERSION = "1.21.0"  # PEP-440
25 
26 NAME = "streamlit"
27 
28 # IMPORTANT: We should try very hard *not* to add dependencies to Streamlit.
29 # And if you do add one, make the required version as general as possible.
30 # But include relevant lower bounds for any features we use from our dependencies.
31 INSTALL_REQUIRES = [
32     "altair<5,>=3.2.0",
33     "blinker>=1.0.0",
34     "cachetools>=4.0",
35     "click>=7.0",
36     # 1.4 introduced the functionality found in python 3.8's importlib.metadata module
37     "importlib-metadata>=1.4",
38     "numpy",
39     "packaging>=14.1",
40     "pandas<2,>=0.25",
41     "pillow>=6.2.0",
42     "protobuf<4,>=3.12",
43     "pyarrow>=4.0",
44     "pympler>=0.9",
45     "python-dateutil",
46     "requests>=2.4",
47     "rich>=10.11.0",
48     "toml",
49     "typing-extensions>=3.10.0.0",
50     "tzlocal>=1.1",
51     "validators>=0.2",
52     # Don't require watchdog on MacOS, since it'll fail without xcode tools.
53     # Without watchdog, we fallback to a polling file watcher to check for app changes.
54     "watchdog; platform_system != 'Darwin'",
55 ]
56 
57 # We want to exclude some dependencies in our internal Snowpark conda distribution of
58 # Streamlit. These dependencies will be installed normally for both regular conda builds
59 # and PyPI builds (that is, for people installing streamlit using either
60 # `pip install streamlit` or `conda install -c conda-forge streamlit`)
61 SNOWPARK_CONDA_EXCLUDED_DEPENDENCIES = [
62     "gitpython!=3.1.19",
63     "pydeck>=0.1.dev5",
64     # Tornado 6.0.3 was the current Tornado version when Python 3.8, our earliest supported Python version,
65     # was released (Oct 14, 2019).
66     "tornado>=6.0.3",
67 ]
68 
69 if not os.getenv("SNOWPARK_CONDA_BUILD"):
70     INSTALL_REQUIRES.extend(SNOWPARK_CONDA_EXCLUDED_DEPENDENCIES)
71 
72 EXTRA_REQUIRES = {"snowflake": ["snowflake-snowpark-python; python_version=='3.8'"]}
73 
74 
75 class VerifyVersionCommand(install):
76     """Custom command to verify that the git tag matches our version"""
77 
78     description = "verify that the git tag matches our version"
79 
80     def run(self):
81         tag = os.getenv("TAG")
82 
83         if tag != VERSION:
84             info = "Git tag: {0} does not match the version of this app: {1}".format(
85                 tag, VERSION
86             )
87             sys.exit(info)
88 
89 
90 readme_path = THIS_DIRECTORY / ".." / "README.md"
91 if readme_path.exists():
92     long_description = readme_path.read_text()
93 else:
94     # In some build environments (specifically in conda), we may not have the README file
95     # readily available. In these cases, just let long_description be the empty string.
96     # Note that long_description isn't used at all in these build environments, so it
97     # being missing isn't problematic.
98     long_description = ""
99 
100 setuptools.setup(
101     name=NAME,
102     version=VERSION,
103     description="A faster way to build and share data apps",
104     long_description=long_description,
105     long_description_content_type="text/markdown",
106     url="https://streamlit.io",
107     project_urls={
108         "Source Code": "https://github.com/streamlit/streamlit",
109         "Bug Tracker": "https://github.com/streamlit/streamlit/issues",
110         "Release notes": "https://docs.streamlit.io/library/changelog",
111         "Documentation": "https://docs.streamlit.io/",
112         "Community": "https://discuss.streamlit.io/",
113         "Twitter": "https://twitter.com/streamlit",
114     },
115     author="Snowflake Inc",
116     author_email="hello@streamlit.io",
117     license="Apache License 2.0",
118     classifiers=[
119         "Development Status :: 5 - Production/Stable",
120         "Environment :: Console",
121         "Environment :: Web Environment",
122         "Intended Audience :: Developers",
123         "Intended Audience :: Science/Research",
124         "License :: OSI Approved :: Apache Software License",
125         "Programming Language :: Python :: 3.7",
126         "Programming Language :: Python :: 3.8",
127         "Programming Language :: Python :: 3.9",
128         "Programming Language :: Python :: 3.10",
129         "Topic :: Database :: Front-Ends",
130         "Topic :: Office/Business :: Financial :: Spreadsheet",
131         "Topic :: Scientific/Engineering :: Information Analysis",
132         "Topic :: Scientific/Engineering :: Visualization",
133         "Topic :: Software Development :: Libraries :: Application Frameworks",
134         "Topic :: Software Development :: Widget Sets",
135     ],
136     # We exclude Python 3.9.7 from our compatible versions due to a bug in that version
137     # with typing.Protocol. See https://github.com/streamlit/streamlit/issues/5140 and
138     # https://bugs.python.org/issue45121
139     python_requires=">=3.7, !=3.9.7",
140     # PEP 561: https://mypy.readthedocs.io/en/stable/installed_packages.html
141     package_data={"streamlit": ["py.typed", "hello/**/*.py"]},
142     packages=setuptools.find_packages(exclude=["tests", "tests.*"]),
143     # Requirements
144     install_requires=INSTALL_REQUIRES,
145     extras_require=EXTRA_REQUIRES,
146     zip_safe=False,  # install source files not egg
147     include_package_data=True,  # copy html and friends
148     entry_points={"console_scripts": ["streamlit = streamlit.web.cli:main"]},
149     # For Windows so that streamlit * commands work ie.
150     # - streamlit version
151     # - streamlit hello
152     scripts=["bin/streamlit.cmd"],
153     cmdclass={
154         "verify": VerifyVersionCommand,
155     },
156 )
157
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/lib/setup.py b/lib/setup.py
--- a/lib/setup.py
+++ b/lib/setup.py
@@ -37,7 +37,7 @@
     "importlib-metadata>=1.4",
     "numpy",
     "packaging>=14.1",
-    "pandas<2,>=0.25",
+    "pandas<3,>=0.25",
     "pillow>=6.2.0",
     "protobuf<4,>=3.12",
     "pyarrow>=4.0",

{"golden_diff": "diff --git a/lib/setup.py b/lib/setup.py\n--- a/lib/setup.py\n+++ b/lib/setup.py\n@@ -37,7 +37,7 @@\n     \"importlib-metadata>=1.4\",\n     \"numpy\",\n     \"packaging>=14.1\",\n-    \"pandas<2,>=0.25\",\n+    \"pandas<3,>=0.25\",\n     \"pillow>=6.2.0\",\n     \"protobuf<4,>=3.12\",\n     \"pyarrow>=4.0\",\n", "issue": "pandas 2.0 support\n### Checklist\r\n\r\n- [X] I have searched the [existing issues](https://github.com/streamlit/streamlit/issues) for similar issues.\r\n- [X] I added a very descriptive title to this issue.\r\n- [X] I have provided sufficient information below to help reproduce this issue.\r\n\r\n### Summary\r\n\r\n```\r\nThe conflict is caused by:\r\n    The user requested pandas==2.0.0\r\n    streamlit 1.20.0 depends on pandas<2 and >=0.25\r\n```\r\n\r\n### Reproducible Code Example\r\n\r\n```Python\r\npip install pandas==2.0.0\r\npip install streamlit==1.20.0\r\n```\r\n\r\n\r\n### Steps To Reproduce\r\n\r\n_No response_\r\n\r\n### Expected Behavior\r\n\r\n_No response_\r\n\r\n### Current Behavior\r\n\r\n_No response_\r\n\r\n### Is this a regression?\r\n\r\n- [ ] Yes, this used to work in a previous version.\r\n\r\n### Debug info\r\n\r\n- Streamlit version: 1.20.0\r\n- Python version: 3.11.1\r\n- Operating System:\r\n- Browser:\r\n- Virtual environment:\r\n\r\n\r\n### Additional Information\r\n\r\nthe following line should be updated\r\n[https://github.com/streamlit/streamlit/blob/11950acfa537475109b421fea6da43c9d410542c/lib/setup.py#L40](url)\r\n\r\n### Are you willing to submit a PR?\r\n\r\n- [ ] Yes, I am willing to submit a PR!\n", "before_files": [{"content": "# Copyright (c) Streamlit Inc. (2018-2022) Snowflake Inc. (2022)\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport os\nimport sys\nfrom pathlib import Path\n\nimport setuptools\nfrom setuptools.command.install import install\n\nTHIS_DIRECTORY = Path(__file__).parent\n\nVERSION = \"1.21.0\"  # PEP-440\n\nNAME = \"streamlit\"\n\n# IMPORTANT: We should try very hard *not* to add dependencies to Streamlit.\n# And if you do add one, make the required version as general as possible.\n# But include relevant lower bounds for any features we use from our dependencies.\nINSTALL_REQUIRES = [\n    \"altair<5,>=3.2.0\",\n    \"blinker>=1.0.0\",\n    \"cachetools>=4.0\",\n    \"click>=7.0\",\n    # 1.4 introduced the functionality found in python 3.8's importlib.metadata module\n    \"importlib-metadata>=1.4\",\n    \"numpy\",\n    \"packaging>=14.1\",\n    \"pandas<2,>=0.25\",\n    \"pillow>=6.2.0\",\n    \"protobuf<4,>=3.12\",\n    \"pyarrow>=4.0\",\n    \"pympler>=0.9\",\n    \"python-dateutil\",\n    \"requests>=2.4\",\n    \"rich>=10.11.0\",\n    \"toml\",\n    \"typing-extensions>=3.10.0.0\",\n    \"tzlocal>=1.1\",\n    \"validators>=0.2\",\n    # Don't require watchdog on MacOS, since it'll fail without xcode tools.\n    # Without watchdog, we fallback to a polling file watcher to check for app changes.\n    \"watchdog; platform_system != 'Darwin'\",\n]\n\n# We want to exclude some dependencies in our internal Snowpark conda distribution of\n# Streamlit. These dependencies will be installed normally for both regular conda builds\n# and PyPI builds (that is, for people installing streamlit using either\n# `pip install streamlit` or `conda install -c conda-forge streamlit`)\nSNOWPARK_CONDA_EXCLUDED_DEPENDENCIES = [\n    \"gitpython!=3.1.19\",\n    \"pydeck>=0.1.dev5\",\n    # Tornado 6.0.3 was the current Tornado version when Python 3.8, our earliest supported Python version,\n    # was released (Oct 14, 2019).\n    \"tornado>=6.0.3\",\n]\n\nif not os.getenv(\"SNOWPARK_CONDA_BUILD\"):\n    INSTALL_REQUIRES.extend(SNOWPARK_CONDA_EXCLUDED_DEPENDENCIES)\n\nEXTRA_REQUIRES = {\"snowflake\": [\"snowflake-snowpark-python; python_version=='3.8'\"]}\n\n\nclass VerifyVersionCommand(install):\n    \"\"\"Custom command to verify that the git tag matches our version\"\"\"\n\n    description = \"verify that the git tag matches our version\"\n\n    def run(self):\n        tag = os.getenv(\"TAG\")\n\n        if tag != VERSION:\n            info = \"Git tag: {0} does not match the version of this app: {1}\".format(\n                tag, VERSION\n            )\n            sys.exit(info)\n\n\nreadme_path = THIS_DIRECTORY / \"..\" / \"README.md\"\nif readme_path.exists():\n    long_description = readme_path.read_text()\nelse:\n    # In some build environments (specifically in conda), we may not have the README file\n    # readily available. In these cases, just let long_description be the empty string.\n    # Note that long_description isn't used at all in these build environments, so it\n    # being missing isn't problematic.\n    long_description = \"\"\n\nsetuptools.setup(\n    name=NAME,\n    version=VERSION,\n    description=\"A faster way to build and share data apps\",\n    long_description=long_description,\n    long_description_content_type=\"text/markdown\",\n    url=\"https://streamlit.io\",\n    project_urls={\n        \"Source Code\": \"https://github.com/streamlit/streamlit\",\n        \"Bug Tracker\": \"https://github.com/streamlit/streamlit/issues\",\n        \"Release notes\": \"https://docs.streamlit.io/library/changelog\",\n        \"Documentation\": \"https://docs.streamlit.io/\",\n        \"Community\": \"https://discuss.streamlit.io/\",\n        \"Twitter\": \"https://twitter.com/streamlit\",\n    },\n    author=\"Snowflake Inc\",\n    author_email=\"hello@streamlit.io\",\n    license=\"Apache License 2.0\",\n    classifiers=[\n        \"Development Status :: 5 - Production/Stable\",\n        \"Environment :: Console\",\n        \"Environment :: Web Environment\",\n        \"Intended Audience :: Developers\",\n        \"Intended Audience :: Science/Research\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Topic :: Database :: Front-Ends\",\n        \"Topic :: Office/Business :: Financial :: Spreadsheet\",\n        \"Topic :: Scientific/Engineering :: Information Analysis\",\n        \"Topic :: Scientific/Engineering :: Visualization\",\n        \"Topic :: Software Development :: Libraries :: Application Frameworks\",\n        \"Topic :: Software Development :: Widget Sets\",\n    ],\n    # We exclude Python 3.9.7 from our compatible versions due to a bug in that version\n    # with typing.Protocol. See https://github.com/streamlit/streamlit/issues/5140 and\n    # https://bugs.python.org/issue45121\n    python_requires=\">=3.7, !=3.9.7\",\n    # PEP 561: https://mypy.readthedocs.io/en/stable/installed_packages.html\n    package_data={\"streamlit\": [\"py.typed\", \"hello/**/*.py\"]},\n    packages=setuptools.find_packages(exclude=[\"tests\", \"tests.*\"]),\n    # Requirements\n    install_requires=INSTALL_REQUIRES,\n    extras_require=EXTRA_REQUIRES,\n    zip_safe=False,  # install source files not egg\n    include_package_data=True,  # copy html and friends\n    entry_points={\"console_scripts\": [\"streamlit = streamlit.web.cli:main\"]},\n    # For Windows so that streamlit * commands work ie.\n    # - streamlit version\n    # - streamlit hello\n    scripts=[\"bin/streamlit.cmd\"],\n    cmdclass={\n        \"verify\": VerifyVersionCommand,\n    },\n)\n", "path": "lib/setup.py"}], "after_files": [{"content": "# Copyright (c) Streamlit Inc. (2018-2022) Snowflake Inc. (2022)\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport os\nimport sys\nfrom pathlib import Path\n\nimport setuptools\nfrom setuptools.command.install import install\n\nTHIS_DIRECTORY = Path(__file__).parent\n\nVERSION = \"1.21.0\"  # PEP-440\n\nNAME = \"streamlit\"\n\n# IMPORTANT: We should try very hard *not* to add dependencies to Streamlit.\n# And if you do add one, make the required version as general as possible.\n# But include relevant lower bounds for any features we use from our dependencies.\nINSTALL_REQUIRES = [\n    \"altair<5,>=3.2.0\",\n    \"blinker>=1.0.0\",\n    \"cachetools>=4.0\",\n    \"click>=7.0\",\n    # 1.4 introduced the functionality found in python 3.8's importlib.metadata module\n    \"importlib-metadata>=1.4\",\n    \"numpy\",\n    \"packaging>=14.1\",\n    \"pandas<3,>=0.25\",\n    \"pillow>=6.2.0\",\n    \"protobuf<4,>=3.12\",\n    \"pyarrow>=4.0\",\n    \"pympler>=0.9\",\n    \"python-dateutil\",\n    \"requests>=2.4\",\n    \"rich>=10.11.0\",\n    \"toml\",\n    \"typing-extensions>=3.10.0.0\",\n    \"tzlocal>=1.1\",\n    \"validators>=0.2\",\n    # Don't require watchdog on MacOS, since it'll fail without xcode tools.\n    # Without watchdog, we fallback to a polling file watcher to check for app changes.\n    \"watchdog; platform_system != 'Darwin'\",\n]\n\n# We want to exclude some dependencies in our internal Snowpark conda distribution of\n# Streamlit. These dependencies will be installed normally for both regular conda builds\n# and PyPI builds (that is, for people installing streamlit using either\n# `pip install streamlit` or `conda install -c conda-forge streamlit`)\nSNOWPARK_CONDA_EXCLUDED_DEPENDENCIES = [\n    \"gitpython!=3.1.19\",\n    \"pydeck>=0.1.dev5\",\n    # Tornado 6.0.3 was the current Tornado version when Python 3.8, our earliest supported Python version,\n    # was released (Oct 14, 2019).\n    \"tornado>=6.0.3\",\n]\n\nif not os.getenv(\"SNOWPARK_CONDA_BUILD\"):\n    INSTALL_REQUIRES.extend(SNOWPARK_CONDA_EXCLUDED_DEPENDENCIES)\n\nEXTRA_REQUIRES = {\"snowflake\": [\"snowflake-snowpark-python; python_version=='3.8'\"]}\n\n\nclass VerifyVersionCommand(install):\n    \"\"\"Custom command to verify that the git tag matches our version\"\"\"\n\n    description = \"verify that the git tag matches our version\"\n\n    def run(self):\n        tag = os.getenv(\"TAG\")\n\n        if tag != VERSION:\n            info = \"Git tag: {0} does not match the version of this app: {1}\".format(\n                tag, VERSION\n            )\n            sys.exit(info)\n\n\nreadme_path = THIS_DIRECTORY / \"..\" / \"README.md\"\nif readme_path.exists():\n    long_description = readme_path.read_text()\nelse:\n    # In some build environments (specifically in conda), we may not have the README file\n    # readily available. In these cases, just let long_description be the empty string.\n    # Note that long_description isn't used at all in these build environments, so it\n    # being missing isn't problematic.\n    long_description = \"\"\n\nsetuptools.setup(\n    name=NAME,\n    version=VERSION,\n    description=\"A faster way to build and share data apps\",\n    long_description=long_description,\n    long_description_content_type=\"text/markdown\",\n    url=\"https://streamlit.io\",\n    project_urls={\n        \"Source Code\": \"https://github.com/streamlit/streamlit\",\n        \"Bug Tracker\": \"https://github.com/streamlit/streamlit/issues\",\n        \"Release notes\": \"https://docs.streamlit.io/library/changelog\",\n        \"Documentation\": \"https://docs.streamlit.io/\",\n        \"Community\": \"https://discuss.streamlit.io/\",\n        \"Twitter\": \"https://twitter.com/streamlit\",\n    },\n    author=\"Snowflake Inc\",\n    author_email=\"hello@streamlit.io\",\n    license=\"Apache License 2.0\",\n    classifiers=[\n        \"Development Status :: 5 - Production/Stable\",\n        \"Environment :: Console\",\n        \"Environment :: Web Environment\",\n        \"Intended Audience :: Developers\",\n        \"Intended Audience :: Science/Research\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Topic :: Database :: Front-Ends\",\n        \"Topic :: Office/Business :: Financial :: Spreadsheet\",\n        \"Topic :: Scientific/Engineering :: Information Analysis\",\n        \"Topic :: Scientific/Engineering :: Visualization\",\n        \"Topic :: Software Development :: Libraries :: Application Frameworks\",\n        \"Topic :: Software Development :: Widget Sets\",\n    ],\n    # We exclude Python 3.9.7 from our compatible versions due to a bug in that version\n    # with typing.Protocol. See https://github.com/streamlit/streamlit/issues/5140 and\n    # https://bugs.python.org/issue45121\n    python_requires=\">=3.7, !=3.9.7\",\n    # PEP 561: https://mypy.readthedocs.io/en/stable/installed_packages.html\n    package_data={\"streamlit\": [\"py.typed\", \"hello/**/*.py\"]},\n    packages=setuptools.find_packages(exclude=[\"tests\", \"tests.*\"]),\n    # Requirements\n    install_requires=INSTALL_REQUIRES,\n    extras_require=EXTRA_REQUIRES,\n    zip_safe=False,  # install source files not egg\n    include_package_data=True,  # copy html and friends\n    entry_points={\"console_scripts\": [\"streamlit = streamlit.web.cli:main\"]},\n    # For Windows so that streamlit * commands work ie.\n    # - streamlit version\n    # - streamlit hello\n    scripts=[\"bin/streamlit.cmd\"],\n    cmdclass={\n        \"verify\": VerifyVersionCommand,\n    },\n)\n", "path": "lib/setup.py"}]}