code: def listobs(vis):
      
      def inner_list(sink):
          try:
              ms = util.tools.ms()
              ms.open(vis)
              ms.summary(verbose=True)
              ms.close()
          except Exception as e:
              sink.post(b'listobs failed: %s' % e, priority=b'SEVERE')
  
      for line in util.forkandlog(inner_list):
          info = line.rstrip().split('\t', 3) # date, priority, origin, message
          if len(info) > 3:
              yield info[3]
          else:
              yield ''
docs: Textually describe the contents of a measurement set.
  
      vis (str)
        The path to the dataset.
      Returns
        A generator of lines of human-readable output
  
      Errors can only be detected by looking at the output. Example::
  
        from pwkit.environments.casa import tasks
  
        for line in tasks.listobs('mydataset.ms'):
          print(line)