@@ -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 = [
@@ -1977,7 +1981,7 @@ def MkTempFile(data=None,
19771981 dir=None,
19781982 suffix="",
19791983 use_spool=__use_spoolfile__,
1980- spool_max=__use_spooldir__ ,
1984+ spool_max=__spoolfile_size__ ,
19811985 spool_dir=__use_spooldir__):
19821986 """
19831987 Return a file-like handle with consistent behavior on Py2.7 and Py3.x.
@@ -2421,7 +2425,7 @@ class ZlibFile(object):
24212425
24222426 def __init__(self, file_path=None, fileobj=None, mode='rb', level=6, wbits=15,
24232427 encoding=None, errors=None, newline=None,
2424- tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__use_spooldir__ ):
2428+ tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__spoolfile_size__ ):
24252429
24262430 if file_path is None and fileobj is None:
24272431 raise ValueError("Either file_path or fileobj must be provided")
@@ -2908,7 +2912,7 @@ class GzipFile(object):
29082912
29092913 def __init__(self, file_path=None, fileobj=None, mode='rb',
29102914 level=6, encoding=None, errors=None, newline=None,
2911- tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__use_spooldir__ ):
2915+ tolerant_read=False, scan_bytes=(64 << 10), spool_threshold=__spoolfile_size__ ):
29122916
29132917 if file_path is None and fileobj is None:
29142918 raise ValueError("Either file_path or fileobj must be provided")
@@ -3354,7 +3358,7 @@ def __init__(self, file_path=None, fileobj=None, mode='rb',
33543358 level=9, encoding=None, errors=None, newline=None,
33553359 write_header=True,
33563360 tolerant_read=False, scan_bytes=(64 << 10),
3357- spool_threshold=__use_spooldir__ ):
3361+ spool_threshold=__spoolfile_size__ ):
33583362 """
33593363 Custom LZO file (NOT the lzop(1) format).
33603364 - streaming write/read, supports concatenated members
@@ -3829,7 +3833,7 @@ def lzop_compress_bytes(payload, level=9, text=False, **kw):
38293833
38303834
38313835def lzop_decompress_bytes(blob, mode='rb', tolerant_read=False, scan_bytes=(64 << 10),
3832- spool_threshold=__use_spooldir__ , **kw):
3836+ spool_threshold=__spoolfile_size__ , **kw):
38333837 """
38343838 Decompress bytes produced by this custom container.
38353839 - mode='rb' -> returns bytes; mode='rt' -> returns text (set encoding/errors/newline in kw)
@@ -9797,7 +9801,7 @@ def fast_copy(infp, outfp, bufsize=1 << 20):
97979801 outfp.write(data)
97989802
97999803
9800- def copy_file_to_mmap_dest(src_path, outfp, chunk_size=__use_spooldir__ ):
9804+ def copy_file_to_mmap_dest(src_path, outfp, chunk_size=__spoolfile_size__ ):
98019805 """
98029806 Copy a disk file into an mmap-backed destination (FileLikeAdapter).
98039807 Falls back to buffered copy if the source cannot be mmapped.
0 commit comments