@@ -10,12 +10,27 @@ including other versions of pandas.
1010
1111.. warning ::
1212
13+ The packages `xlrd <https://xlrd.readthedocs.io/en/latest/ >`_ for reading excel
14+ files and `xlwt <https://xlwt.readthedocs.io/en/latest/ >`_ for
15+ writing excel files are no longer maintained. These are the only engines in pandas
16+ that support the xls format.
17+
1318 Previously, the default argument ``engine=None `` to ``pd.read_excel ``
14- would result in using the `xlrd <https://xlrd.readthedocs.io/en/latest/ >`_ engine in
15- many cases. The engine ``xlrd `` is no longer maintained, and is not supported with
16- python >= 3.9. If `openpyxl <https://pypi.org/project/openpyxl/ >`_ is installed,
17- many of these cases will now default to using the ``openpyxl `` engine. See the
18- :func: `read_excel ` documentation for more details.
19+ would result in using the ``xlrd `` engine in many cases. If
20+ `openpyxl <https://openpyxl.readthedocs.io/en/stable/ >`_ is installed,
21+ many of these cases will now default to using the ``openpyxl `` engine.
22+ See the :func: `read_excel ` documentation for more details. Attempting to read
23+ ``.xls `` files or specifying ``engine="xlrd" `` to ``pd.read_excel `` will not
24+ raise a warning. However users should be aware that ``xlrd `` is already
25+ broken with certain package configurations, for example with Python 3.9
26+ when `defusedxml <https://github.com/tiran/defusedxml/ >`_ is installed, and
27+ is anticipated to be unusable in the future.
28+
29+ Attempting to use the the ``xlwt `` engine will raise a ``FutureWarning ``
30+ unless the option :attr: `io.excel.xls.writer ` is set to ``"xlwt" ``.
31+ While this option is now deprecated and will also raise a ``FutureWarning ``,
32+ it can be globally set and the warning suppressed. Users are recommended to
33+ write ``.xlsx `` files using the ``openpyxl `` engine instead.
1934
2035.. ---------------------------------------------------------------------------
2136
@@ -260,6 +275,7 @@ Other enhancements
260275- Added :meth: `~DataFrame.set_flags ` for setting table-wide flags on a Series or DataFrame (:issue: `28394 `)
261276- :meth: `DataFrame.applymap ` now supports ``na_action `` (:issue: `23803 `)
262277- :class: `Index ` with object dtype supports division and multiplication (:issue: `34160 `)
278+ - :meth: `io.sql.get_schema ` now supports a ``schema `` keyword argument that will add a schema into the create table statement (:issue: `28486 `)
263279- :meth: `DataFrame.explode ` and :meth: `Series.explode ` now support exploding of sets (:issue: `35614 `)
264280- :meth: `DataFrame.hist ` now supports time series (datetime) data (:issue: `32590 `)
265281- :meth: `.Styler.set_table_styles ` now allows the direct styling of rows and columns and can be chained (:issue: `35607 `)
@@ -479,7 +495,7 @@ Optional libraries below the lowest tested version may still work, but are not c
479495
480496See :ref: `install.dependencies ` and :ref: `install.optional_dependencies ` for more.
481497
482- .. _ whatsnew_200 .api.other :
498+ .. _ whatsnew_120 .api.other :
483499
484500Other API changes
485501^^^^^^^^^^^^^^^^^
@@ -850,4 +866,4 @@ Other
850866Contributors
851867~~~~~~~~~~~~
852868
853- .. contributors :: v1.1.4 ..v1.2.0|HEAD
869+ .. contributors :: v1.1.5 ..v1.2.0|HEAD
0 commit comments