Commit Graph

3169 Commits

Author SHA1 Message Date
Antoine Pitrou
9583cac633 Issue #10089: Add support for arbitrary -X options on the command-line.
They can be retrieved through a new attribute `sys._xoptions`.
2010-10-21 13:42:28 +00:00
Benjamin Peterson
b8ffb60ec6 fix uninitialized struct member #10152 2010-10-20 21:25:23 +00:00
Victor Stinner
e474309bb7 initfsencoding(): get_codeset() failure is now a fatal error
Don't fallback to utf-8 anymore to avoid mojibake. I never got any error from
his function.
2010-10-19 00:05:51 +00:00
Benjamin Peterson
8f67d0893f make hashes always the size of pointers; introduce Py_hash_t #9778 2010-10-17 20:54:53 +00:00
Victor Stinner
c049982ea5 compiler_error(): use PyUnicode_DecodeFSDefault() to decode the filename,
instead of utf-8 in strict mode.
2010-10-17 19:16:33 +00:00
Victor Stinner
15a71cdad2 PyErr_SyntaxLocationEx() uses PyUnicode_DecodeFSDefault(), instead of
PyUnicode_FromString(), to decode the filename.
2010-10-17 19:03:16 +00:00
Victor Stinner
ed7916dd00 find_module(): use FS encoding to display the missing __init__ warning 2010-10-17 02:07:09 +00:00
Victor Stinner
49d3f2514b _PyImport_FixupExtension() and _PyImport_FindExtension() uses FS encoding
* Rename _PyImport_FindExtension() to _PyImport_FindExtensionUnicode():
   the filename becomes a Unicode object instead of byte string
 * Rename _PyImport_FixupExtension() to _PyImport_FixupExtensionUnicode():
   the filename becomes a Unicode object instead of byte string
2010-10-17 01:24:53 +00:00
Victor Stinner
168e117e0a Add an optional size argument to _Py_char2wchar()
_Py_char2wchar() callers usually need the result size in characters. Since it's
trivial to compute it in _Py_char2wchar() (O(1) whereas wcslen() is O(n)), add
an option to get it.
2010-10-16 23:16:16 +00:00
Victor Stinner
0a1b8cba90 _Py_wrealpath() uses _Py_char2wchar() to decode the result, to support
surrogate characters.
2010-10-16 22:55:47 +00:00
Victor Stinner
350147b5ca _Py_wreadlink(): catch _Py_char2wchar() failure 2010-10-16 22:52:09 +00:00
Victor Stinner
3f711f4a3e _Py_wreadlink() uses _Py_char2wchar() to decode the result, to support
surrogate characters.
2010-10-16 22:47:37 +00:00
Victor Stinner
2f2ed1f36c Fix ast_error_finish() and err_input(): filename can be NULL
Fix my previous commit (r85569).
2010-10-16 13:42:53 +00:00
Victor Stinner
4c7c8c3023 Issue #9713, #10114: Parser functions (eg. PyParser_ASTFromFile) expects
filenames encoded to the filesystem encoding with surrogateescape error handler
(to support undecodable bytes), instead of UTF-8 in strict mode.
2010-10-16 13:14:10 +00:00
Benjamin Peterson
230b20684f don't identify the toplevel namespace by name #9997 2010-10-16 03:45:45 +00:00
Benjamin Peterson
294a9fcba6 fix refleak 2010-10-16 03:12:39 +00:00
Barry Warsaw
8cf4eae522 First (uncontroversial) part of issue 9807.
* Expose the build flags to Python as sys.abiflags
* Shared library libpythonX.Y<abiflags>.so
* python-config --abiflags
* Make two distutils tests that failed with --enable-shared (even before this
  patch) succeed.
* Fix a few small style issues.
2010-10-16 01:04:07 +00:00
Victor Stinner
88bd891e6c Fix imp_cache_from_source(): Decode make_compiled_pathname() result from the
filesystem encoding instead of utf-8.

imp_cache_from_source() encodes the input path to filesystem encoding and this
path is passed to make_compiled_pathname().
2010-10-15 22:46:07 +00:00
Victor Stinner
1a5630326f imp_load_module() uses PyUnicode_FSConverter() to support surrogates in module
path
2010-10-15 22:43:10 +00:00
Victor Stinner
3ea23ddabf imp.cache_from_source() uses PyUnicode_FSConverter() to support surrogates in
module path
2010-10-15 20:34:32 +00:00
Victor Stinner
8dbf629bbd imp.load_dynamic() uses PyUnicode_FSConverter() to support surrogates
in the library path.
2010-10-15 12:48:01 +00:00
Victor Stinner
f3170ccef8 Use locale encoding if Py_FileSystemDefaultEncoding is not set
* PyUnicode_EncodeFSDefault(), PyUnicode_DecodeFSDefaultAndSize() and
   PyUnicode_DecodeFSDefault() use the locale encoding instead of UTF-8 if
   Py_FileSystemDefaultEncoding is NULL
 * redecode_filenames() functions and _Py_code_object_list (issue #9630)
   are no more needed: remove them
2010-10-15 12:04:23 +00:00
Victor Stinner
6a4aff10f0 redecode_filename(): don't need to initialize variables 2010-10-15 11:16:59 +00:00
Victor Stinner
5d1e3438cd Mark _Py_char2wchar() input argument as constant 2010-10-15 11:15:54 +00:00
Antoine Pitrou
b86680e299 Explicitly close some files (from issue #10093) 2010-10-14 21:15:17 +00:00