diff --git a/lamindb_setup/_close.py b/lamindb_setup/_close.py index 6945dd9bd..34553f963 100644 --- a/lamindb_setup/_close.py +++ b/lamindb_setup/_close.py @@ -12,7 +12,7 @@ def close(mute: bool = False) -> None: Returns `None` if succeeds, otherwise an exception is raised. """ if current_instance_settings_file().exists(): - instance = settings.instance.identifier + instance = settings.instance.slug try: settings.instance._update_cloud_sqlite_file() except Exception as e: diff --git a/lamindb_setup/_delete.py b/lamindb_setup/_delete.py index 9231fec9e..33ce30668 100644 --- a/lamindb_setup/_delete.py +++ b/lamindb_setup/_delete.py @@ -44,7 +44,7 @@ def delete(instance_name: str, force: bool = False): delete_settings(settings_file) if settings._instance_exists: - if instance_identifier == settings.instance.identifier: + if instance_identifier == settings.instance.slug: close(mute=True) # close() does further operations, unlocking... settings._instance_settings = None delete_cache(isettings.storage.cache_dir) diff --git a/lamindb_setup/_init_instance.py b/lamindb_setup/_init_instance.py index 247f00fd0..35e89ae02 100644 --- a/lamindb_setup/_init_instance.py +++ b/lamindb_setup/_init_instance.py @@ -104,7 +104,7 @@ def reload_lamindb(isettings: InstanceSettings): import lamindb importlib.reload(lamindb) - logger.important(f"lamindb instance: {isettings.identifier}") + logger.important(f"lamindb instance: {isettings.slug}") else: # only log if we're outside lamindb # lamindb itself logs upon import! diff --git a/lamindb_setup/_load_instance.py b/lamindb_setup/_load_instance.py index bff34a6af..b80d13a4e 100644 --- a/lamindb_setup/_load_instance.py +++ b/lamindb_setup/_load_instance.py @@ -106,10 +106,7 @@ def load( ) else: # compare normalized identifier with a potentially previously loaded identifier - if ( - settings._instance_exists - and f"{owner}/{name}" != settings.instance.identifier - ): + if settings._instance_exists and f"{owner}/{name}" != settings.instance.slug: close_instance(mute=True) settings_file = instance_settings_file(name, owner) diff --git a/lamindb_setup/_migrate.py b/lamindb_setup/_migrate.py index d73596618..9f6acfc9c 100644 --- a/lamindb_setup/_migrate.py +++ b/lamindb_setup/_migrate.py @@ -56,7 +56,7 @@ def deploy(cls) -> None: if collaborator is None or collaborator["role"] != "admin": raise SystemExit( "❌ Only admins can deploy migrations, please ensure that you're an" - f" admin: https://lamin.ai/{settings.instance.identifier}/settings" + f" admin: https://lamin.ai/{settings.instance.slug}/settings" ) # we need lamindb to be installed, otherwise we can't populate the version # information in the hub diff --git a/lamindb_setup/core/_settings_instance.py b/lamindb_setup/core/_settings_instance.py index 0a0747fb5..09adcda9c 100644 --- a/lamindb_setup/core/_settings_instance.py +++ b/lamindb_setup/core/_settings_instance.py @@ -43,7 +43,7 @@ def __init__( def __repr__(self): """Rich string representation.""" - representation = f"Current instance: {self.identifier}" + representation = f"Current instance: {self.slug}" attrs = ["owner", "name", "storage", "db", "schema"] for attr in attrs: value = getattr(self, attr) @@ -80,10 +80,16 @@ def name(self) -> str: @property def identifier(self) -> str: - """Unique semantic identifier. + """Unique semantic identifier.""" + logger.warning( + "InstanceSettings.identifier is deprecated and will be removed, use" + " InstanceSettings.slug instead" + ) + return self.slug - See remote instances at https://lamin.ai/owner/name. - """ + @property + def slug(self) -> str: + """Unique semantic identifier of form `"{account_handle}/{instance_name}"`.""" return f"{self.owner}/{self.name}" @property @@ -120,7 +126,7 @@ def _update_cloud_sqlite_file(self, unlock_cloud_sqlite: bool = True) -> None: sqlite_file = self._sqlite_file logger.warning( f"updating & unlocking cloud SQLite '{sqlite_file}' of instance" - f" '{self.identifier}'" + f" '{self.slug}'" ) cache_file = self.storage.cloud_to_local_no_update(sqlite_file) sqlite_file.upload_from(cache_file, print_progress=True) # type: ignore