.. _whatsnew_0191:

v0.19.1 (November 3, 2016)
--------------------------

{{ header }}

.. ipython:: python
   :suppress:

   from pandas import * # noqa F401, F403


This is a minor bug-fix release from 0.19.0 and includes some small regression fixes,
bug fixes and performance improvements.
We recommend that all users upgrade to this version.

.. contents:: What's new in v0.19.1
    :local:
    :backlinks: none


.. _whatsnew_0191.performance:

Performance improvements
~~~~~~~~~~~~~~~~~~~~~~~~

- Fixed performance regression in factorization of ``Period`` data (:issue:`14338`)
- Fixed performance regression in ``Series.asof(where)`` when ``where`` is a scalar (:issue:`14461`)
- Improved performance in ``DataFrame.asof(where)`` when ``where`` is a scalar (:issue:`14461`)
- Improved performance in ``.to_json()`` when ``lines=True`` (:issue:`14408`)
- Improved performance in certain types of `loc` indexing with a MultiIndex (:issue:`14551`).


.. _whatsnew_0191.bug_fixes:

Bug fixes
~~~~~~~~~

- Source installs from PyPI will now again work without ``cython`` installed, as in previous versions (:issue:`14204`)
- Compat with Cython 0.25 for building (:issue:`14496`)
- Fixed regression where user-provided file handles were closed in ``read_csv`` (c engine) (:issue:`14418`).
- Fixed regression in ``DataFrame.quantile`` when missing values where present in some columns (:issue:`14357`).
- Fixed regression in ``Index.difference`` where the ``freq`` of a ``DatetimeIndex`` was incorrectly set (:issue:`14323`)
- Added back ``pandas.core.common.array_equivalent`` with a deprecation warning (:issue:`14555`).
- Bug in ``pd.read_csv`` for the C engine in which quotation marks were improperly parsed in skipped rows (:issue:`14459`)
- Bug in ``pd.read_csv`` for Python 2.x in which Unicode quote characters were no longer being respected (:issue:`14477`)
- Fixed regression in ``Index.append`` when categorical indices were appended (:issue:`14545`).
- Fixed regression in ``pd.DataFrame`` where constructor fails when given dict with ``None`` value (:issue:`14381`)
- Fixed regression in ``DatetimeIndex._maybe_cast_slice_bound`` when index is empty (:issue:`14354`).
- Bug in localizing an ambiguous timezone when a boolean is passed (:issue:`14402`)
- Bug in ``TimedeltaIndex`` addition with a Datetime-like object where addition overflow in the negative direction was not being caught (:issue:`14068`, :issue:`14453`)
- Bug in string indexing against data with ``object`` ``Index`` may raise ``AttributeError`` (:issue:`14424`)
- Correctly raise ``ValueError`` on empty input to ``pd.eval()`` and ``df.query()`` (:issue:`13139`)
- Bug in ``RangeIndex.intersection`` when result is a empty set (:issue:`14364`).
- Bug in groupby-transform broadcasting that could cause incorrect dtype coercion (:issue:`14457`)
- Bug in ``Series.__setitem__`` which allowed mutating read-only arrays (:issue:`14359`).
- Bug in ``DataFrame.insert`` where multiple calls with duplicate columns can fail (:issue:`14291`)
- ``pd.merge()`` will raise ``ValueError`` with non-boolean parameters in passed boolean type arguments (:issue:`14434`)
- Bug in ``Timestamp`` where dates very near the minimum (1677-09) could underflow on creation (:issue:`14415`)
- Bug in ``pd.concat`` where names of the ``keys`` were not propagated to the resulting ``MultiIndex`` (:issue:`14252`)
- Bug in ``pd.concat`` where ``axis`` cannot take string parameters ``'rows'`` or ``'columns'`` (:issue:`14369`)
- Bug in ``pd.concat`` with dataframes heterogeneous in length and tuple ``keys`` (:issue:`14438`)
- Bug in ``MultiIndex.set_levels`` where illegal level values were still set after raising an error (:issue:`13754`)
- Bug in ``DataFrame.to_json`` where ``lines=True`` and a value contained a ``}`` character (:issue:`14391`)
- Bug in ``df.groupby`` causing an ``AttributeError`` when grouping a single index frame by a column and the index level (:issue:`14327`)
- Bug in ``df.groupby`` where ``TypeError`` raised when ``pd.Grouper(key=...)`` is passed in a list (:issue:`14334`)
- Bug in ``pd.pivot_table`` may raise ``TypeError`` or ``ValueError`` when ``index`` or ``columns``
  is not scalar and ``values`` is not specified (:issue:`14380`)


.. _whatsnew_0.19.1.contributors:

Contributors
~~~~~~~~~~~~

.. contributors:: v0.19.0..v0.19.1
