@@ -418,7 +418,7 @@ def _is_printable(ch):
418418__use_spooldir__ = tempfile.gettempdir()
419419BYTES_PER_MiB = 1024 * 1024
420420DEFAULT_SPOOL_MAX = 8 * BYTES_PER_MiB
421- __use_spooldir__ = DEFAULT_SPOOL_MAX
421+ __spoolfile_size__ = DEFAULT_SPOOL_MAX
422422__program_name__ = "Py"+__file_format_default__
423423__use_env_file__ = True
424424__use_ini_file__ = True
@@ -455,6 +455,8 @@ def decode_unicode_escape(value):
455455 __program_name__ = decode_unicode_escape(config.get('config', 'proname'))
456456 __include_defaults__ = config.getboolean('config', 'includedef')
457457 __use_inmemfile__ = config.getboolean('config', 'inmemfile')
458+ __use_spoolfile__ = config.getboolean('config', 'usespoolfile')
459+ __spoolfile_size__ = config.getint('config', 'spoolfilesize')
458460 # Loop through all sections
459461 for section in config.sections():
460462 if section == "config":
@@ -548,6 +550,8 @@ def _get(section_dict, key, default=None):
548550 __program_name__ = decode_unicode_escape(_get(cfg_config, 'proname', ''))
549551 __include_defaults__ = _to_bool(_get(cfg_config, 'includedef', False))
550552 __use_inmemfile__ = _to_bool(_get(cfg_config, 'inmemfile', False))
553+ __use_spoolfile__ = _to_bool(_get(cfg_config, 'usespoolfile', False))
554+ __spoolfile_size__ = _to_int(_get(cfg_config, 'spoolfilesize', DEFAULT_SPOOL_MAX))
551555
552556 # --- iterate format sections (everything except "config") ---
553557 required_keys = [
@@ -1970,7 +1974,7 @@ def MkTempFile(data=None,
19701974 dir=None,
19711975 suffix="",
19721976 use_spool=__use_spoolfile__,
1973- spool_max=__use_spooldir__ ,
1977+ spool_max=__spoolfile_size__ ,
19741978 spool_dir=__use_spooldir__):
19751979 """
19761980 Return a file-like handle with consistent behavior on Py2.7 and Py3.x.
@@ -2414,7 +2418,7 @@ class ZlibFile(object):
24142418
24152419 def __init__(self, file_path=None, fileobj=None, mode='rb', level=6, wbits=15,
24162420 encoding=None, errors=None, newline=None,
2417- tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__use_spooldir__ ):
2421+ tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__spoolfile_size__ ):
24182422
24192423 if file_path is None and fileobj is None:
24202424 raise ValueError("Either file_path or fileobj must be provided")
@@ -2901,7 +2905,7 @@ class GzipFile(object):
29012905
29022906 def __init__(self, file_path=None, fileobj=None, mode='rb',
29032907 level=6, encoding=None, errors=None, newline=None,
2904- tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__use_spooldir__ ):
2908+ tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__spoolfile_size__ ):
29052909
29062910 if file_path is None and fileobj is None:
29072911 raise ValueError("Either file_path or fileobj must be provided")
@@ -3347,7 +3351,7 @@ def __init__(self, file_path=None, fileobj=None, mode='rb',
33473351 level=9, encoding=None, errors=None, newline=None,
33483352 write_header=True,
33493353 tolerant_read=False, scan_bytes=(64 << 10),
3350- spool_threshold=__use_spooldir__ ):
3354+ spool_threshold=__spoolfile_size__ ):
33513355 """
33523356 Custom LZO file (NOT the lzop(1) format).
33533357 - streaming write/read, supports concatenated members
@@ -3822,7 +3826,7 @@ def lzop_compress_bytes(payload, level=9, text=False, **kw):
38223826
38233827
38243828def lzop_decompress_bytes(blob, mode='rb', tolerant_read=False, scan_bytes=(64 << 10),
3825- spool_threshold=__use_spooldir__ , **kw):
3829+ spool_threshold=__spoolfile_size__ , **kw):
38263830 """
38273831 Decompress bytes produced by this custom container.
38283832 - mode='rb' -> returns bytes; mode='rt' -> returns text (set encoding/errors/newline in kw)
@@ -9789,7 +9793,7 @@ def fast_copy(infp, outfp, bufsize=1 << 20):
97899793 outfp.write(data)
97909794
97919795
9792- def copy_file_to_mmap_dest(src_path, outfp, chunk_size=__use_spooldir__ ):
9796+ def copy_file_to_mmap_dest(src_path, outfp, chunk_size=__spoolfile_size__ ):
97939797 """
97949798 Copy a disk file into an mmap-backed destination (FileLikeAdapter).
97959799 Falls back to buffered copy if the source cannot be mmapped.
0 commit comments