# HG changeset patch # User Sylvain Thénault # Date 1271673803 -7200 # Node ID 329b4f6d18b4c28770f19d790561b85fccb6bfb4 # Parent c0b7687bce3d574249494352bce0fbe0110411f8 [config] with lgc >= 0.50, option's dict inputlevel becomes level diff -r c0b7687bce3d -r 329b4f6d18b4 cwconfig.py --- a/cwconfig.py Mon Apr 19 12:42:54 2010 +0200 +++ b/cwconfig.py Mon Apr 19 12:43:23 2010 +0200 @@ -299,28 +299,28 @@ {'type' : 'string', # XXX use a dedicated type? 'default': 'WARNING', 'help': 'server\'s log level', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), # pyro options ('pyro-instance-id', {'type' : 'string', 'default': Method('default_instance_id'), 'help': 'identifier of the CubicWeb instance in the Pyro name server', - 'group': 'pyro', 'inputlevel': 1, + 'group': 'pyro', 'level': 1, }), ('pyro-ns-host', {'type' : 'string', 'default': '', 'help': 'Pyro name server\'s host. If not set, will be detected by a \ broadcast query. It may contains port information using : notation.', - 'group': 'pyro', 'inputlevel': 1, + 'group': 'pyro', 'level': 1, }), ('pyro-ns-group', {'type' : 'string', 'default': 'cubicweb', 'help': 'Pyro name server\'s group where the repository will be \ registered.', - 'group': 'pyro', 'inputlevel': 1, + 'group': 'pyro', 'level': 1, }), # common configuration options which are potentially required as soon as # you're using "base" application objects (ie to really server/web @@ -329,13 +329,13 @@ {'type' : 'string', 'default': None, 'help': 'web server root url', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('allow-email-login', {'type' : 'yn', 'default': False, 'help': 'allow users to login with their primary email if set', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), ('use-request-subdomain', {'type' : 'yn', @@ -343,14 +343,14 @@ 'help': ('if set, base-url subdomain is replaced by the request\'s ' 'host, to help managing sites with several subdomains in a ' 'single cubicweb instance'), - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('mangle-emails', {'type' : 'yn', 'default': False, 'help': "don't display actual email addresses but mangle them if \ this option is set to yes", - 'group': 'email', 'inputlevel': 2, + 'group': 'email', 'level': 2, }), ) # static and class methods used to get instance independant resources ## @@ -743,34 +743,34 @@ {'type' : 'string', 'default': Method('default_log_file'), 'help': 'file where output logs should be written', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), # email configuration ('smtp-host', {'type' : 'string', 'default': 'mail', 'help': 'hostname of the SMTP mail server', - 'group': 'email', 'inputlevel': 1, + 'group': 'email', 'level': 1, }), ('smtp-port', {'type' : 'int', 'default': 25, 'help': 'listening port of the SMTP mail server', - 'group': 'email', 'inputlevel': 1, + 'group': 'email', 'level': 1, }), ('sender-name', {'type' : 'string', 'default': Method('default_instance_id'), 'help': 'name used as HELO name for outgoing emails from the \ repository.', - 'group': 'email', 'inputlevel': 2, + 'group': 'email', 'level': 2, }), ('sender-addr', {'type' : 'string', 'default': 'cubicweb@mydomain.com', 'help': 'email address used as HELO address for outgoing emails from \ the repository', - 'group': 'email', 'inputlevel': 1, + 'group': 'email', 'level': 1, }), ) diff -r c0b7687bce3d -r 329b4f6d18b4 cwctl.py --- a/cwctl.py Mon Apr 19 12:42:54 2010 +0200 +++ b/cwctl.py Mon Apr 19 12:43:23 2010 +0200 @@ -337,7 +337,7 @@ helper.bootstrap(cubes, self.config.config_level) # input for cubes specific options for section in set(sect.lower() for sect, opt, optdict in config.all_options() - if optdict.get('inputlevel') <= self.config.config_level): + if optdict.get('level') <= self.config.config_level): if section not in ('main', 'email', 'pyro'): print '\n' + underline_title('%s options' % section) config.input_config(section, self.config.config_level) diff -r c0b7687bce3d -r 329b4f6d18b4 devtools/__init__.py --- a/devtools/__init__.py Mon Apr 19 12:42:54 2010 +0200 +++ b/devtools/__init__.py Mon Apr 19 12:43:23 2010 +0200 @@ -87,13 +87,13 @@ {'type' : 'string', 'default': None, 'help': 'login of the CubicWeb user account to use for anonymous user (if you want to allow anonymous)', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('anonymous-password', {'type' : 'string', 'default': None, 'help': 'password of the CubicWeb user account matching login', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), )) diff -r c0b7687bce3d -r 329b4f6d18b4 etwist/twconfig.py --- a/etwist/twconfig.py Mon Apr 19 12:42:54 2010 +0200 +++ b/etwist/twconfig.py Mon Apr 19 12:43:23 2010 +0200 @@ -30,51 +30,51 @@ {'type' : 'string', 'default': None, 'help': 'host name if not correctly detectable through gethostname', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('port', {'type' : 'int', 'default': None, 'help': 'http server port number (default to 8080)', - 'group': 'main', 'inputlevel': 0, + 'group': 'main', 'level': 0, }), ('pid-file', {'type' : 'string', 'default': Method('default_pid_file'), 'help': 'repository\'s pid file', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), ('uid', {'type' : 'string', 'default': None, 'help': 'if this option is set, use the specified user to start \ the repository rather than the user running the command', - 'group': 'main', 'inputlevel': WebConfiguration.mode == 'system' + 'group': 'main', 'level': WebConfiguration.mode == 'system' }), ('max-post-length', {'type' : 'int', 'default': 100, 'help': 'maximum length of HTTP request, in Mo. Default to 100 Mo.', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('session-time', {'type' : 'int', 'default': 30*60, 'help': 'session expiration time, default to 30 minutes', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('profile', {'type' : 'string', 'default': None, 'help': 'profile code and use the specified file to store stats if this option is set', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), ('pyro-server', {'type' : 'yn', # pyro is only a recommends by default, so don't activate it here 'default': False, 'help': 'run a pyro server', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ) + WebConfiguration.options) diff -r c0b7687bce3d -r 329b4f6d18b4 server/serverconfig.py --- a/server/serverconfig.py Mon Apr 19 12:42:54 2010 +0200 +++ b/server/serverconfig.py Mon Apr 19 12:43:23 2010 +0200 @@ -23,12 +23,12 @@ 'default': 'admin', 'help': "cubicweb manager account's login " '(this user will be created)', - 'inputlevel': 0, + 'level': 0, }), ('password', {'type' : 'password', 'default': REQUIRED, 'help': "cubicweb manager account's password", - 'inputlevel': 0, + 'level': 0, }), ) @@ -93,39 +93,39 @@ {'type' : 'string', 'default': None, 'help': 'host name if not correctly detectable through gethostname', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('pid-file', {'type' : 'string', 'default': Method('default_pid_file'), 'help': 'repository\'s pid file', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), ('uid', {'type' : 'string', 'default': None, 'help': 'if this option is set, use the specified user to start \ the repository rather than the user running the command', - 'group': 'main', 'inputlevel': (CubicWebConfiguration.mode == 'installed') and 0 or 1, + 'group': 'main', 'level': (CubicWebConfiguration.mode == 'installed') and 0 or 1, }), ('session-time', {'type' : 'int', 'default': 30*60, 'help': 'session expiration time, default to 30 minutes', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('connections-pool-size', {'type' : 'int', 'default': 4, 'help': 'size of the connections pools. Each source supporting multiple \ connections will have this number of opened connections.', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('rql-cache-size', {'type' : 'int', 'default': 300, 'help': 'size of the parsed rql cache size.', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('undo-support', {'type' : 'string', 'default': '', @@ -133,20 +133,20 @@ [C]reate [U]pdate [D]elete entities / [A]dd [R]emove relation. Leave it empty \ for no undo support, set it to CUDAR for full undo support, or to DR for \ support undoing of deletion only.', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('keep-transaction-lifetime', {'type' : 'int', 'default': 7, 'help': 'number of days during which transaction records should be \ kept (hence undoable).', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('multi-sources-etypes', {'type' : 'csv', 'default': (), 'help': 'defines which entity types from this repository are used \ by some other instances. You should set this properly so those instances to \ detect updates / deletions.', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('delay-full-text-indexation', @@ -155,7 +155,7 @@ ' to be done when entity are added/modified by users, activate this ' 'option and setup a job using cubicweb-ctl db-rebuild-fti on your ' 'system (using cron for instance).', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), # email configuration @@ -168,7 +168,7 @@ modes are "default-dest-addrs" (emails specified in the configuration \ variable with the same name), "users" (every users which has activated \ account with an email set), "none" (no notification).', - 'group': 'email', 'inputlevel': 1, + 'group': 'email', 'level': 1, }), ('default-dest-addrs', {'type' : 'csv', @@ -176,14 +176,14 @@ 'help': 'comma separated list of email addresses that will be used \ as default recipient when an email is sent and the notification has no \ specific recipient rules.', - 'group': 'email', 'inputlevel': 1, + 'group': 'email', 'level': 1, }), ('supervising-addrs', {'type' : 'csv', 'default': (), 'help': 'comma separated list of email addresses that will be \ notified of every changes.', - 'group': 'email', 'inputlevel': 2, + 'group': 'email', 'level': 2, }), # pyro server.serverconfig ('pyro-host', @@ -192,7 +192,7 @@ 'help': 'Pyro server host, if not detectable correctly through \ gethostname(). It may contains port information using : notation, \ and if not set, it will be choosen randomly', - 'group': 'pyro', 'inputlevel': 2, + 'group': 'pyro', 'level': 2, }), ) + CubicWebConfiguration.options) diff -r c0b7687bce3d -r 329b4f6d18b4 server/sources/extlite.py --- a/server/sources/extlite.py Mon Apr 19 12:42:54 2010 +0200 +++ b/server/sources/extlite.py Mon Apr 19 12:43:23 2010 +0200 @@ -66,7 +66,7 @@ 'default': None, 'help': 'path to the sqlite database file used to do queries on the \ repository.', - 'inputlevel': 2, + 'level': 2, }), ) diff -r c0b7687bce3d -r 329b4f6d18b4 server/sources/ldapuser.py --- a/server/sources/ldapuser.py Mon Apr 19 12:42:54 2010 +0200 +++ b/server/sources/ldapuser.py Mon Apr 19 12:43:23 2010 +0200 @@ -58,14 +58,14 @@ 'default': 'ldap', 'help': 'ldap host. It may contains port information using \ : notation.', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('protocol', {'type' : 'choice', 'default': 'ldap', 'choices': ('ldap', 'ldaps', 'ldapi'), 'help': 'ldap protocol (allowed values: ldap, ldaps, ldapi)', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('auth-mode', @@ -73,13 +73,13 @@ 'default': 'simple', 'choices': ('simple', 'cram_md5', 'digest_md5', 'gssapi'), 'help': 'authentication mode used to authenticate user to the ldap.', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('auth-realm', {'type' : 'string', 'default': None, 'help': 'realm to use when using gssapi/kerberos authentication.', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('data-cnx-dn', @@ -87,52 +87,52 @@ 'default': '', 'help': 'user dn to use to open data connection to the ldap (eg used \ to respond to rql queries).', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('data-cnx-password', {'type' : 'string', 'default': '', 'help': 'password to use to open data connection to the ldap (eg used to respond to rql queries).', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('user-base-dn', {'type' : 'string', 'default': 'ou=People,dc=logilab,dc=fr', 'help': 'base DN to lookup for users', - 'group': 'ldap-source', 'inputlevel': 0, + 'group': 'ldap-source', 'level': 0, }), ('user-scope', {'type' : 'choice', 'default': 'ONELEVEL', 'choices': ('BASE', 'ONELEVEL', 'SUBTREE'), 'help': 'user search scope', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('user-classes', {'type' : 'csv', 'default': ('top', 'posixAccount'), 'help': 'classes of user', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('user-login-attr', {'type' : 'string', 'default': 'uid', 'help': 'attribute used as login on authentication', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('user-default-group', {'type' : 'csv', 'default': ('users',), 'help': 'name of a group in which ldap users will be by default. \ You can set multiple groups by separating them by a comma.', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('user-attrs-map', {'type' : 'named', 'default': {'uid': 'login', 'gecos': 'email'}, 'help': 'map from ldap user attributes to cubicweb attributes', - 'group': 'ldap-source', 'inputlevel': 1, + 'group': 'ldap-source', 'level': 1, }), ('synchronization-interval', @@ -140,13 +140,13 @@ 'default': 24*60*60, 'help': 'interval between synchronization with the ldap \ directory (default to once a day).', - 'group': 'ldap-source', 'inputlevel': 2, + 'group': 'ldap-source', 'level': 2, }), ('cache-life-time', {'type' : 'int', 'default': 2*60, 'help': 'life time of query cache in minutes (default to two hours).', - 'group': 'ldap-source', 'inputlevel': 2, + 'group': 'ldap-source', 'level': 2, }), ) diff -r c0b7687bce3d -r 329b4f6d18b4 server/sources/native.py --- a/server/sources/native.py Mon Apr 19 12:42:54 2010 +0200 +++ b/server/sources/native.py Mon Apr 19 12:43:23 2010 +0200 @@ -178,43 +178,43 @@ {'type' : 'string', 'default': 'postgres', 'help': 'database driver (postgres or sqlite)', - 'group': 'native-source', 'inputlevel': 1, + 'group': 'native-source', 'level': 1, }), ('db-host', {'type' : 'string', 'default': '', 'help': 'database host', - 'group': 'native-source', 'inputlevel': 1, + 'group': 'native-source', 'level': 1, }), ('db-port', {'type' : 'string', 'default': '', 'help': 'database port', - 'group': 'native-source', 'inputlevel': 1, + 'group': 'native-source', 'level': 1, }), ('db-name', {'type' : 'string', 'default': Method('default_instance_id'), 'help': 'database name', - 'group': 'native-source', 'inputlevel': 0, + 'group': 'native-source', 'level': 0, }), ('db-user', {'type' : 'string', 'default': CubicWebNoAppConfiguration.mode == 'user' and getlogin() or 'cubicweb', 'help': 'database user', - 'group': 'native-source', 'inputlevel': 0, + 'group': 'native-source', 'level': 0, }), ('db-password', {'type' : 'password', 'default': '', 'help': 'database password', - 'group': 'native-source', 'inputlevel': 0, + 'group': 'native-source', 'level': 0, }), ('db-encoding', {'type' : 'string', 'default': 'utf8', 'help': 'database encoding', - 'group': 'native-source', 'inputlevel': 1, + 'group': 'native-source', 'level': 1, }), ) diff -r c0b7687bce3d -r 329b4f6d18b4 server/sources/pyrorql.py --- a/server/sources/pyrorql.py Mon Apr 19 12:42:54 2010 +0200 +++ b/server/sources/pyrorql.py Mon Apr 19 12:43:23 2010 +0200 @@ -54,53 +54,53 @@ {'type' : 'string', 'default': REQUIRED, 'help': 'identifier of the repository in the pyro name server', - 'group': 'pyro-source', 'inputlevel': 0, + 'group': 'pyro-source', 'level': 0, }), ('mapping-file', {'type' : 'string', 'default': REQUIRED, 'help': 'path to a python file with the schema mapping definition', - 'group': 'pyro-source', 'inputlevel': 1, + 'group': 'pyro-source', 'level': 1, }), ('cubicweb-user', {'type' : 'string', 'default': REQUIRED, 'help': 'user to use for connection on the distant repository', - 'group': 'pyro-source', 'inputlevel': 0, + 'group': 'pyro-source', 'level': 0, }), ('cubicweb-password', {'type' : 'password', 'default': '', 'help': 'user to use for connection on the distant repository', - 'group': 'pyro-source', 'inputlevel': 0, + 'group': 'pyro-source', 'level': 0, }), ('base-url', {'type' : 'string', 'default': '', 'help': 'url of the web site for the distant repository, if you want ' 'to generate external link to entities from this repository', - 'group': 'pyro-source', 'inputlevel': 1, + 'group': 'pyro-source', 'level': 1, }), ('pyro-ns-host', {'type' : 'string', 'default': None, 'help': 'Pyro name server\'s host. If not set, default to the value \ from all_in_one.conf. It may contains port information using : notation.', - 'group': 'pyro-source', 'inputlevel': 1, + 'group': 'pyro-source', 'level': 1, }), ('pyro-ns-group', {'type' : 'string', 'default': None, 'help': 'Pyro name server\'s group where the repository will be \ registered. If not set, default to the value from all_in_one.conf.', - 'group': 'pyro-source', 'inputlevel': 1, + 'group': 'pyro-source', 'level': 1, }), ('synchronization-interval', {'type' : 'int', 'default': 5*60, 'help': 'interval between synchronization with the external \ repository (default to 5 minutes).', - 'group': 'pyro-source', 'inputlevel': 2, + 'group': 'pyro-source', 'level': 2, }), ) diff -r c0b7687bce3d -r 329b4f6d18b4 web/webconfig.py --- a/web/webconfig.py Mon Apr 19 12:42:54 2010 +0200 +++ b/web/webconfig.py Mon Apr 19 12:43:23 2010 +0200 @@ -70,20 +70,20 @@ {'type' : 'string', 'default': None, 'help': 'login of the CubicWeb user account to use for anonymous user (if you want to allow anonymous)', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('anonymous-password', {'type' : 'string', 'default': None, 'help': 'password of the CubicWeb user account to use for anonymous user, ' 'if anonymous-user is set', - 'group': 'main', 'inputlevel': 1, + 'group': 'main', 'level': 1, }), ('query-log-file', {'type' : 'string', 'default': None, 'help': 'web instance query log file', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), # web configuration ('https-url', @@ -97,20 +97,20 @@ 'differentiate between http vs https access. For instance: \n'\ 'RewriteRule ^/demo/(.*) http://127.0.0.1:8080/https/$1 [L,P]\n'\ 'where the cubicweb web server is listening on port 8080.', - 'group': 'main', 'inputlevel': 2, + 'group': 'main', 'level': 2, }), ('auth-mode', {'type' : 'choice', 'choices' : ('cookie', 'http'), 'default': 'cookie', 'help': 'authentication mode (cookie / http)', - 'group': 'web', 'inputlevel': 1, + 'group': 'web', 'level': 1, }), ('realm', {'type' : 'string', 'default': 'cubicweb', 'help': 'realm to use on HTTP authentication mode', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('http-session-time', {'type' : 'int', @@ -118,7 +118,7 @@ 'help': "duration in minutes of the cookie used to store session " "identifier. If 0, the cookie will expire when the user exist its " "browser. Should be 0 or greater than repository\'s session-time.", - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('cleanup-session-time', {'type' : 'int', @@ -129,7 +129,7 @@ 'So even if http-session-time is 0 and the user don\'t close his ' 'browser, he will have to reauthenticate after this time of ' 'inactivity. Default to 24h.', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('cleanup-anonymous-session-time', {'type' : 'int', @@ -137,14 +137,14 @@ 'help': 'Same as cleanup-session-time but specific to anonymous ' 'sessions. You can have a much smaller timeout here since it will be ' 'transparent to the user. Default to 5min.', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('force-html-content-type', {'type' : 'yn', 'default': False, 'help': 'force text/html content type for your html pages instead of cubicweb user-agent based'\ 'deduction of an appropriate content type', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('embed-allowed', {'type' : 'regexp', @@ -152,14 +152,14 @@ 'help': 'regular expression matching URLs that may be embeded. \ leave it blank if you don\'t want the embedding feature, or set it to ".*" \ if you want to allow everything', - 'group': 'web', 'inputlevel': 1, + 'group': 'web', 'level': 1, }), ('submit-mail', {'type' : 'string', 'default': None, 'help': ('Mail used as recipient to report bug in this instance, ' 'if you want this feature on'), - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('language-negociation', @@ -167,14 +167,14 @@ 'default': True, 'help': 'use Accept-Language http header to try to set user '\ 'interface\'s language according to browser defined preferences', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('print-traceback', {'type' : 'yn', 'default': CubicWebConfiguration.mode != 'system', 'help': 'print the traceback on the error page when an error occured', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('captcha-font-file', @@ -182,14 +182,14 @@ 'default': join(CubicWebConfiguration.shared_dir(), 'data', 'porkys.ttf'), 'help': 'True type font to use for captcha image generation (you \ must have the python imaging library installed to use captcha)', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ('captcha-font-size', {'type' : 'int', 'default': 25, 'help': 'Font size to use for captcha image generation (you must \ have the python imaging library installed to use captcha)', - 'group': 'web', 'inputlevel': 2, + 'group': 'web', 'level': 2, }), ))