5713
Comment:
|
5883
link to more info
|
Deletions are marked like this. | Additions are marked like this. |
Line 17: | Line 17: |
* The options whose destinations are static variables in the `Options` class are well-documented there. | * The options whose destinations are static variables in the `Options` class are well-documented [https://jython.svn.sourceforge.net/svnroot/jython/branches/asm/src/org/python/core/Options.java there]. |
Line 19: | Line 19: |
* The default `registry` file is severely bitrotted and needs redoing. | * The [https://jython.svn.sourceforge.net/svnroot/jython/branches/asm/registry default registry file] is severely bitrotted and needs redoing. |
Methods of specifying Jython settings
preProperties, typically Java system properties specified with -D before class/jar specification on Java command line
Registry: property files registry in Jython root and .jython in user.home; if both are present, the latter replaces the former completely. If either is present, the Java system properties are replaced entirely. (This is likely a bug in PySystemState.addRegistryFile.) See [http://www.jython.org/Project/userguide.html#finding-the-registry-file Finding the Registry File] for more information.
postProperties, typically Jython properties specified with -D after class/jar specification on Java command line (these overwrite Java system properties, too.)
For preProperties and postProperties, alternate properties may be passed to PySystemState.initialize or PythonInterpreter.initialize by programmatic users of Jython.
The runtime registry (PySystemState.registry from Java, or sys.registry from Python) is created from the above three sources.
Other command-line arguments are written directly into Options static variables without going through the properties system; the overlapping properties are python.divisionWarning, python.options.Qnew and python.verbose. In these overlapping cases, the above three sources always take precedence over the command-line equivalents. (This precedence should likely be reversed.)
Documentation
The options whose destinations are static variables in the Options class are well-documented [https://jython.svn.sourceforge.net/svnroot/jython/branches/asm/src/org/python/core/Options.java there].
The [https://jython.svn.sourceforge.net/svnroot/jython/branches/asm/registry default registry file] is severely bitrotted and needs redoing.
The [http://www.jython.org/Project/userguide.html#the-jython-registry Jython user guide] refers to a subset of these properties.
Source |
Destination |
Default |
install.root |
|
|
python.cachedir |
PySystemState.cachedir = File(...) |
"cachedir" |
python.cachedir.skip |
PySystemState.cachedir = null |
true if standalone, else false |
python.collections |
PyInstance.initializeIterators |
"" |
python.console |
jython.main |
"org.python.util.InteractiveConsole" |
python.console.encoding |
CompilerFlags.encoding |
|
python.console.readlinelib |
|
|
python.deprecated.keywordMangling |
Options.deprecatedKeywordMangling |
false |
python.divisionWarning |
Options.divisionWarning |
|
python.executable |
PySystemState.[default]Executable |
set by launcher script, else null |
python.home |
PySystemState.[exec_]prefix |
set by launcher script, else "." |
python.modules.builtin |
PySystemState.builtin_module_names |
""; appended to Setup.builtinModules |
python.options.Qnew |
Options.Qnew |
false |
python.options.caseok |
Options.caseok |
false |
python.options.compileClass |
unused; in default registry file |
false (in registry file) |
python.options.includeJavaStackInExceptions |
Options.includeJavaStackInExceptions |
false |
python.options.internalTablesImpl |
InternalTables.createInternalTables |
null |
python.options.proxyDebugDirectory |
Options.proxyDebugDirectory |
null |
python.options.showJavaExceptions |
Options.showJavaExceptions |
false |
python.options.showPythonProxyExceptions |
Options.showPythonProxyExceptions |
false |
python.os |
os._name |
"posix" |
python.packages.directories |
SysPackageManager.findAllPackages |
"java.ext.dirs" |
python.packages.fakepath |
SysPackageManager.findAllPackages |
null |
python.packages.paths |
SysPackageManager.findAllPackages |
"java.class.path,sun.boot.class.path" |
python.path |
end of path before JYTHON_JAR/Lib |
"" |
python.prepath |
beginning of path |
"" |
python.security.respectJavaAccessibility |
Options.respectJavaAccessibility |
true |
python.verbose |
Options.verbose |
Py.MESSAGE = 1 |
python.xml.sax.parser |
xml.sax.default_parser_list (split) |
PY_SAX_PARSER or xml.sax.drivers2.drv_javasax |