diff --git a/docs/iris/src/_templates/index.html b/docs/iris/src/_templates/index.html
index e444067911..3f12c8d521 100644
--- a/docs/iris/src/_templates/index.html
+++ b/docs/iris/src/_templates/index.html
@@ -113,7 +113,7 @@
extra information on specific technical issues
- What's new in Iris 2.0?
+
What's new in Iris 2.1?
recent changes in Iris's capabilities
diff --git a/docs/iris/src/whatsnew/1.5.rst b/docs/iris/src/whatsnew/1.5.rst
index c1713bf15f..7af1e40285 100644
--- a/docs/iris/src/whatsnew/1.5.rst
+++ b/docs/iris/src/whatsnew/1.5.rst
@@ -67,7 +67,7 @@ Iris 1.5 features
plt.gca().gridlines()
plt.show()
- .. image:: pics/transverse_merc.png
+ .. image:: images/transverse_merc.png
* Support for loading NAME files (gridded and trajectory data).
* Multi-dimensional coordinate support added for
diff --git a/docs/iris/src/whatsnew/2.1.rst b/docs/iris/src/whatsnew/2.1.rst
new file mode 100644
index 0000000000..a1c4a21e5f
--- /dev/null
+++ b/docs/iris/src/whatsnew/2.1.rst
@@ -0,0 +1,76 @@
+What's New in Iris 2.1
+**********************
+
+:Release: 2.1
+:Date: 2018-06-06
+
+This document explains the new/changed features of Iris in version 2.1
+(:doc:`older "What's New" release notes can be found here`.)
+
+
+Iris 2.1 Dependency updates
+===========================
+
+* The `cf_units `_ dependency
+ was updated to cf_units ``v2.0``.
+ cf_units v2 is almost entirely backwards compatible with v1.
+ However the ability to preserve some aliased calendars has been removed.
+ For this reason, it is possible that NetCDF load of a variable with a
+ "standard" calendar will result in a saved NetCDF of a "gregorian"
+ calendar.
+* Iris updated its time-handling functionality from the
+ `netcdf4-python `_
+ ``netcdftime`` implementation to the standalone module
+ `cftime `_.
+ cftime is entirely compatible with netcdftime, but some issues may
+ occur where users are constructing their own datetime objects.
+ In this situation, simply replacing ``netcdftime.datetime`` with
+ ``cftime.datetime`` should be sufficient.
+* Iris now requires version 2 of Matplotlib, and ``>=1.14`` of NumPy.
+ Full requirements can be seen in the `requirements `_
+ directory of the Iris' the source.
+
+Iris 2.1 Features
+=================
+
+* Added ``repr_html`` functionality to the :class:`~iris.cube.Cube` to provide
+ a rich html representation of cubes in Jupyter notebooks.
+
+ .. image:: images/notebook_repr.png
+
+* Updated :func:`iris.cube.Cube.name` to return a STASH code if the cube has
+ one and no other valid names are present. This is now consistent with the
+ summary information from :func:`iris.cube.Cube.summary`.
+* The partial collapse of multi-dimensional auxiliary coordinates is now
+ supported. Collapsed bounds span the range of the collapsed dimension(s).
+* Added new function :func:`iris.cube.CubeList.realise_data` to compute
+ multiple lazy values in a single operation, avoiding repeated re-loading of
+ data or re-calculation of expressions.
+* The methods :meth:`iris.cube.Cube.convert_units` and
+ :meth:`iris.coords.Coord.convert_units` no longer forcibly realise the cube
+ data or coordinate points/bounds. The converted values are now lazy arrays
+ if the originals were.
+* Added :meth:`iris.analysis.trajectory.interpolate` that allows you to
+ interpolate to find values along a trajectory.
+* It is now possible to add an attribute of ``missing_value`` to a cube.
+ https://github.com/SciTools/iris/issues/1588
+* Iris can now represent data on the Albers Equal Area Projection,
+ and the NetCDF loader and saver were updated to handle this.
+ https://github.com/SciTools/iris/issues/2943
+
+Bugs Fixed
+==========
+
+* All var names being written to NetCDF are now CF compliant.
+ Non alpha-numeric characters are replaced with '_', and var names now always
+ have a leading letter. https://github.com/SciTools/iris/pull/2930
+* A cube resulting from a regrid operation using the `iris.analysis.AreaWeighted`
+ regridding scheme will now have the smallest floating point data type
+ to which the source cube's data type can be safely converted using NumPy's
+ type promotion rules.
+
+Incompatible Changes
+====================
+* The deprecated :mod:`iris.experimental.um` was removed.
+ Please use consider using `mule `_
+ as an alternative.
diff --git a/docs/iris/src/whatsnew/contributions_2.0/incompatiblechange_2018-Jan-12_area_weighted_regridder_dtype.txt b/docs/iris/src/whatsnew/contributions_2.0/incompatiblechange_2018-Jan-12_area_weighted_regridder_dtype.txt
deleted file mode 100644
index c3bcd7f55b..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.0/incompatiblechange_2018-Jan-12_area_weighted_regridder_dtype.txt
+++ /dev/null
@@ -1 +0,0 @@
-* A cube resulting from a regrid operation using the `iris.analysis.AreaWeighted` regridding scheme will now have the smallest floating point data type to which the source cube's data type can be safely converted using NumPy's type promotion rules.
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/contributions_2.1/bugfix_2018-May-03_var_name_constraint.txt b/docs/iris/src/whatsnew/contributions_2.1/bugfix_2018-May-03_var_name_constraint.txt
deleted file mode 100644
index 4ffddcb7be..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/bugfix_2018-May-03_var_name_constraint.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-* All var names being written to NetCDF are now CF compliant. Non alpha-numeric characters are replaced with '_', and must always have a leading letter.
- Ref: https://github.com/SciTools/iris/pull/2930
diff --git a/docs/iris/src/whatsnew/contributions_2.1/incompatiblechange_2018-May-01_remove_experimental_um.txt b/docs/iris/src/whatsnew/contributions_2.1/incompatiblechange_2018-May-01_remove_experimental_um.txt
deleted file mode 100644
index fc128a57db..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/incompatiblechange_2018-May-01_remove_experimental_um.txt
+++ /dev/null
@@ -1 +0,0 @@
-* Removed :mod:`iris.experimental.um`. Please use `mule ` instead.
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Feb-04_lazy_convert_units.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Feb-04_lazy_convert_units.txt
deleted file mode 100644
index ac30589dd5..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Feb-04_lazy_convert_units.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-* The methods :meth:`iris.cube.Cube.convert_units` and
- :meth:`iris.coords.Coord.convert_units` no longer forcibly realise the cube
- data or coordinate points/bounds : The converted values are now lazy arrays
- if the originals were.
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Jan-04_missing_value_attr.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Jan-04_missing_value_attr.txt
deleted file mode 100644
index fb265ac55b..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Jan-04_missing_value_attr.txt
+++ /dev/null
@@ -1 +0,0 @@
-* It is now possible to add an attribute of missing_value to a cube. https://github.com/SciTools/iris/issues/1588 refers
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Jan-18_trajectory-interpolate.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Jan-18_trajectory-interpolate.txt
deleted file mode 100644
index ff6c3076e1..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Jan-18_trajectory-interpolate.txt
+++ /dev/null
@@ -1 +0,0 @@
-* Added :meth:`iris.analysis.trajectory.interpolate` that allows you interpolate to find values along a trajectory.
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Mar-08_co_realise_cubes.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Mar-08_co_realise_cubes.txt
deleted file mode 100644
index 799a768f3c..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-Mar-08_co_realise_cubes.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-* Added new function :func:`iris.cube.CubeList.realise_data` to compute
- multiple lazy values in a single operation, avoiding repeated re-loading of
- data or re-calculation of expressions.
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-03_multidim_collapse.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-03_multidim_collapse.txt
deleted file mode 100644
index e9dc217cb3..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-03_multidim_collapse.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-* The partial collapse of multi-dimensional auxiliary coordinates is now
- supported. Collapsed bounds span the range of the collapsed dimension(s).
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-03_stash_names.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-03_stash_names.txt
deleted file mode 100644
index 7c3eacbb1c..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-03_stash_names.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-* Updated :func:`iris.cube.Cube.name` to return a STASH code if the cube has
- one and no other valid names are present. This is now consistent with the
- summary information.
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-08_repr-html.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-08_repr-html.txt
deleted file mode 100644
index f64f2580e9..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-08_repr-html.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-* Added ``repr_html`` functionality to the :class:`~iris.cube.Cube` to provide
- a rich html representation of cubes in Jupyter notebooks.
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-22_cf_units_2.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-22_cf_units_2.txt
deleted file mode 100644
index e648e4b10b..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-22_cf_units_2.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-Iris updated its cf_units dependency to cf_units v2. cf_units 2 is almost entirely backwards compatible,
-although the ability to preserve some alias calendars has been removed. For this reason, it is possible
-that NetCDF load of a variable with a "standard" calendar will result in a saved NetCDF of a "gregorian"
-calendar.
diff --git a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-23_cftime.txt b/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-23_cftime.txt
deleted file mode 100644
index de74eeb8d6..0000000000
--- a/docs/iris/src/whatsnew/contributions_2.1/newfeature_2018-May-23_cftime.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Iris updated its time-handling functionality from the netcdf4-python builtin netcdftime to the standalone module cftime.
-cftime is entirely compatible with netcdftime.
\ No newline at end of file
diff --git a/docs/iris/src/whatsnew/pics/transverse_merc.png b/docs/iris/src/whatsnew/images/transverse_merc.png
similarity index 100%
rename from docs/iris/src/whatsnew/pics/transverse_merc.png
rename to docs/iris/src/whatsnew/images/transverse_merc.png
diff --git a/docs/iris/src/whatsnew/index.rst b/docs/iris/src/whatsnew/index.rst
index 10cfb5ddad..104c5074ca 100644
--- a/docs/iris/src/whatsnew/index.rst
+++ b/docs/iris/src/whatsnew/index.rst
@@ -9,6 +9,7 @@ Iris versions.
.. toctree::
:maxdepth: 2
+ 2.1.rst
2.0.rst
1.13.rst
1.12.rst