docs: def update(self, other, **kwargs):
          """Version of ``update`` that doesn't clobber the database so much"""
          from itertools import chain
          if hasattr(other, 'items'):
              other = other.items()
          for (k, v) in chain(other, kwargs.items()):
              if (
                      k not in self or
                      self[k] != v
              ):
                  self[k] = v