Skip to content

Commit 4d93024

Browse files
Add files via upload
1 parent 8abc71a commit 4d93024

3 files changed

Lines changed: 16 additions & 8 deletions

File tree

foxfile.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ default = FoxFile
55
proname = PyFoxFile
66
includedef = true
77
inmemfile = true
8+
usespoolfile = false
9+
spoolfilesize = 8388608
810

911
[FoxFile]
1012
len = 7

foxfile.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
"default": "FoxFile",
44
"proname": "PyFoxFile",
55
"includedef": "true",
6-
"inmemfile": "true"
6+
"inmemfile": "true",
7+
"usespoolfile": "false",
8+
"inmemfile": "8388608"
79
},
810
"FoxFile": {
911
"len": "7",

pyfoxfile.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -418,7 +418,7 @@ def _is_printable(ch):
418418
__use_spooldir__ = tempfile.gettempdir()
419419
BYTES_PER_MiB = 1024 * 1024
420420
DEFAULT_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

38303834
def 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

Comments
 (0)