`TypeError` is raised when using the `equal` or `exist` keyword to `cf.aggregate`

TypeError is raised when using the equal or exist keyword to cf.aggregate:

>>> import cf
>>> f = cf.example_field(0)
>>> g = cf.aggregate([f[:2], f[2:]], equal=["standard_name"])
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
----> 1 g = cf.aggregate([a, b, c, d], equal=["foo"])

File ~/miniconda3/lib/python3.9/site-packages/cfdm/decorators.py:171, in _manage_log_level_via_verbosity.<locals>.verbose_override_wrapper(*args, **kwargs)
    168 # After method completes, re-set any changes to log level or
    169 # enabling
    170 try:
--> 171     return method_with_verbose_kwarg(*args, **kwargs)
    172 except Exception:
    173     raise

File ~/miniconda3/lib/python3.9/site-packages/cf/aggregate.py:1717, in aggregate(fields, verbose, relaxed_units, overlap, contiguous, relaxed_identities, ncvar_identities, respect_valid, equal_all, exist_all, equal, exist, ignore, exclude, dimension, concatenate, copy, axes, donotchecknonaggregatingaxes, allow_no_identity, atol, rtol, no_overlap, shared_nc_domain, field_identity, info)
   1711 signatures = {}
   1712 for f in flat(fields):
   1713     # ------------------------------------------------------------
   1714     # Create the metadata summary, including the structural
   1715     # signature
   1716     # ------------------------------------------------------------
-> 1717     meta = _Meta(
   1718         f,
   1719         verbose=verbose,
   1720         rtol=rtol,
   1721         atol=atol,
   1722         relaxed_units=relaxed_units,
   1723         allow_no_identity=allow_no_identity,
   1724         equal_all=equal_all,
   1725         exist_all=exist_all,
   1726         equal=equal,
   1727         exist=exist,
   1728         ignore=ignore,
   1729         dimension=dimension,
   1730         relaxed_identities=relaxed_identities,
   1731         ncvar_identities=ncvar_identities,
   1732         field_identity=field_identity,
   1733         respect_valid=respect_valid,
   1734         copy=copy,
   1735     )
   1737     if not meta:
   1738         unaggregatable = True

File ~/miniconda3/lib/python3.9/site-packages/cf/aggregate.py:687, in _Meta.__init__(self, f, rtol, atol, verbose, relaxed_units, allow_no_identity, respect_valid, equal_all, exist_all, equal, exist, ignore, dimension, relaxed_identities, ncvar_identities, field_identity, copy)
    685 else:
    686     properties = f.properties()
--> 687     for p in ignore:
    688         properties.pop(p, None)
    690     if equal:

TypeError: 'NoneType' object is not iterable

This incorrect behaviour is the same for exist keyword.