docs: def get_user_group(self, user=None, group=None):
          """
          Get the user and group information.
  
          Parameters
          ----------
          user : str
              User name or user id (default is the `os.getuid()`).
          group : str
              Group name or group id (default is the group of `user`).
  
          Returns
          -------
          user : pwd.struct_passwd
              User object.
          group : grp.struct_group
              Group object.
          """
          user = user or os.getuid()
          # Convert the information we have obtained to a user object
          try:
              try:
                  user = pwd.getpwuid(int(user))
              except ValueError:
                  user = pwd.getpwnam(user)
          except KeyError as ex:  # pragma: no cover
              self.logger.fatal("could not resolve user: %s", ex)
              raise
  
          # Get the group
          group = group or user.pw_gid
          try:
              try:
                  group = grp.getgrgid(int(group))
              except ValueError:
                  group = grp.getgrnam(group)
          except KeyError as ex:  # pragma: no cover
              self.logger.fatal("could not resolve group:%s", ex)
              raise
  
          return user, group