api: Recommend migrating to argparse-based add_default_arguments().
This commit is contained in:
		
							parent
							
								
									c4876dddae
								
							
						
					
					
						commit
						38df8ef87b
					
				
					 1 changed files with 57 additions and 0 deletions
				
			
		|  | @ -30,6 +30,7 @@ import traceback | |||
| import sys | ||||
| import os | ||||
| import optparse | ||||
| import argparse | ||||
| import platform | ||||
| import random | ||||
| from distutils.version import LooseVersion | ||||
|  | @ -103,8 +104,64 @@ def _default_client(): | |||
|     # type: () -> str | ||||
|     return "ZulipPython/" + __version__ | ||||
| 
 | ||||
| def add_default_arguments(parser): | ||||
|     # type: (argparse.ArgumentParser) ->  argparse.ArgumentParser | ||||
|     group = parser.add_argument_group('Zulip API configuration') | ||||
|     group.add_argument('--site', | ||||
|                        dest="zulip_site", | ||||
|                        help="Zulip server URI", | ||||
|                        default=None) | ||||
|     group.add_argument('--api-key', | ||||
|                        dest="zulip_api_key", | ||||
|                        action='store') | ||||
|     group.add_argument('--user', | ||||
|                        dest='zulip_email', | ||||
|                        help='Email address of the calling bot or user.') | ||||
|     group.add_argument('--config-file', | ||||
|                        action='store', | ||||
|                        dest="zulip_config_file", | ||||
|                        help='''Location of an ini file containing the above | ||||
|                             information. (default ~/.zuliprc)''') | ||||
|     group.add_argument('-v', '--verbose', | ||||
|                        action='store_true', | ||||
|                        help='Provide detailed output.') | ||||
|     group.add_argument('--client', | ||||
|                        action='store', | ||||
|                        default=None, | ||||
|                        dest="zulip_client", | ||||
|                        help=argparse.SUPPRESS) | ||||
|     group.add_argument('--insecure', | ||||
|                        action='store_true', | ||||
|                        dest='insecure', | ||||
|                        help='''Do not verify the server certificate. | ||||
|                             The https connection will not be secure.''') | ||||
|     group.add_argument('--cert-bundle', | ||||
|                        action='store', | ||||
|                        dest='cert_bundle', | ||||
|                        help='''Specify a file containing either the | ||||
|                             server certificate, or a set of trusted | ||||
|                             CA certificates. This will be used to | ||||
|                             verify the server's identity. All | ||||
|                             certificates should be PEM encoded.''') | ||||
|     group.add_argument('--client-cert', | ||||
|                        action='store', | ||||
|                        dest='client_cert', | ||||
|                        help='''Specify a file containing a client | ||||
|                             certificate (not needed for most deployments).''') | ||||
|     group.add_argument('--client-cert-key', | ||||
|                        action='store', | ||||
|                        dest='client_cert_key', | ||||
|                        help='''Specify a file containing the client | ||||
|                             certificate's key (if it is in a separate | ||||
|                             file).''') | ||||
|     return parser | ||||
| 
 | ||||
| def generate_option_group(parser, prefix=''): | ||||
|     # type: (optparse.OptionParser, str) ->  optparse.OptionGroup | ||||
|     logging.warning("""zulip.generate_option_group is based on optparse, which | ||||
|                     is now deprecated. We recommend migrating to argparse and | ||||
|                     using zulip.add_default_arguments instead.""") | ||||
| 
 | ||||
|     group = optparse.OptionGroup(parser, 'Zulip API configuration')  # type: ignore # https://github.com/python/typeshed/pull/1248 | ||||
|     group.add_option('--%ssite' % (prefix,), | ||||
|                      dest="zulip_site", | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Eeshan Garg
						Eeshan Garg