docs: def parseGopkgImportPath(self, path):
  		"""
  		Definition: gopkg.in/<v>/<repo> || gopkg.in/<repo>.<v> || gopkg.in/<project>/<repo>
  		"""
  		parts = path.split('/')
  		if re.match('v[0-9]+', parts[1]):
  			if len(parts) < 3:
  				raise ValueError("Import path %s is not in gopkg.in/<v>/<repo> form" % path)
  
  			project = ""
  			repository = parts[2]
  			version = parts[1]
  			prefix = "/".join(parts[:3])
  			provider_prefix = "gopkg.in/%s/%s" % (parts[1], parts[2])
  		else:
  			if len(parts) < 2:
  				raise ValueError("Import path %s is not in gopkg.in/[<repo>.<v>|<project>/<repo>] form" % path)
  
  			dotparts = parts[1].split(".")
  			if len(dotparts) == 1:
  				# gopkg.in/<project>/<repo>
  				if len(parts) != 3:
  					raise ValueError("Import path %s is not in gopkg.in/<project>/<repo> form" % path)
  				prefix = "/".join(parts[:3])
  				project = parts[1]
  				dotparts = parts[2].split(".")
  				repository = dotparts[0]
  				if len(dotparts) == 0:
  					version = ""
  				else:
  					version = dotparts[1]
  
  				provider_prefix = "gopkg.in/%s/%s" % (parts[1], parts[2])
  
  			else:
  				if len(dotparts) != 2:
  					raise ValueError("Import path %s is not in gopkg.in/<repo>.<v> form" % path)
  				prefix = "/".join(parts[:2])
  				project = ""
  				repository = dotparts[0]
  				version = dotparts[1]
  				provider_prefix = "gopkg.in/%s" % parts[1]
  
  		repo = {}
  		repo["prefix"] = prefix
  		repo["signature"] = {"provider": "gopkg", "username": project, "project": repository, "version": version}
  
  		return repo