code: def build_post_data(self, action):
      # figure the data to send - the metadata plus some additional
      # information used by the package server
      meta = self.distribution.metadata
      data = {
          ":action": action,
          "metadata_version": "1.0",
          "name": meta.get_name(),
          "version": meta.get_version(),
          "summary": meta.get_description(),
          "home_page": meta.get_url(),
          "author": meta.get_contact(),
          "author_email": meta.get_contact_email(),
          "license": meta.get_licence(),
          "description": meta.get_long_description(),
          "keywords": meta.get_keywords(),
          "platform": meta.get_platforms(),
          "classifiers": meta.get_classifiers(),
          "download_url": meta.get_download_url(),
          # PEP 314
          "provides": meta.get_provides(),
          "requires": meta.get_requires(),
          "obsoletes": meta.get_obsoletes(),
      }
      if data["provides"] or data["requires"] or data["obsoletes"]:
          data["metadata_version"] = "1.1"
      return data
  
file_path: catboost/contrib/python/setuptools/py3/setuptools/_distutils/command/register.py
imports: import getpass
  import io
  import logging
  import urllib.parse
  import urllib.request
  from warnings import warn
  from ..core import PyPIRCCommand
  from distutils._log import log
label_desc: Use image node_id 9 for calling the register obj's underlying member method code with example usage: obj.build_post_data(action) and returns: data