docs: def rename_library(self, from_lib, to_lib):
          """
          Renames a library
  
          Parameters
          ----------
          from_lib: str
              The name of the library to be renamed
          to_lib: str
              The new name of the library
          """
          to_colname = to_lib
          if '.' in from_lib and '.' in to_lib:
              if from_lib.split('.')[0] != to_lib.split('.')[0]:
                  raise ValueError("Collection can only be renamed in the same database")
              to_colname = to_lib.split('.')[1]
  
          lib = ArcticLibraryBinding(self, from_lib)
          colname = lib.get_top_level_collection().name
  
          logger.info('Renaming collection: %s' % colname)
          lib._db[colname].rename(to_colname)
          for coll in lib._db.list_collection_names():
              if coll.startswith(colname + '.'):
                  lib._db[coll].rename(coll.replace(colname, to_colname))
  
          if from_lib in self._library_cache:
              del self._library_cache[from_lib]
              del self._library_cache[lib.get_name()]
  
          self._cache.update_item_for_key(
              'list_libraries', self._sanitize_lib_name(from_lib), self._sanitize_lib_name(to_lib))