# Release notes for cobrapy 0.19.0

We now have an official code of conduct and a committee of three people to handle
reports! You can contact them at [conduct@opencobra.org](mailto:conduct@opencobra.org).
You can also contact them individually at:

* [Maureen Carey](mailto:MAC9JC@virginia.edu)
* [Svetlana Kutuzova](mailto:svegal@biosustain.dtu.dk)
* [Greg Medlock](mailto:GLM5UH@virginia.edu)

Many thanks to them for taking on this responsibility.

## New features

- Deletion result DataFrames as returned by functions from `cobra.deletions`
  now have a new `knockout` accessor. See the docs on usage examples.
- All summaries are now persistent objects. The same summary can be displayed in
  multiple ways. The underlying data for the summary can also be accessed.
- The model summary now displays elementary (by default carbon) uptake and secretion.
- The JSON schema is now available as a stand-alone JSON file.

## Fixes

- Remove the frozenset indexing in deletion DataFrames that is now unsupported
  in pandas.
- Summaries for models, metabolites, and reactions are now calculated instantaneously
  and thus also work with model contexts.
- JSON models can now contain infinity and NaN values as bounds.
- The Matlab bridge for reading Matlab models should be restored. Any testing or
 problem reports are greatly appreciated.

## Deprecated features

- We are progressively updating our codebase. That means that more and more parts will
  require Python 3.6+.

## Backwards incompatible changes

- Deletion result DataFrames have no frozenset index anymore but now carry the
  deleted elements in the `ids` column.
