@@ -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 = [
@@ -1976,7 +1980,7 @@ def MkTempFile(data=None,
19761980 dir=None,
19771981 suffix="",
19781982 use_spool=__use_spoolfile__,
1979- spool_max=__use_spooldir__ ,
1983+ spool_max=__spoolfile_size__ ,
19801984 spool_dir=__use_spooldir__:
19811985 """
19821986 Return a file-like handle with consistent behavior on Py2.7 and Py3.x.
@@ -2420,7 +2424,7 @@ class ZlibFile(object):
24202424
24212425 def __init__(self, file_path=None, fileobj=None, mode='rb', level=6, wbits=15,
24222426 encoding=None, errors=None, newline=None,
2423- tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__use_spooldir__ ):
2427+ tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__spoolfile_size__ ):
24242428
24252429 if file_path is None and fileobj is None:
24262430 raise ValueError("Either file_path or fileobj must be provided")
@@ -2907,7 +2911,7 @@ class GzipFile(object):
29072911
29082912 def __init__(self, file_path=None, fileobj=None, mode='rb',
29092913 level=6, encoding=None, errors=None, newline=None,
2910- tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__use_spooldir__ ):
2914+ tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__spoolfile_size__ ):
29112915
29122916 if file_path is None and fileobj is None:
29132917 raise ValueError("Either file_path or fileobj must be provided")
@@ -3353,7 +3357,7 @@ def __init__(self, file_path=None, fileobj=None, mode='rb',
33533357 level=9, encoding=None, errors=None, newline=None,
33543358 write_header=True,
33553359 tolerant_read=False, scan_bytes=(64 << 10),
3356- spool_threshold=__use_spooldir__ ):
3360+ spool_threshold=__spoolfile_size__ ):
33573361 """
33583362 Custom LZO file (NOT the lzop(1) format).
33593363 - streaming write/read, supports concatenated members
@@ -3828,7 +3832,7 @@ def lzop_compress_bytes(payload, level=9, text=False, **kw):
38283832
38293833
38303834def lzop_decompress_bytes(blob, mode='rb', tolerant_read=False, scan_bytes=(64 << 10),
3831- spool_threshold=__use_spooldir__ , **kw):
3835+ spool_threshold=__spoolfile_size__ , **kw):
38323836 """
38333837 Decompress bytes produced by this custom container.
38343838 - mode='rb' -> returns bytes; mode='rt' -> returns text (set encoding/errors/newline in kw)
@@ -9796,7 +9800,7 @@ def fast_copy(infp, outfp, bufsize=1 << 20):
97969800 outfp.write(data)
97979801
97989802
9799- def copy_file_to_mmap_dest(src_path, outfp, chunk_size=__use_spooldir__ ):
9803+ def copy_file_to_mmap_dest(src_path, outfp, chunk_size=__spoolfile_size__ ):
98009804 """
98019805 Copy a disk file into an mmap-backed destination (FileLikeAdapter).
98029806 Falls back to buffered copy if the source cannot be mmapped.
0 commit comments