def METHOD_NAME(self):
    super().METHOD_NAME()
    # Autogenerate slug now, rather than in pre_save(), if not set already, as we need to check it below.
    if self.slug == "":
        self._meta.get_field("slug").create_slug(self, add=(not self.present_in_database))
    if self.present_in_database and self.slug != self.__initial_slug:
        raise ValidationError(
            f"Slug cannot be changed once set. Current slug is {self.__initial_slug}, "
            f"requested slug is {self.slug}"
        )
    if not self.present_in_database:
        check_if_key_is_graphql_safe(self.__class__.__name__, self.slug, "slug")
        # Check on create whether the proposed slug conflicts with a module name already in the Python environment.
        # Because we add GIT_ROOT to the end of sys.path, trying to import this repository will instead
        # import the earlier-found Python module in its place, which would be undesirable.
        if find_spec(self.slug) is not None:
            raise ValidationError(
                f'Please choose a different slug, as "{self.slug}" is an installed Python package or module.'
            )
    if self.provided_contents:
        q = models.Q()
        for item in self.provided_contents:
            q |= models.Q(provided_contents__contains=item)
        duplicate_repos = GitRepository.objects.filter(remote_url=self.remote_url).exclude(id=self.id).filter(q)
        if duplicate_repos.exists():
            raise ValidationError(
                f"Another Git repository already configured for remote URL {self.remote_url} "
                "provides contents overlapping with this repository."
            )